内网渗透之用户登录启动进程的多种方法总结

一. 注册表方法

 1. 操作 Userinit 的值

  • 功能: 在系统每次启动时运行 C:\tmp\pentestlab.exe
  • 位置说明: Userinit 键包含一组程序,这些程序会在用户登录时自动启动。
  • 作用范围: 对所有用户有效,所有用户登录时均会运行。
  • 实战命令
    • 先查询原来的值
      reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v Userinit

      将得到后的结果加入到下面

      d2b5ca33bd20241223211758

      reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v Userinit /t REG_SZ /d "C:\Windows\system32\userinit.exe,C:\XXXXXXXXX.exe" /f

      将你的自定义程序路径:C:\XXXXXXXXXXX.exe 追加到原来的目标程序后面。

2. 操作 Shell 的值

  • 功能: 在系统每次启动时运行 C:\tmp\pentestlab.exe
  • 位置说明: Shell 键包含一组程序,这些程序会在用户登录时自动启动。
  • 作用范围: 对所有用户有效,所有用户登录时均会运行。
  • 实战命令
    • 查询原有的值
      reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v Shell

      d2b5ca33bd20241223212100

    • 将上面查到到的内容与你自己的程序路径追加进去(PS: 这里切记不可携带路径,只能填文件名,把文件上传到【C:\Windows】目录中即可。否则会造成黑屏风险!)
      reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v Shell /t REG_SZ /d "explorer.exe,xxxx.exe" /f

      恢复命令

      reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v Shell /t REG_SZ /d "explorer.exe" /f

3. 操作 Run 值

  • 功能: 在系统每次启动时运行 C:\tmp\pentestlab.exe
  • 位置说明: Run 键包含一组程序,这些程序会在用户登录时自动启动。
  • 作用范围: 对所有用户有效,所有用户登录时均会运行。
  • 实战命令:

     

    全局有效与当前用户的区别在于开头的:HKEY_LOCAL_MACHINEHKEY_CURRENT_USER

    • 全局有效
      HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
    • 当前用户有效
      HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
    • 实际命令
      reg add "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run" /v Pentestlab /t REG_SZ /d "C:\XXXXXX.exe"

4. 操作 RunOnce 值

  • 功能: 在下次系统启动时运行 C:\tmp\pentestlab.exe但只会运行一次,运行后对应的注册表项会被自动删除。
  • 介绍说明
      • RunOnce 键在现代 Windows 版本(Windows 10/11)中完全支持。
      • 程序运行后,系统会自动删除对应键值,确保只运行一次。
  • 作用范围: 对所有用户有效。
  • 实战命令
    reg add "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce" /v Pentestlab /t REG_SZ /d "C:\XXXXXXXX.exe"

5. 操作 RunServices 值

  • 功能: 在系统启动时作为服务运行 C:\tmp\pentestlab.exe
  • 位置说明: RunServices 键指定的是在操作系统加载前运行的服务程序(在用户登录前)。
  • 作用范围: 对所有用户有效,适合后台服务类程序。
  • 作用系统:Windows 2000 和 XP 和 2003
  • 实战命令
    reg add "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices" /v Pentestlab /t REG_SZ /d "C:\tmp\pentestlab.exe"

6. 操作 RunServicesOnce 值

  • 功能: 在下次系统启动时作为服务运行 C:\tmp\pentestlab.exe但只会运行一次,运行后对应的注册表项会被自动删除。
  • 介绍说明: RunServicesOnce 键适用于一次性启动的服务程序。
    • RunServicesOnceRunServices 是较早版本的 Windows(如 Windows 2000 和 XP)中常用的键。
    • 在现代版本的 Windows(如 Windows 10 和 11)中,推荐使用 Run 键,因为 RunServicesRunServicesOnce 的支持可能较弱或行为不一致。
  • 作用范围: 对所有用户有效。
  • 作用系统:Windows 2000 和 XP 和 2003
  • 实战命令
    reg add "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce" /v Pentestlab /t REG_SZ /d "C:\tmp\pentestlab.exe"

7. 操作 RunOnceEx 值

  • 功能: 在下次系统启动时作为服务运行 C:\tmp\pentestlab.exe但只会运行一次,运行后对应的注册表项会被自动删除。
  • 介绍说明: RunOnceEx 键适用于一次性启动的服务程序。
    • 支持多任务和依赖关系:
      RunOnceEx 提供比 RunOnce 更多的灵活性,允许定义多个任务并指定任务的依赖顺序。依赖项通常用于确保任务在依赖资源加载后才运行。
    • 运行后自动删除:
      RunOnce 类似,RunOnceEx 的任务在执行完成后会从注册表中自动删除。
  • 作用范围: 对所有用户有效。
  • 实战命令
    reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\0001" /v Command /t REG_SZ /d "C:\tmp\pentestlab.exe"
© 版权声明
THE END
喜欢就支持一下吧
点赞10 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容