0x01 Beacon详解
0x01.1 Beacon 命令
通过系列教程2的学习,配置好Listeners,让目标及执行我们的payload后门程序后,即可发现目标主机已经上线
右键目标选择使用Beacon,我们用它来执行各种命令
== 在Cobalt Strike中他的默认心跳是60s(即sleep时间是60s,每一分钟目标主机与teamserver通信一次)这让我们执行命令或者进行其他操作响应很慢。在下载文件事特别明显,所以一般会把响应时间调小一些,但是在实战环境中不要调节的太小,不然流量会特别明显==
beacon与cmd不同很多命令不能直接输入。比如在cmd中查看ip地址直接输入ipconfig即可,但是在beacon中需要输入shell ipconfig才能查看。不要在这里采坑哟!
在beacon中能直接使用的命令如下:
help:查看beacon shell所有内置命令的帮助。如何查看指定命令的用法,可以这样,eg:help checkin
note:给当前目录机器起个名字,eg:note chicken1-shell
cd: 在目标系统中切换目录,注意在win系统中切换目录要用双斜杠,或者直接使用'/' eg: cd c:\\
mkdir: 新建目录, eg: mkdir d:\\beacon
rm: 删除文件或目录, eg:rm d:\\beacon
upload: 上传文件到目标系统中
download: 从目标系统中下载指定的文件,eg:download C:\\payload.txt
cancle:取消下载任务.比如一个文件特别大,下载非常好时间,中途就可以使用此命令取消下载
shell:在目标系统中执行指定的cmd命令,eg:shell whoami
getuid:查看当前beacon会话在目标系统中的用户权限,如果有需要还需进行提权。
pwd: 查看当前目录系统中的路径
ls: 列出当前目录下所有文件和目录
drives:列出目标系统中的所有分区
ps:查看目标系统当前所有的的进程列表
kill: 杀掉指定进程。 eg:kill 6453
sleep :指定被控端休眠时间,默认是60s回传一次,可以使用sleep 10修改回传时间,实际中不宜过快,不然容易被发现,一般80s回传一次
jobs:列出所有的任务列表,有些任务执行时间可能稍微较长,此时就可以从任务列表中看到其所对应的具体任务的id,针对性清除
jobkill:如果发现任务 不知是和原因长时间没有执行或异常,可以尝试用此命令直接结束改任务。eg:jobkill 3456
clear: 清除beacon内部的任务队列
checkin:强制让控制端回连一次
exit: 终止当前的beacon会话
ctrl + k :清屏
汉化的命令如下:
Command Description
------- -----------
browserpivot 注入受害者浏览器进程
bypassuac 绕过UAC
cancel 取消正在进行的下载
cd 切换目录
checkin 强制让被控端回连一次
clear 清除beacon内部的任务队列
connect Connect to a Beacon peer over TCP
covertvpn 部署Covert VPN客户端
cp 复制文件
dcsync 从DC中提取密码哈希
desktop 远程VNC
dllinject 反射DLL注入进程
dllload 使用LoadLibrary将DLL加载到进程中
download 下载文件
downloads 列出正在进行的文件下载
drives 列出目标盘符
elevate 尝试提权
execute 在目标上执行程序(无输出)
execute-assembly 在目标上内存中执行本地.NET程序
exit 退出beacon
getprivs Enable system privileges on current token
getsystem 尝试获取SYSTEM权限
getuid 获取用户ID
hashdump 转储密码哈希值
help 帮助
inject 在特定进程中生成会话
jobkill 杀死一个后台任务
jobs 列出后台任务
kerberos_ccache_use 从ccache文件中导入票据应用于此会话
kerberos_ticket_purge 清除当前会话的票据
kerberos_ticket_use 从ticket文件中导入票据应用于此会话
keylogger 键盘记录
kill 结束进程
link Connect to a Beacon peer over a named pipe
logonpasswords 使用mimikatz转储凭据和哈希值
ls 列出文件
make_token 创建令牌以传递凭据
mimikatz 运行mimikatz
mkdir 创建一个目录
mode dns 使用DNS A作为通信通道(仅限DNS beacon)
mode dns-txt 使用DNS TXT作为通信通道(仅限D beacon)
mode dns6 使用DNS AAAA作为通信通道(仅限DNS beacon)
mode http 使用HTTP作为通信通道
mv 移动文件
net net命令
note 备注
portscan 进行端口扫描
powerpick 通过Unmanaged PowerShell执行命令
powershell 通过powershell.exe执行命令
powershell-import 导入powershell脚本
ppid Set parent PID for spawned post-ex jobs
ps 显示进程列表
psexec Use a service to spawn a session on a host
psexec_psh Use PowerShell to spawn a session on a host
psinject 在特定进程中执行PowerShell命令
pth 使用Mimikatz进行传递哈希
pwd 当前目录位置
reg Query the registry
rev2self 恢复原始令牌
rm 删除文件或文件夹
rportfwd 端口转发
run 在目标上执行程序(返回输出)
runas 以另一个用户权限执行程序
runasadmin 在高权限下执行程序
runu Execute a program under another PID
screenshot 屏幕截图
setenv 设置环境变量
shell cmd执行命令
shinject 将shellcode注入进程
shspawn 生成进程并将shellcode注入其中
sleep 设置睡眠延迟时间
socks 启动SOCKS4代理
socks stop 停止SOCKS4
spawn Spawn a session
spawnas Spawn a session as another user
spawnto Set executable to spawn processes into
spawnu Spawn a session under another PID
ssh 使用ssh连接远程主机
ssh-key 使用密钥连接远程主机
steal_token 从进程中窃取令牌
timestomp 将一个文件时间戳应用到另一个文件
unlink Disconnect from parent Beacon
upload 上传文件
wdigest 使用mimikatz转储明文凭据
winrm 使用WinRM在主机上生成会话
wmi 使用WMI在主机上生成会话
argue 进程参数欺骗