Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/data/data/com.termux/files/usr/bin/bash
- RED='\033[1;31m'
- GREEN='\033[1;32m'
- BLUE='\033[1;34m'
- CYAN='\033[1;36m'
- YELLOW='\033[1;33m'
- MAGENTA='\033[1;35m'
- RESET='\033[0m'
- for tool in openssl curl termux-open-url tcpdump; do
- command -v $tool >/dev/null 2>&1 || pkg install -y $tool
- done
- clear
- echo -e "${CYAN}GhostSSL Terminal Suite${RESET}"
- echo -e "${MAGENTA}Enter target URL:${RESET}"
- read -p "Target: " TARGET_URL
- [[ -z "$TARGET_URL" ]] && echo -e "${RED}No URL entered. Exiting...${RESET}" && exit 1
- SAFE_NAME=$(echo "$TARGET_URL" | sed 's|https\?://||;s/[^a-zA-Z0-9]/_/g')
- SESSION_DIR="$HOME/ghostssl/${SAFE_NAME}_$(date +%Y%m%d%H%M%S)"
- mkdir -p "$SESSION_DIR"
- LOGFILE="$SESSION_DIR/ghostssl.log"
- touch "$LOGFILE"
- log() {
- echo -e "[$(date '+%F %T')] $1" | tee -a "$LOGFILE"
- }
- loopback() {
- echo -e "${BLUE}Press ENTER to return to the menu...${RESET}"
- read
- main_menu
- }
- rsa_keygen() {
- openssl genpkey -algorithm RSA -out "$SESSION_DIR/rsa_private.pem" -pkeyopt rsa_keygen_bits:2048
- openssl rsa -in "$SESSION_DIR/rsa_private.pem" -pubout -out "$SESSION_DIR/rsa_public.pem"
- log "RSA Key Pair Generated"
- }
- ec_keygen() {
- openssl ecparam -genkey -name prime256v1 -out "$SESSION_DIR/ec_private.pem"
- openssl ec -in "$SESSION_DIR/ec_private.pem" -pubout -out "$SESSION_DIR/ec_public.pem"
- log "EC Key Pair Generated"
- }
- generate_csr() {
- openssl req -new -key "$SESSION_DIR/rsa_private.pem" -out "$SESSION_DIR/request.csr" -subj "/CN=$TARGET_URL"
- log "CSR Created"
- }
- self_signed_cert() {
- openssl req -x509 -new -nodes -key "$SESSION_DIR/rsa_private.pem" -sha256 -days 365 -out "$SESSION_DIR/selfsigned.pem" -subj "/CN=$TARGET_URL"
- log "Self-Signed Certificate Generated"
- }
- aes_demo() {
- echo "GhostSec Encrypted Data - $(date)" > "$SESSION_DIR/plain.txt"
- openssl enc -aes-256-cbc -salt -in "$SESSION_DIR/plain.txt" -out "$SESSION_DIR/encrypted.aes" -k GhostKey123
- openssl enc -aes-256-cbc -d -in "$SESSION_DIR/encrypted.aes" -out "$SESSION_DIR/decrypted.txt" -k GhostKey123
- log "AES Encryption/Decryption Complete"
- }
- sign_verify() {
- openssl dgst -sha256 -sign "$SESSION_DIR/rsa_private.pem" -out "$SESSION_DIR/plain.sig" "$SESSION_DIR/plain.txt"
- openssl dgst -sha256 -verify "$SESSION_DIR/rsa_public.pem" -signature "$SESSION_DIR/plain.sig" "$SESSION_DIR/plain.txt" >> "$LOGFILE" 2>&1
- log "Signature Created and Verified"
- }
- open_target() {
- termux-open-url "$TARGET_URL" &
- log "Target URL Opened"
- }
- capture_traffic() {
- timeout 10 tcpdump -i any -w "$SESSION_DIR/traffic_capture.pcap" >> "$LOGFILE" 2>&1
- log "Traffic Captured"
- }
- curl_target() {
- curl -s -D "$SESSION_DIR/headers.txt" -o "$SESSION_DIR/index.html" "$TARGET_URL"
- log "Headers and HTML Fetched"
- }
- auto_full_chain() {
- rsa_keygen
- ec_keygen
- generate_csr
- self_signed_cert
- aes_demo
- sign_verify
- curl_target
- capture_traffic
- open_target
- log "Full Automated Chain Executed"
- loopback
- }
- main_menu() {
- clear
- echo -e "${CYAN}================== GhostSSL Suite ==================${RESET}"
- echo -e "${YELLOW}Target:${RESET} ${MAGENTA}$TARGET_URL${RESET}"
- echo -e "${CYAN}====================================================${RESET}"
- echo -e "${GREEN}1.${RESET} Generate RSA Key Pair"
- echo -e "${GREEN}2.${RESET} Generate EC Key Pair"
- echo -e "${GREEN}3.${RESET} Create CSR"
- echo -e "${GREEN}4.${RESET} Generate Self-Signed Certificate"
- echo -e "${GREEN}5.${RESET} AES Encrypt/Decrypt Demo"
- echo -e "${GREEN}6.${RESET} Sign and Verify Data"
- echo -e "${GREEN}7.${RESET} Open Target URL"
- echo -e "${GREEN}8.${RESET} Capture Traffic (10s)"
- echo -e "${GREEN}9.${RESET} Fetch HTML & Headers"
- echo -e "${GREEN}10.${RESET} Run Full Automation Chain"
- echo -e "${GREEN}0.${RESET} Exit"
- echo -e "${CYAN}====================================================${RESET}"
- read -p "Select: " opt
- case $opt in
- 1) rsa_keygen && loopback ;;
- 2) ec_keygen && loopback ;;
- 3) generate_csr && loopback ;;
- 4) self_signed_cert && loopback ;;
- 5) aes_demo && loopback ;;
- 6) sign_verify && loopback ;;
- 7) open_target && loopback ;;
- 8) capture_traffic && loopback ;;
- 9) curl_target && loopback ;;
- 10) auto_full_chain ;;
- 0) exit 0 ;;
- *) main_menu ;;
- esac
- }
- main_menu
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement