• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

python脚本实现查找webshell的方法

python 搞代码 4年前 (2022-01-09) 14次浏览 已收录 0个评论

本文讲述了一个python查找 webshell脚本的代码,除了查找webshell功能之外还具有白名单功能,以及发现恶意代码发送邮件报警等功能,感兴趣的朋友可以自己测试一下看看效果。

具体的功能代码如下:

#!/usr/bin/env python#-*- coding: utf-8 -*-import osimport sysimport reimport smtplib#设定邮件fromaddr = "smtp.qq.com"toaddrs = ["[email protected]"]username = "voilet"password = "xxxxxx"#设置白名单pass_file = ["api_ucenter.php"]#定义发送邮件函数def sendmail(toaddrs,sub,content):  '发送邮件模块'  # Add the From: and To: headers at the start!  msg = ("From: %s\r\nTo: %s\r\nSubject: %s\r\n\r\n"      % (fromaddr, ", ".join(toaddrs), sub))  msg += content  server = smtplib.SMTP('mail.funshion.com', 25,)  server.login(username, password)  server.sendmail(fromaddr, toaddrs, msg)  server.quit()#设置搜索特征码rulelist = [  '(\$_(GET|POST|REQUEST)\[.{0,15}\]\(\$_(GET|POST|REQUEST)\[.{0,15}\]\))',  '(base64_decode\([\'"][\w\+/=]{200,}[\'"]\))',  'eval\(base64_decode\(',  '(eval\(\$_(POST|GET|REQUEST)\[.{0,15}\]\))',  '(assert\(\$_(POST|GET|REQUEST)\[.{0,15}\]\))',  '(\$[\w_]{0,15}\(\$_(POST|GET|REQUEST)\[.{0,15}\]\))',  '(wscript\.shell)',  '(gethostbyname\()',  '(cmd\.exe)',  '(shell\.application)',  '(documents\s+and\s+settings)',  '(system32)',  '(serv-u)',  '(提权)',  '(phpspy)',  '(后门)',  '(webshell)',  '(Program\s+Files)',  'www.phpdp.com',  'phpdp',  'PHP神盾',  'decryption',  'Ca3tie1',  'GIF89a',  'IKFBILUvM0VCJD\/APDolOjtW0tgeKAwA',  '\'e\'\.\'v\'\.\'a\'\.\'l\'',]def Scan(path):  for root,dirs,files in os.walk(path):    for filespath in files:      isover = False      if '.' in filespath:        ext = filespath[(filespath.rindex('.')+1):]        if ext=='php' and filespath not in pass_file:          file= open(os.path.join(root,filespath))          filestr = file.read()          file.close()          for rule in rulelist:            result = re.compile(rule).findall(filestr)            if result:              print '文件:'+os.path.join(root,filespath)              print '恶意代码:'+str(result[0])              print '\n\n'              sendmail(toaddrs,"增值发现恶意代码",'文件:'+os.path.join(root,files<strong>本文来源gao@daima#com搞(%代@#码网</strong>path)+"\n" + '恶意代码:'+str(result[0]))              breaktry:  if os.path.lexists("/home/web_root/"):    print('\n\n开始扫描:'+ "/home/web_root/")    print('        可疑文件         ')    print('########################################')    Scan("/home/web_root/")    print('提示:扫描完成--~')  else:    print '提示:指定的扫描目录不存在--- 'except IndexError:  print "请指定扫描文件目录" 

搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:python脚本实现查找webshell的方法
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址