python脚本查找webshell
前阵子在一朋友blog看到一个python查找 webshell脚本的代码,自己拿过来改了下,新增白名单功能,新增发现恶意代码发送邮件报警功能,现发出来供大家参考,如有需要的可以在自己的服务器上跑下试试
#!/usr/bin/env python#-*- coding: utf-8 -*-#=============================================================================# FileName:# Desc:# Author: 苦咖啡# Email: voilet@qq.com# HomePage: http://blog.kukafei520.net# Version: 0.0.1# History:#=============================================================================import osimport sysimport reimport smtplib#设定邮件fromaddr = "smtp.qq.com"toaddrs = ["voilet@qq.com"]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,filespath)+"/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 "请指定扫描文件目录"
>更多相关文章
- 09-26多线程开发中线程数量设计问题
- 09-26Go语言和Java、Python等其他语言的对比分析
- 09-26Java语言为什么经久不衰?且总能霸占编程语言排行榜首?
- 09-26浅谈10个提升应用程序10倍性能的技巧
- 06-10利用Python语言判断狗狗年龄的程序
- 12-09用c写了个后台扫描
首页推荐
佛山市东联科技有限公司一直秉承“一切以用户价值为依归
- 01-11全球最受赞誉公司揭晓:苹果连续九年第一
- 12-09罗伯特·莫里斯:让黑客真正变黑
- 12-09谁闯入了中国网络?揭秘美国绝密黑客小组TA
- 12-09警示:iOS6 惊现“闪退”BUG
- 12-05亚马逊推出新一代基础模型 任意模态生成大模
- 12-05OpenAI拓展欧洲业务 将在苏黎世设立办公室
- 12-05微软质疑美国联邦贸易委员会泄露信息 督促其
- 12-05联交所取消宝宝树上市地位 宝宝树:不会对公
- 12-04企业微信致歉:文档打开异常已完成修复
相关文章
24小时热门资讯
24小时回复排行
热门推荐
最新资讯
操作系统
黑客防御