- 如何检查并堵住网站的eWebEditor漏...
- PHPBB 2.0.22 MOD版最新注入漏洞
- 强搜天线 搜出WiFi世界的安全漏洞
- 网络工程师讲解安全漏洞的形成和防...
- 选购入侵检测产品的11点原则
- 渗透测试的攻与守 认清网络面临的...
- Oracle数据库软件包远程溢出漏洞
- 详述Windows 2003 SP2入门IDS构建...
- 绕过Anti-Rookit的内核模块扫描技...
- Firefox浏览器现多个远程安全漏洞
- 入侵检测 浅谈安全扫描软件的检测...
- 卡巴斯基漏洞被黑客利用入侵系统
- 补丁也有漏洞 艾妮漏洞让微软手忙...
- Agent技术在分布式入侵检测系统中...
- Win2000服务器入侵前兆检测方法
L-blog是一款较为成熟的blog程序,拥有强大的功能和简便的操作,这些优点使L-blog有着数量可观的用户群。然而,L-blog程序中代码的过滤不严,导致黑客可以向L-blog中写入恶意数据,从而将自己的账号提升为管理员,进而登录L-blog后台管理系统,写入webshell,并进一步得提升权限,从而获取服务器的控制权。威胁如何产生?我们又该如何防范?这正是本文所要讲述的重点。
一、洞查先机,漏洞成因早知道
下载L-blog程序,用记事本打开其中的member.asp,可以找到如下代码:“mem_Sex="&CheckStr(Request.Form("mem_Sex"))&"”,这句代码是对用户在修改资料时的性别一栏进行更新,而这句代码却存在过滤不严的漏洞,黑客可以绕过验证,将需要写入的数据本地提交到“性别”一栏中,从而利用这个漏洞将账号提升为L-blog管理员。
目前网上使用最多的L-blog有两个版本,L-Blog V1.08 (SE) Final和L-Blog V1.10 AIO,后者是前者的升级版本,但是这两个版本都存在过滤不严的漏洞,由于两者的代码不同,因此有着不同的利用方法,下面我们就对这两个版本的利用方法进行阐述。
二、提升权限,构造本地提交页面
我们首先打开使用L-Blog V1.08 (SE) Final版本的blog,注册一个用户。完成后我们点击用户控制面板上的“修改资料”,进入“编辑个人资料”页面。这时我们点击IE的查看菜单,选择“源文件”,将弹出的源文件内容保存为test.txt。用记事本的“查找”功能可以找到如下代码:“form action="member.asp?action=edit&edit=post"”,由于我们需要本地提交,因此需要将这里的相对路径改为绝对路径,即将member.asp前面的网址补充完整。继续往下看,来到如下代码处:
“<input name="mem_Sex" type="radio" value="1" >
男
<input type="radio" name="mem_Sex" value="2" >
女
<input type="radio" name="mem_Sex" value="0" checked>
保密”
这段代码就是让用户在修改个人资料时选择自己的性别,从正常的页面中我们可以看到,“性别”这一栏中是“男,女,保密”三个选项的单选框,那么我们又如何将恶意数据从“性别”这一栏写入呢?
选中上文中的这段代码,将其替换为“<input name="mem_Sex" type="text" size="36" value="0">”,然后保存这个文本文档,接着将这个文本文档的后缀名改为htm。用IE打开test.htm,网页会显示不全,但是可以看到,“性别”一栏处已经从单选框变成了文本框,这也就意味着我们可以写入任意数据了。
在“性别”一栏的文本框中输入:“0,mem_Status="SupAdmin"”(不包括引号),点击“确定编辑”即可完成本地提交。我们重新登陆L-blog,可以发现,在“用户中心”中多出了两个选项“发表日志”和“系统管理”(如图1),这两个选项是只有L-blog的管理员才能够看到的,因此证明我们已经成功将自己的账号提升为管理员了。

图1 成功提升帐户为管理员
三、绕过验证,利用工具提交数据
在上文中我们已经说到L-blog的两个版本利用方法不同,那不同在哪呢?由于L-Blog V1.10 AIO更新了验证机制,使原有的本地提交页面这种方法已经不起作用。然而新版本只是更新了验证机制,而并没有从根本上修补漏洞,因此我们可以利用工具将数据提交上去,从而绕过新版本的验证机制,其效果和构造本地提交页面是一样的。
