使用Aggressor脚本雕饰Cobalt Strike

栏目: ASP.NET · 发布时间: 1年前

来源: mp.weixin.qq.com

内容简介:一、后前置知识在Cobalt Strike(下文简称为CS) 客户端当中操作Aggressor 脚本有两种方式,第一种是在“Cobalt Strike”功能区下的“Script Manager”当中管理Aggressor脚本,有几个简单的载入、卸载、重新载入和帮助按钮,脚本导入之后每次打开CS都会自动载入或者执行脚本。

本文转载自:https://mp.weixin.qq.com/s/CEI1XYkq2PZmYsP0DRU7jg,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有。

使用Aggressor脚本雕饰Cobalt Strike

首先你要知道这依旧是没有什么技术含量并且十分粗糙的一篇水文,这一切都是因为作者的水平过于有限。对不起,也十分感谢大家的等待。

众所周知,第三次忍界大战之后cobalt strike 3.0是作为无Armitage为基础的重写版本,在这之前其依附于Metasploit协同作战之时就有开源拓展脚本Cortana可以为Cobalt strike和Armitage所用。CS作者的Cortana脚本可以把MSF和Beef联动,可以配合Veil进行bypass,还能爆破口令、嗅探、配合powershell等等,可谓骚得不行。

脱离MSF之后的Aggressor Script 成为了开源脚本引擎 Cortana 的接班人,个人总结得出的结论是

Aggressor脚本的定位是red team用于方便自己和实现一定程度的例如横向渗透这种渗透工作自动化进行 ,另外Aggressor脚本仍然良好的支持用于满足自身需求的扩展和修改。下面我要介绍的就是CS 3.0版本之后的一点点相关知识和一些agressor脚本。 

一、后前置知识

在Cobalt Strike(下文简称为CS) 客户端当中操作Aggressor 脚本有两种方式,第一种是在“Cobalt Strike”功能区下的“Script Manager”当中管理Aggressor脚本,有几个简单的载入、卸载、重新载入和帮助按钮,脚本导入之后每次打开CS都会自动载入或者执行脚本。

使用Aggressor脚本雕饰Cobalt Strike


第二种方式是在CS的Script Console当中对脚本进行管理,相对于上面的manager个人认为console的定位更偏向于aggressor脚本的开发者或者调试者使用,再或者是一些脚本的高级设置也可以在Console当中线上修改,而上面介绍的manager则更偏向于用户对于现成脚本的直接使用。另外我在测试时发现了一个小问题不好断定是作者故意的设置还是无意的BUG,就是在Console里使用load命令导入的脚本不会在manager当中进行同步,并且最大的区别是关闭CS再次打开之后在Console里使用load导入的脚本会全部释放掉,不会像manager里的一样会自动导入和保存。
我把console里面的命令尽力解释了一下直接注释在了图片里,对这些命令的理解仅限于翻译+用户角度去揣测,所以对这注释的解释必然不是最佳的版本,也期待着师傅们来实锤和更正我。

使用Aggressor脚本雕饰Cobalt Strike

二、一些脚本和对它们的简单介绍

1、

先介绍一个展示进程并给程序上色的脚本,作者实际上是修改自harleyQu1nn (后面会介绍)的ProcessColor.cna,但是个人认为这一手进程树展示修改可谓画龙点睛。

脚本名称: ProcessTree.cna

脚本功能:ps命令展示进程树并上色

脚本位置:命令行中

地址: https://github.com/ars3n11/Aggressor-Scripts

使用Aggressor脚本雕饰Cobalt Strike


另外可以针对国情以及其他因素自行在进程列表当中增加需求进程,例如火绒、360国际版等,而且还可以添加点不那么常见但是大家都喜欢的东西,比如VPN、笔记、网盘等的进程。

使用Aggressor脚本雕饰Cobalt Strike


下面这张图应该就很明了了,与单纯的进程上色相比,增加了defender等几个进程,最重要的是巧妙的展示出了父子进程的关系,我觉得海星。

使用Aggressor脚本雕饰Cobalt Strike

2、

第二个介绍出镜率比较高的elevate脚本,CS作者rsmudge大佬官方出品,增加五种提权方式。有时候一把梭能用得上,本来存了张利用成功打算放在这里的图来着,死活找不到了。后面还有几个该脚本的升级版,大体是在此基础上做的增加或者修改。

脚本名称: elevate.cna

脚本功能:增加五种提权方式

脚本位置:在elevate中

地址: https://github.com/rsmudge/ElevateKit

使用Aggressor脚本雕饰Cobalt Strike  

3、

介绍一个VincentYiu大佬写的一键起CVE-2018-4878(Flash漏洞)服务脚本。

脚本名称: CVE-2018-4878.cna

脚本功能:CVE-2018-4878

脚本位置:在attacks中

地址: https://github.com/vysec/CVE-2018-4878

使用Aggressor脚本雕饰Cobalt Strike

 

4、 下面介绍harleyQu1nn的脚本合集。

使用Aggressor脚本雕饰Cobalt Strike


地址:

https://github.com/harleyQu1nn/AggressorScripts
AVQuery.cna 检查杀毒是通过检查注册表键值来判断,同样的可以自行添加自己需要的条目。

使用Aggressor脚本雕饰Cobalt Strike


ArtifactPayloadGenerator.cna 生成的结果位于cs目录下的opt目录下。

使用Aggressor脚本雕饰Cobalt Strike 使用Aggressor脚本雕饰Cobalt Strike 使用Aggressor脚本雕饰Cobalt Strike

CertUtilWebDelivery.cna和大家熟知的使用CertUtil下载文件的姿势差不多。

使用Aggressor脚本雕饰Cobalt Strike

EDR.cna使用检测驱动的方式来检测是否存在终端安全产品。个人对于EDR产品的理解是:相对于主流杀毒软件,这类终端安全产品主要用来反APT类的持久化攻击,所以较之常规杀毒更为难缠。

使用Aggressor脚本雕饰Cobalt Strike


logvis.cna 实现了beacon command log的可视化。

使用Aggressor脚本雕饰Cobalt Strike


ProcessColor.cna 就是简单的进程上色版本啦,虽然没有tree,但是作者这一手也算是独具匠心。

使用Aggressor脚本雕饰Cobalt Strike


ProcessMonitor.cna 可以实现指定时间段内对于程序运行情况的监控。

使用Aggressor脚本雕饰Cobalt Strike


RedTeamRepo.cna 当中包含了不少tips,可以使用RedRepo命令查看。

使用Aggressor脚本雕饰Cobalt Strike


SMBPayloadGenerator.cna 可以生成基于SMB类型listener的payload,同样是输出到opt目录下。

使用Aggressor脚本雕饰Cobalt Strike


Logging目录下的 logger.cna 可以将log导出到HTML,log也位于opt目录中。

使用Aggressor脚本雕饰Cobalt Strike


功能和实现方式上面脚本介绍那里都写了,总之就是持久化啦。不过某些操作动静比较大,以及存在特殊环境功能失效的可能,自己玩明白再实战哦,不然会翻车。

使用Aggressor脚本雕饰Cobalt Strike

5、 下面介绍bluscreenofjeff蓝屏大佬的合集。

使用Aggressor脚本雕饰Cobalt Strike

地址:

https://github.com/bluscreenofjeff/AggressorScripts

apache-style -weblog-output.cna 的功能是将teamserver的weblog以 Apache 的风格输出到cs目录下的we

blog.log文件当中。

beacon_to_empire.cna 可以一键把会话弹到empire,不过需要提前在cna脚本当中配置好empire的信息。

使用Aggressor脚本雕饰Cobalt Strike


beaconestablishednote.cna 用来给新上线的机器备注时间,虽然event log当中有,但是这里备注相对直观。

使用Aggressor脚本雕饰Cobalt Strike

beaconid_note.cna会给所有机器备注修改为bid,作者在注释中写到该脚本主要在编写aggressor脚本时使用。

使用Aggressor脚本雕饰Cobalt Strike


简单来说就是运行这两个命令的快捷键,按键位置就在右键靶机出现的菜单当中。

使用Aggressor脚本雕饰Cobalt Strike


eventlog-to-slack.cna 的作用是配置后将日志传送到slack实现多端同步,有点像QQ或者TG的机器人。

使用Aggressor脚本雕饰Cobalt Strike


forcecheckin.cna 用来在设定的时间频率强制SMB类型的beacon回连,感觉其用意应该是用来检测连接性。

使用Aggressor脚本雕饰Cobalt Strike


mass-dcsync.cna 用来同步指定域内域用户的列表。

使用Aggressor脚本雕饰Cobalt Strike


mimikatz-every-30m.cn 可以实现每30分钟抓一次密码,想修改时间的话可以直接在脚本当中修改。

使用Aggressor脚本雕饰Cobalt Strike


mimikatz-timestamp-note-BETA.cna 用来给mimikatz的运行结果添加一个时间戳,不过作者表示该脚本目前正在测试当中。感觉应该是配合上面的定时mimikatz脚本来使用的。

使用Aggressor脚本雕饰Cobalt Strike


ping_aliases.cna 脚本增加了“qping”和“smbscan”两条命令。qping就是使用-n参数做限制只ping目标一下,smbscan用来扫描SMB的445端口,smbscan支持将目标设置为ip段。

使用Aggressor脚本雕饰Cobalt Strike


powershell.cna 包含powerview和powerup,多个功能皆需借助PowerUp.ps1 和powerview.ps1 两个脚本来实现,脚本需要自行下载。

使用Aggressor脚本雕饰Cobalt Strike


ps-window-alias.cna 为命令行中增加pspane命令一键打开processlist。
silver-tickets.cna 可以一键制作一个白银票据。

使用Aggressor脚本雕饰Cobalt Strike


slack-notify-beacon.cna 和 slack-notify-webhit.cna 可以实现机器上线和web接收到web请求时通过slack进行通知。
sleep-down-when-no-operators.cna 可以实现当没有黑客在线时自动把sleep的时间调长。
sleeptimer.cna 则可以根据人类作息自动设置sleep间隔,默认时间是晚八点到早六点。

使用Aggressor脚本雕饰Cobalt Strike


stale-beacon-notifier.cna 可以实现机器长时间(时间可以指定)没有回连时通过slack进行通知。
timestamped_activitylog_export.cna 实现以时间戳为基准CS全局日志输出到指定位置的指定文件当中。
Beaconpire/beaconpire.cn 实现empire相关配置参数的可视化控制,以及与empire实现一定程度的联动。

使用Aggressor脚本雕饰Cobalt Strike


CCDC/lulz.cna 是一个整人脚本,功能与国外一些远控的joke很相似,可以实现 使用IE打开网页、弹消息框、关机、召唤clippy、打开boo.exe。
CCDC/misc.cna 可以实现单条修改目标机器hosts、替换目标机器hosts文件。
CCDC/sysinternal-killer.cna 微软 工具 包专杀。

使用Aggressor脚本雕饰Cobalt Strike


OPSEC Profiles 目录下的脚本会覆盖内置的Cobalt Strike命令,个人理解为作者是为了防止用户操作时误触某个命令导致不好的后果,配置文件当中可以修改每个命令的开关。
例如powershell.cna 的效果:

6、 下面要介绍的是一个老哥收集的别人的脚本,跟上面的有很大的重复,所以我只分析几个上面没有的我又找不到原作者的脚本。

使用Aggressor脚本雕饰Cobalt Strike


地址:

https://github.com/michalkoczwara/aggressor_scripts_collection
这里的 All_In_One.cna 就是上面蓝屏大佬的旧版本,虽然旧版本可以用但是旧版本没有太大意义。
backdoor_accounts.cna 两个选项的作用分别是激活guest用户添加到本地管理员或者域管。

使用Aggressor脚本雕饰Cobalt Strike

beaconSMS.cna可以实现变动短信息通知。

使用Aggressor脚本雕饰Cobalt Strike


say.cna 看代码的意思是上线机器是admin的话就说“一个新的admin机器”,不知道是不是其他地方的组件,意义不大。
service-reboot.cna 会使用sc创建一个后门服务,重启有效    。
sticky-keys.cna 会修改防火墙规则然后把粘滞键在注册表的记录修改为cmd,这样就可以实现连接机器3389然后调出粘滞键后门了。

7、 下面要介绍Vincent Yiu师傅的小合集。

使用Aggressor脚本雕饰Cobalt Strike


地址: https://github.com/vysec/Aggressor-VYSEC
auto-prepenv.cna 机器上线时自动把explorer.exe设置为ppid,测试时不知道是不是权限原因没有生效。
Blacklist.cna 可以实现设置一个上线机器的黑名单列表,如果机器再次上线会自动退出会话。感觉如果遇到溯源或者蜜罐以及一些虚拟分析环境等这个脚本会比较有用。
mimikatz_addons.cna 则是新注册了一个password_change命令,可以实现直接使用mimikatz的密码更改功能强制修改NTLM哈希。
ping.cna 注册一个ping命令,并使用IP地址为HEX的形式去执行该命令。

使用Aggressor脚本雕饰Cobalt Strike

portfwd.cna 会注册一个portfwd命令,可以实现端口转发。
pushover-ng.cna 当中的pushover则是一个和slack很相似的东西,配置好相关的api和key之后都可以实现动态推送到手机。
test.cna 只是一个简单的test脚本。
vnc-psh.cna 是一个把Invoke-Vnc.ps1 注入到内存当中开启VNC服务的脚本,默认端口为5900,密码为SuperMan123。

8、 接下来介绍一个针对domain admin和local admin的辅助发现脚本。

使用Aggressor脚本雕饰Cobalt Strike


地址:https://github.com/killswitch-GUI/CobaltStrike-ToolKit
Initial-DACheck.cna 会在机器上线时对域用户组进行枚举,同时也可以使用命令行中新增的checkda命令进行主动检测。
Initial-LAdminCheck.cna 如果检测到上线机器当前用户为普通管理员会自动 bypassuac 然后 logonPassword 抓密码。命令行中对应的独立命令是checkla。
DA-Watch.cna 是另一个小伙伴们开发的,相对于上面的脚本好处在于可以避免使用powershell,同样可以实现对DA一定程度的监控,命令有:uaddDA、uremDA、ulistDA、uhookOn、uhookOff、Credential Checks。不过这个脚本比较特殊,并没有把这些命令注册到beacon命令行里,需要在script console中执行。命令含义基本如字面意思,github有更详细的介绍这里不再多说。

9、

这里讲一个持久化脚本,脚本优秀之处在于不需要依赖外部脚本完全依靠自身命令完成。

地址:

https://github.com/ZonkSec/persistence-aggressor-script
persistence.cna 简单来说就是通过注册表, 写服务, WMI, linkinfo, 粘滞键5种方式通过9种手法实现持久控制,在命令行中新注册了一个persistence命令,具体命令如下所示。

使用Aggressor脚本雕饰Cobalt Strike

10、 一个让人很舒服的辅助性脚本小套装。

使用Aggressor脚本雕饰Cobalt Strike


地址:

https://github.com/ramen0x3f/AggressorScripts
bueller.cna 简单来说可以实现这么一个需求:你想知道哪些机器是能通某个特定网的时候,可以使用该插件做到。结果会输出在script console当中。需要注意的一点是,因为是所有beacon,所以获得最终结果的时间和给beacon设置的sleep时间是紧密相关的。

使用Aggressor脚本雕饰Cobalt Strike


cdolla.cna 会检测当前上线机器当中哪些是localadmin权限,并且会列出过去90天内登陆过的用户。扫描之前需要先给待扫描的机器添加“cdolla”备注,扫描单个目标直接在cdolla命令后面接目标ip。
compromised_log.rpt     是cs导出报告时的一个模板,模板具体说明见github,至于导入方式可以在 Cobalt Strike > Preferences > Reporting > Select template 导入。

使用Aggressor脚本雕饰Cobalt Strike


credpocalypse.cna 的用意是通过在设定的时间内定时dump密码来防止错过新登录的用户,添加和移除登陆监视列表的操作都在图形化界面当中。

使用Aggressor脚本雕饰Cobalt Strike


leave_no_trace.cna 会记录用户上传过得文件,测试是不管文件上传成功或者失败都会记录。用意是攻击流程完成之后便于痕迹清理和样本回收。展示位于view栏下,右键弹出的两个选项是尝试删除和检查是否清理完毕。

使用Aggressor脚本雕饰Cobalt Strike


portscan_results.cna 会在view下新加一栏"Port Scan Results",用来展示portscan的结果,并且支持排序。
save_log.cna 用来记录和导出单个beacon的命令和输出信息,对应的命令是start_log和stop_log,文件会导出在 cobaltstrike / saved_logs / [beacon id] _yyyyMMdd_HHmmssSSS.log
utils.cna 是一组小功能的集合,包括打印环境变量、获得指定进程的第一个pid、返回登陆的用户数等等。

11、 下面介绍一组短小精悍的脚本,几个脚本做到兼具权限提升和持久控制。

使用Aggressor脚本雕饰Cobalt Strike


地址:

https://github.com/rasta-mouse/Aggressor-Script
既可以针对功能单个导入,也可以通过直接载入 loader.cna 一次性载入两个脚本, elevate.cna 会增加五种提权方式, persistence.cna 提供两种持久控制的方式。

使用Aggressor脚本雕饰Cobalt Strike

使用Aggressor脚本雕饰Cobalt Strike


dcom.cna 的作用是使用DCOM运行PowerShell在远程主机上生成会话。

使用Aggressor脚本雕饰Cobalt Strike

12、

介绍一个专注uac bypass的脚本,uacbypass.cna 会增加三种bypass uac的方式。

地址:

https://github.com/RhinoSecurityLabs/Aggressor-Scripts
增加三种bypass uac 的说法是写于十月份的文章简版,当时的3.8版本elevate菜单当中只有两种提权方式,包括ms14-058和uac-dll。如今cs已经出到3.12,elevate菜单当中已经自带了这个脚本当中的一种提权方式——uac-token-duplication,所以说使用3.12版本载入脚本后的效果是只增加了两种新的提权方式。另外脚本会注册一条audit_uac 命令,该命令的作用是通过检查uac设置和主机版本来确认哪些无文件的uac bypass 手法是有效的。

使用Aggressor脚本雕饰Cobalt Strike

使用Aggressor脚本雕饰Cobalt Strike

13、 下面介绍一个有点调皮的脚本小套装,几个整蛊功能和国外的几款远控比较相似。

使用Aggressor脚本雕饰Cobalt Strike


地址:

https://github.com/Und3rf10w/Aggressor-scripts
KitLoader.cna 可以一键导入上面除键盘记录外的8个脚本,auto-keylogger.cna 可以实现在机器上线时自动进行键盘记录。
AnnoyKit.cna 的功能主要是整蛊型的,包括隐藏IE的进程,播放整蛊歌曲等方式。

使用Aggressor脚本雕饰Cobalt Strike


AntiForensicsKit.cna 主要功能是反取证,包括检查虚拟机环境、清除日志、对付CarbonBlack等等。

使用Aggressor脚本雕饰Cobalt Strike


CredKit.cna 是一个凭证窃取的小集合,包括Firefox、寻找keepass的配置文件、获取keepass数据库的key、运行Invoke-mimikittenz。

使用Aggressor脚本雕饰Cobalt Strike


EnumKit.cna 包含的功能很多,包括获取主机WLAN密码、更新时间、用户权限情况、ip、安装应用等,也有定位carbon black的CB server和联动bloodhound的功能。

使用Aggressor脚本雕饰Cobalt Strike


PersistKit.cna 是持久控制模块,可以创建后门服务,NTFS ADS后门和无文件后门。

使用Aggressor脚本雕饰Cobalt Strike


PrivescKit.cna 主要是借助power up 把提权模块遍历扫描一遍。

使用Aggressor脚本雕饰Cobalt Strike


thirdparty.cna 在命令行中注册了一条com-exec 命令,可以实现通过DCOM在目标上机器上弹shell。

使用Aggressor脚本雕饰Cobalt Strike


auto-keylogger.cna 插件载入后会在机器上线之后自动进行键盘记录工作。
剩下四个是kit套装之外的插件,当中的knightlab-timeline.rpt 是一个cs报告的模板。
inveigh.cna 会在机器上运行指定时间的Inveigh,自动启用LLMNR和NBNS欺骗,Inveigh.ps1 需要自己去下载。
https://github.com/Kevin-Robertson/Inveigh

使用Aggressor脚本雕饰Cobalt Strike


pushover.cna 在配置好之后也可以通过 pushover.net 实现信息推送功能。
ebowla-interop.cna 可以借助ebwola创建加密的payload,不过需要自己提前下好ebwola.py 放到目录下。
https://github.com/Genetic-Malware/Ebowla

使用Aggressor脚本雕饰Cobalt Strike

14、 再来一个来自001SPARTaN的小合集,老哥头像是个很亲切的蓝屏。

使用Aggressor脚本雕饰Cobalt Strike


地址:

https://github.com/001SPARTaN/aggressor_scripts
elevate.cna 是基于原作者的修改版本,增加了七种elevate的方式。

使用Aggressor脚本雕饰Cobalt Strike


个人认为 logvis.cna 是一个相当人性化的插件,载入之后view command_log 可以实现管理员对机器操作命令的可视化。

使用Aggressor脚本雕饰Cobalt Strike


vis.cna  会新建一个视图,实时显示web动态和上线机器ID及user等信息。

使用Aggressor脚本雕饰Cobalt Strike


bot.cna 是一个多功能机器人,功能包括提权、下载、标记、命令执行等等,命令格式是“!+命令”,载入插件后在event log 里输入“!help”可以获得机器人的所有操作命令。

使用Aggressor脚本雕饰Cobalt Strike


custom_defaults.cna 会一键载入 elevate.cna 和powershell.cna ,另外会增加几个快捷键。

使用Aggressor脚本雕饰Cobalt Strike


dcom_lateral_movement.cna 注册了一个“dcom_shellexecute”命令,使用dcom执行命令横向移动,该插件是对enigma0x3研究的cna实现。

使用Aggressor脚本雕饰Cobalt Strike


download_screenshots.cna 会抓取所有机器的截图并下载下来,按钮添加在cobalt strike标签里。

使用Aggressor脚本雕饰Cobalt Strike


http.cna 算是cs脚本编写当中http请求的一个小demo,载入后会自动发出一个获取当前ip的请求。
powershell.cna 会在右键菜单当中增加一个powershell选项,包含powerup、bloodhood等,不过PS12文件作者并没有放到目录下,需要自己去找。

使用Aggressor脚本雕饰Cobalt Strike


web.cna 会直接起一个test的web,输出在script console里。

15、 下面介绍几个附属在一个大集合项目当中的小脚本。

使用Aggressor脚本雕饰Cobalt Strike


地址:

https://github.com/gaudard/scripts/tree/master/red-team/aggressor
Admin.cna 主要是借助 netsh 实现添加端口规则、展示规则、删除规则等操作的一个脚本,作者的代码写得比较简约,没有在命令行中对命令进行注册,所以help是看不到命令的,直接在命令行里输入命令就会执行对应的操作,说白了是对手打命令的一个简化。

使用Aggressor脚本雕饰Cobalt Strike


attacks.cna 包含几个整蛊功能,Deny 包括修改hosts文件、替换hosts文件、关机、禁用网络四个功能。Lulz 包含IE打开网页、Clippy复活、弹框(win7+)三个功能。

使用Aggressor脚本雕饰Cobalt Strike


beacon_initial.cna 有点让人看不透,机器上线之后操作太多了。
persistence.cna 会增加八种持久控制的手法,不过个人认为写的和上一个一样有点暴力。

使用Aggressor脚本雕饰Cobalt Strike

16、 作者收集的几个脚本,有和前面相似的地方。

使用Aggressor脚本雕饰Cobalt Strike


地址:

https://github.com/branthale/CobaltStrikeCNA
Beaconpire.cna 可以与 empire 联动,可以在顶部菜单配置server信息,并在右键菜单通过图形界面管理listener。

使用Aggressor脚本雕饰Cobalt Strike

使用Aggressor脚本雕饰Cobalt Strike


dnstxt_checkin.cna 会自动将初始化信息为空的 beacon 通过DNS-txt 方式弹shell,并设定sleep时间等。
Mimikatz30min.cna 是bluscreenofjeff的原脚本,每30分钟mimi一下,时间可以自己在脚本当中修改。

使用Aggressor脚本雕饰Cobalt Strike


Sleep_Menu.cna 会提供一个图形化的界面来管理sleep的时间间隔和抖动频率。

使用Aggressor脚本雕饰Cobalt Strike

17、

下面是一个修改自VYsec版本的CVE-2018-4878,测试没有体验出区别。

地址:https://github.com/hybridious/CVE-2018-4878

CVE-2018-4878.cna 的作用就是起一个 CVE-2018-4878 的payload。

使用Aggressor脚本雕饰Cobalt Strike

18、

下面是几个比较简单的脚本。

地址:

https://github.com/oldb00t/AggressorScripts

使用Aggressor脚本雕饰Cobalt Strike


beacon-aliases.cna 增加了很多很多别名,整个 scripts 目录的脚本以及其他的几个小功能,不过别名都没有注册在命令行里,使用起来需要自己去代码里看看然后去命令行直接执行。

使用Aggressor脚本雕饰Cobalt Strike


beacon-ps-highlight.cna 是又一个程序列表上色操作,红绿蓝三种颜色,意义参考前面的。
jacob-tools-loader.cna 会一键载入以上脚本。

19、 下面介绍头像让人记忆比较深刻的老哥的两个脚本。

使用Aggressor脚本雕饰Cobalt Strike


地址:
https://github.com/p292/Phant0m_cobaltstrike
https://github.com/p292/DDEAutoCS
disableeventvwr.cna 加载 Invoke-Phant0m.ps1 禁用事件查看器。
ddeauto.cna 可以一键起一个psh的payload server,然后生成DDE一键上线语句,Ctrl+F9添加。

使用Aggressor脚本雕饰Cobalt Strike

使用Aggressor脚本雕饰Cobalt Strike

20、

slack-alerts.cna修改自蓝屏哥,配置好之后会通过slack进行通知,作者预置了5个事件,git上有介绍。

地址:https://github.com/secgroundzero/CS-Aggressor-Scripts

使用Aggressor脚本雕饰Cobalt Strike

21、

powershell_survey.cna是一个借助 PSH 检测目标机器状况的插件,检测对象包括PSH和.NET。

地址:

https://github.com/skyleronken/Aggressor-Scripts

使用Aggressor脚本雕饰Cobalt Strike

22、

下面要介绍的这个小插件就有点精彩了,第一个版本算是cs的 powerview (PowerSploit和Empire中都有)集成,第二个版本作者把 自己写的 SharpView 也实现在了cna脚本当中,个人认为想法和功能都比较优秀。

地址:

https://github.com/tevora-threat/aggressor-powerview

https://github.com/tevora-threat/PowerView3-Aggressor

功能比较多,简单做了两张图列出所有功能的同时也可以对两个版本前后做一个对比。

使用Aggressor脚本雕饰Cobalt Strike

使用Aggressor脚本雕饰Cobalt Strike

23、 下面这位师傅比较高产,除了这里一股脑的几个cna脚本,git上还有几个profile可以自己参考。

使用Aggressor脚本雕饰Cobalt Strike

地址:
https://github.com/threatexpress/aggressor-scripts
https://github.com/threatexpress/red-team-scripts
https://github.com/threatexpress/persistence-aggressor-script
automigrate.cna 的功能是机器上线时按照设置自动进行进程迁移,但是测试一有点问题。
handler.cna 主要功能是对于sleep的优化,会标记已经dead的会话,会对SMB类型的会话单独标记等,同时对automigrate也起到一定的辅助作用。
init.cna 是上面两个脚本的主脚本,同时对于上面两个脚本的全局设置(比如automigrate的开关与否)也在这个脚本中进行。
make_webview.cna 的功能是可以一键生成一个如下图所示的 html 展示页面。使用方法是载入 make_webview.cna 脚本之后在script console 当中执行make_webview 命令,此时会生成teamserver对应的excel信息,再执行脚本目录中的 beacons_to_json.py 脚本就会生成对应的beacons.json 文件,html的展示就是基于该文件的。

使用Aggressor脚本雕饰Cobalt Strike


enumerate.cna 的功能是对系统文件列表、powershell和.NET的安装情况等等信息进行搜集和展示,对 linux 也在SSH中注册了一个enumerate 命令,也是对一些系统信息及IP信息等的列举。
persistence.cna 就是更新之前的ZonkSec版本,上面有提到这里不再重复介绍。

24、 下面这个小合集和 harleyQu1nn 比较相似,一并介绍一下。

使用Aggressor脚本雕饰Cobalt Strike


地址:

https://github.com/FortyNorthSecurity/AggressorAssessor
persist_assist.cna 如下图所示增加了三种持久化的方式。

使用Aggressor脚本雕饰Cobalt Strike


ArtifactPayloadGenerator.cnaSMBPayloadGenerator.cna 是两个payload构造器。

使用Aggressor脚本雕饰Cobalt Strike


text_aggressor.cna 可以实现机器上线邮件通知,具体配置在 python 脚本当中。
EDR.cna 和harleyQu1nn版本的相比略有改动,但是基本是一样的,都是基于枚举驱动文件等来判断安全产品是否安装。
ProcessColor.cnaredteamrepo.cna 和原版一模一样。
msbuild_exec.cna 注册了两条命令:msbuild_cmd、msbuild_script。两者都是将PSH转换为 XML 文件再借助msbuild执行,区别在于一个是本地转换,另一个是本地读取。


remote_msbuild.cna 也注册了两条命令,代码基本相同,不过上传路径没有写死。


compromised_log.rpt 是一个模板文件。

25、

下面再介绍一个Vincent Yiu团队的作品。

地址:

https://github.com/mdsecactivebreach/CACTUSTORCH
CACTUSTORCH.cna 只是整个项目当中的一部分,该项目可以实现通过 JavaScript 和VBScript进行shellcode注入。开始的时候免杀效果好一些,后来被黑客们广泛使用众多杀软打特征码之后杀的比较狠了,国内一些公众号也报道过。

使用Aggressor脚本雕饰Cobalt Strike

使用Aggressor脚本雕饰Cobalt Strike

26、 SharpHound

是C#重写的BloodHound,这里要讲的插件就是基于cs 的一个 SharpHound 辅助插件,项目比较新。

地址:

https://github.com/C0axx/AggressorScripts
SharpHound.cna 会在右键菜单当中增加一个 Invoke-Bloodhound 选项,命令执行方式有:PowerPick、PowerShell、Execute-Assembly 三种方式。

使用Aggressor脚本雕饰Cobalt Strike

使用Aggressor脚本雕饰Cobalt Strike

 27、

来自scanf 师傅的 CVE-2018-15982 payload插件,跟前面的两个Flash插件使用方式基本相同,不多介绍了。

地址:https://github.com/scanfsec/CVE-2018-15982

使用Aggressor脚本雕饰Cobalt Strike

28、

直接载入 custom_payload_generator.cna ,生成自定义payload的时候可以自己选择,上面有介绍过一个相似的多种payload的生成脚本,不过那个没得选择,一键就是生成一坨。这里的 payload_generator  支持自己选择的同时也会给出大体的执行和使用方式,用户体验比较好,目前为止payload的效果也还比较好。

地址:

https://github.com/offsecginger/AggressorScripts

使用Aggressor脚本雕饰Cobalt Strike

使用Aggressor脚本雕饰Cobalt Strike

29、 cs-magik

借助 redis 来实现事件通道和作业队列,没有搭建测试,可以自己参照说明尝试。

地址:

https://github.com/tomsteele/cs-magik

30、

nopowershell是一个基于C#用来替代PowerShell的项目, NoPowerShell.cna 只是一个用来注册命令的壳,该条命令是"nps"。然后整个项目依托于NoPowerShell.exe,所以需要提前在项目的releases下载或者自己编译NoPowerShell.exe 然后放到cs的/script 目录下,注意不是cna脚本下的/script 目录,然后众多命令都在介绍当中了。

个人认为作者的出发点是好的,但是这种实现方式存在一个比较致命的问题,如果AV把特征码打在程序一个很瓶颈的位置,整个项目基本就废掉了,鸡蛋都在一个篮子里,还要花精力去免杀。

地址:

https://github.com/bitsadmin/nopowershell

使用Aggressor脚本雕饰Cobalt Strike

使用Aggressor脚本雕饰Cobalt Strike

31、

Invoke-CredentialPhisher是一个比较骚的项目,作者通过PSH实现了Windows几种场景下的钓鱼弹窗,诱导目标输出账号密码之后会带回teamserver,win7测试有点问题,但是win10效果比较好,窗口效果很逼真。作者博客有一篇文章专门介绍撰写思路,可以参考。

地址:

https://github.com/SpiderLabs/SharpCompile
文章地址:

https://blog.fox-it.com/2018/08/14/phishing-ask-and-ye-shall-receive/

使用Aggressor脚本雕饰Cobalt Strike


outlook弹窗效果,点击就会要求输入相应凭证:

使用Aggressor脚本雕饰Cobalt Strike


将凭证带回teamserver的效果:

使用Aggressor脚本雕饰Cobalt Strike

32、

SharpCompile项目可以实现在靶机上实时编译和执行C#,右键菜单的图形界面有以下两种方式,命令行中注册了下图中的两条命令。该脚本需要提前在cna中配置server和tmp目录。另外作者没提到的关于靶机.NET版本的问题也是实际操作中需要注意的细节。

地址:

https://github.com/SpiderLabs/SharpCompile

使用Aggressor脚本雕饰Cobalt Strike

使用Aggressor脚本雕饰Cobalt Strike

33、

reflectivepotato是对ms16075(烂土豆)的cna脚本实现,使用方法直接一把梭右键elevate,脚本通过加载dll的方式进行漏洞利用。不过在win7靶机上试了下如果开着防火墙会拦,另外rundll32会崩,可以自己编译测试下。

地址:

https://github.com/realoriginal/reflectivepotato

使用Aggressor脚本雕饰Cobalt Strike

三、写在最后

之前有一段特别忙碌的时间,有很明确的方向,所以人在那段时间的状态就像录音机里的磁带一样循着轨迹来来回回,虽然总是重复,但是至少有奔头。后来磁带卷像是被抠出来丢在一边,滚了两步就倒在地上,像濒死的苍蝇又被掐掉了头,混吃等死。这是前因。

我是个特别不理性的人,受人和事的影响总是特别大,经常会做出一些冲动和不合逻辑的事。自从我从yhg那里学会了说对不起,感觉自己就总是在说对不起,也不知道到底欠了这个世界究竟多少人情。我以为人生是个迎来送往的过程,假设活着是一场修行,接受苦难和送别过去能概括一个人修行的大部分内容。技术和认知的提升是外在的修饰,知行合一还需要一个人对自己内在的雕琢。什么时候能看的清自己,也就能放得下,过得去,起得来。这是后果。

后来读到K师傅的文章和另外几位师傅的文章发现很多东西在我了解之前早就写得很明白了,而且有的东西官网上有写我还要跑去问,所以说学习工作做的还是不到位,没有看到师傅们的文章就把自己的歪解写出来瞎指路。另外发的这些也几乎全部都是在没什么系统性的指导和培训的情况下自己摸索和尝试的结果,要么就是东拼西凑出来的稗官野史,所以说

这里写的东西万万要辩证着看,只做参考,只做菜鸡hjb研究的一个记录 。这是额外。

文笔垃圾,措辞轻浮,内容浅显,操作生疏。不足之处欢迎大师傅们指点和纠正,感激不尽。

参考链接:  

http://www.vuln.cn/6879
https://github.com/c4bbage/aggressor-script-cn
https://github.com/rsmudge/cortana-scripts

封面图片来自:getdrawings.com

使用Aggressor脚本雕饰Cobalt Strike


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

关注码农网公众号

关注我们,获取更多IT资讯^_^


为你推荐:

相关软件推荐:

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

两周自制脚本语言

两周自制脚本语言

[日]千叶 滋 / 陈筱烟 / 人民邮电出版社 / 2014-6 / 59.00元

《两周自制脚本语言》是一本优秀的编译原理入门读物。全书穿插了大量轻松风趣的对话,读者可以随书中的人物一起从最简单的语言解释器开始,逐步添加新功能,最终完成一个支持函数、数组、对象等高级功能的语言编译器。本书与众不同的实现方式不仅大幅简化了语言处理器的复杂度,还有助于拓展读者的视野。 《两周自制脚本语言》适合对编译原理及语言处理器设计有兴趣的读者以及正在学习相关课程的大中专院校学生。同时,已经......一起来看看 《两周自制脚本语言》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具