Advertisement
WhosYourDaddySec

GhostSSL

May 19th, 2025
166
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 4.44 KB | None | 0 0
  1. #!/data/data/com.termux/files/usr/bin/bash
  2.  
  3. RED='\033[1;31m'
  4. GREEN='\033[1;32m'
  5. BLUE='\033[1;34m'
  6. CYAN='\033[1;36m'
  7. YELLOW='\033[1;33m'
  8. MAGENTA='\033[1;35m'
  9. RESET='\033[0m'
  10.  
  11. for tool in openssl curl termux-open-url tcpdump; do
  12.     command -v $tool >/dev/null 2>&1 || pkg install -y $tool
  13. done
  14.  
  15. clear
  16. echo -e "${CYAN}GhostSSL Terminal Suite${RESET}"
  17. echo -e "${MAGENTA}Enter target URL:${RESET}"
  18. read -p "Target: " TARGET_URL
  19. [[ -z "$TARGET_URL" ]] && echo -e "${RED}No URL entered. Exiting...${RESET}" && exit 1
  20.  
  21. SAFE_NAME=$(echo "$TARGET_URL" | sed 's|https\?://||;s/[^a-zA-Z0-9]/_/g')
  22. SESSION_DIR="$HOME/ghostssl/${SAFE_NAME}_$(date +%Y%m%d%H%M%S)"
  23. mkdir -p "$SESSION_DIR"
  24. LOGFILE="$SESSION_DIR/ghostssl.log"
  25. touch "$LOGFILE"
  26.  
  27. log() {
  28.     echo -e "[$(date '+%F %T')] $1" | tee -a "$LOGFILE"
  29. }
  30.  
  31. loopback() {
  32.     echo -e "${BLUE}Press ENTER to return to the menu...${RESET}"
  33.     read
  34.     main_menu
  35. }
  36.  
  37. rsa_keygen() {
  38.     openssl genpkey -algorithm RSA -out "$SESSION_DIR/rsa_private.pem" -pkeyopt rsa_keygen_bits:2048
  39.     openssl rsa -in "$SESSION_DIR/rsa_private.pem" -pubout -out "$SESSION_DIR/rsa_public.pem"
  40.     log "RSA Key Pair Generated"
  41. }
  42.  
  43. ec_keygen() {
  44.     openssl ecparam -genkey -name prime256v1 -out "$SESSION_DIR/ec_private.pem"
  45.     openssl ec -in "$SESSION_DIR/ec_private.pem" -pubout -out "$SESSION_DIR/ec_public.pem"
  46.     log "EC Key Pair Generated"
  47. }
  48.  
  49. generate_csr() {
  50.     openssl req -new -key "$SESSION_DIR/rsa_private.pem" -out "$SESSION_DIR/request.csr" -subj "/CN=$TARGET_URL"
  51.     log "CSR Created"
  52. }
  53.  
  54. self_signed_cert() {
  55.     openssl req -x509 -new -nodes -key "$SESSION_DIR/rsa_private.pem" -sha256 -days 365 -out "$SESSION_DIR/selfsigned.pem" -subj "/CN=$TARGET_URL"
  56.     log "Self-Signed Certificate Generated"
  57. }
  58.  
  59. aes_demo() {
  60.     echo "GhostSec Encrypted Data - $(date)" > "$SESSION_DIR/plain.txt"
  61.     openssl enc -aes-256-cbc -salt -in "$SESSION_DIR/plain.txt" -out "$SESSION_DIR/encrypted.aes" -k GhostKey123
  62.     openssl enc -aes-256-cbc -d -in "$SESSION_DIR/encrypted.aes" -out "$SESSION_DIR/decrypted.txt" -k GhostKey123
  63.     log "AES Encryption/Decryption Complete"
  64. }
  65.  
  66. sign_verify() {
  67.     openssl dgst -sha256 -sign "$SESSION_DIR/rsa_private.pem" -out "$SESSION_DIR/plain.sig" "$SESSION_DIR/plain.txt"
  68.     openssl dgst -sha256 -verify "$SESSION_DIR/rsa_public.pem" -signature "$SESSION_DIR/plain.sig" "$SESSION_DIR/plain.txt" >> "$LOGFILE" 2>&1
  69.     log "Signature Created and Verified"
  70. }
  71.  
  72. open_target() {
  73.     termux-open-url "$TARGET_URL" &
  74.     log "Target URL Opened"
  75. }
  76.  
  77. capture_traffic() {
  78.     timeout 10 tcpdump -i any -w "$SESSION_DIR/traffic_capture.pcap" >> "$LOGFILE" 2>&1
  79.     log "Traffic Captured"
  80. }
  81.  
  82. curl_target() {
  83.     curl -s -D "$SESSION_DIR/headers.txt" -o "$SESSION_DIR/index.html" "$TARGET_URL"
  84.     log "Headers and HTML Fetched"
  85. }
  86.  
  87. auto_full_chain() {
  88.     rsa_keygen
  89.     ec_keygen
  90.     generate_csr
  91.     self_signed_cert
  92.     aes_demo
  93.     sign_verify
  94.     curl_target
  95.     capture_traffic
  96.     open_target
  97.     log "Full Automated Chain Executed"
  98.     loopback
  99. }
  100.  
  101. main_menu() {
  102.     clear
  103.     echo -e "${CYAN}================== GhostSSL Suite ==================${RESET}"
  104.     echo -e "${YELLOW}Target:${RESET} ${MAGENTA}$TARGET_URL${RESET}"
  105.     echo -e "${CYAN}====================================================${RESET}"
  106.     echo -e "${GREEN}1.${RESET} Generate RSA Key Pair"
  107.     echo -e "${GREEN}2.${RESET} Generate EC Key Pair"
  108.     echo -e "${GREEN}3.${RESET} Create CSR"
  109.     echo -e "${GREEN}4.${RESET} Generate Self-Signed Certificate"
  110.     echo -e "${GREEN}5.${RESET} AES Encrypt/Decrypt Demo"
  111.     echo -e "${GREEN}6.${RESET} Sign and Verify Data"
  112.     echo -e "${GREEN}7.${RESET} Open Target URL"
  113.     echo -e "${GREEN}8.${RESET} Capture Traffic (10s)"
  114.     echo -e "${GREEN}9.${RESET} Fetch HTML & Headers"
  115.     echo -e "${GREEN}10.${RESET} Run Full Automation Chain"
  116.     echo -e "${GREEN}0.${RESET} Exit"
  117.     echo -e "${CYAN}====================================================${RESET}"
  118.     read -p "Select: " opt
  119.     case $opt in
  120.         1) rsa_keygen && loopback ;;
  121.         2) ec_keygen && loopback ;;
  122.         3) generate_csr && loopback ;;
  123.         4) self_signed_cert && loopback ;;
  124.         5) aes_demo && loopback ;;
  125.         6) sign_verify && loopback ;;
  126.         7) open_target && loopback ;;
  127.         8) capture_traffic && loopback ;;
  128.         9) curl_target && loopback ;;
  129.         10) auto_full_chain ;;
  130.         0) exit 0 ;;
  131.         *) main_menu ;;
  132.     esac
  133. }
  134.  
  135. main_menu
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement