php后门简单检测脚本
- # coding:utf-8
- import os
- import sys
- import re
- 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)'
- ]
- 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':
- 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'
- break
- if os.path.lexists(sys.argv[1]):
- print('\n\n开始扫描:'+sys.argv[1])
- print(' 可疑文件 ')
- print('########################################')
- Scan(sys.argv[1])
- print('提示:扫描完成-- O(∩_∩)O哈哈~')
- else:
- print '提示:指定的扫描目录不存在--- 我靠( \'o′)!!凸'
php后门简单检测脚本的更多相关文章
- 简单shell脚本
简单shell脚本备忘 #!/bin/sh num= ] do table_num=`printf %03d ${num}` echo album_info_${table_num} #mys ...
- [shell编程]一个简单的脚本
首先,为什么要学习shell呢?哈哈,当然不是shell能够怎样怎样然后100字. 最近看到一篇博文<开阔自己的视野,勇敢的接触新知识>,读完反思良久.常常感慨自己所会不多,对新知识又有畏 ...
- 查看当前支持的shell,echo -e相关转义符,一个简单shell脚本,dos2unix命令把windows格式转为Linux格式
/etc/shells [root@localhost ~]# more /etc/shells /bin/sh /bin/bash /sbin/nologin /usr/bin/sh /usr/bi ...
- Redis + keepalived 高可用行配置检测脚本
Redis 在生产配置中:除redis集群.哨兵模式之外:主从模式还是比较普遍的. 配置 redis 多主从:由 keepalived 做 VIP 地址漂移.可以实现redis的高可用性. keepa ...
- 安全运维之:Linux后门入侵检测工具的使用
安全运维之:Linux后门入侵检测工具的使用 https://blog.csdn.net/exitgogo/article/details/39547113
- 【javascript】浏览器用户代理检测脚本实现
以下是完整的用户代理字符串检测脚本,包括检测呈现引擎.平台.Windows操作系统.移动设备和游戏系统. var client = function(){ // 呈现引擎 var engine = { ...
- keepalived检测脚本及注意事项
keepalived检测脚本的作用及注意事项: 默认每隔3秒钟执行一次检测脚本,检查nginx服务是否启动,如果没启动就把nginx服务启动起来,如果启动不成功,就把keepalived服务down掉 ...
- selenium从入门到应用 - 2,简单线性脚本的编写
本系列所有代码 https://github.com/zhangting85/simpleWebtest 本文将介绍一个Java+TestNG+Maven+Selenium的web自动化测试脚本环境下 ...
- Linux学习之十七-配置Linux简单的脚本文件自启动
配置Linux简单的脚本文件自启动 在Linux中使用shell脚本解决一些问题会比单独执行多条命令要有效率,脚本文件规定命名以.sh结尾,最基本的规则就是其内容是命令,想要脚本文件开机自启动,就需要 ...
随机推荐
- Vue avoid mutating a prop directly since the value will be overwritten
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- python - linux下 no module named pip
有网络的情况下,linux系统提示无法使用pip命令: 有两种解决方式: 第一种: =============================== 敲命令:python -m ensurepip 得到 ...
- pid稳态控制
https://blog.csdn.net/qq_25352981/article/details/81007075
- C#连接内存数据库redis【1、Redis存读取数据】
这一节演示下载.NET中怎样使用Redis存储数据.在.net中比较常用的客户端类库是ServiceStack,看下通过servicestack怎样存储数据. DLL下载:https://github ...
- win10下用Anaconda安装TensorFlow | 后附JetBrains测试
从意识上认识Anaconda(音标:[ˌænəˈkɑ:ndə])/(拼读:安娜康达). Anaconda:水蟒的意思,如图logo像不像水蟒.其最后五个字母是conda(包管理器),而Anaconda ...
- IntelliJ IDEA 2019 注册码 (激活码) 有效期至2100年
IntelliJ IDEA 2019 注册码 (激活码) 有效期至2100年 本人使用的IDEA是最新版:IntelliJ IDEA 2018.3.3 x64 (IntelliJ IDEA官网下载地址 ...
- ubuntu安装软件失败,出现404错误,更新软件源
更新源方法 备份原来的源 首先备份原来的源,用来出错后进行恢复 sudo cp /etc/apt/sources.list/etc/apt/sources.list_backup 1 如果更新源后出错 ...
- JavaScript数值千分位格式化的方法和性能
瞎掰的前提 前端嘛,经常处理数值和时间. 所以数值和时间的格式化少不了. 最近一直在面试前端, 就出了一个如何给数值添加千分位的面试题. 至于答案,我一直都有一种标准, 一是基于你现有的知识可以实现, ...
- react 添加代理 proxy
react package.json中proxy的配置如下 "proxy": { "/api/rjwl": { "target": &quo ...
- Linux增加虚拟内存方法
例如增加2G虚拟内存,操作如下: [root@gamedb ~]# free -m[root@gamedb tmp]# dd if=/dev/zero of=/tmp/big_swap bs=1024 ...