Lxblog 是 PHPWind 开发的一套基于 PHP+MySQL 数据库平台架构的多用户博客系统,强调整站与用户个体间的交互,拥有强大的个人主页系统、独立的二级域名体系、灵活的用户模板系统、丰富的朋友圈和相册功 能。但是该blog系统在安全性上并不让人满意,本文就来分析lxblog一个变量未初始化造成的sql注入漏洞。
我们先来分析一下这个漏洞,看代码:
=======================code==================================
/user/tag.php
<?php
!function_exists('usermsg') && exit('Forbidden');
!in_array($type,$item_type) && exit;
//$type、$item_type均没有初始化
require_once(R_P.'mod/charset_mod.php');
foreach ($_POST as $key => $value) {
${'utf8_'.$key} = $value;
${$key} = $db_charset != 'utf-8' ? convert_charset('utf-8',$db_charset,$value) : $value;
}
if ($job == 'add') {
……//省略部分代码
}elseif($job=="modify"){
$tagnum="{$type}num";
$touchtagdb=$db->get_one("SELECT k.tags,i.uid FROM pw_{$type} k LEFT JOIN pw_items i ON i.itemid=k.itemid WHERE k.itemid='$itemid'");
//$type带入查询语句操作数据库
$touchtagdb['uid']!=$admin_uid && exit;
……//省略部分代码
=======================code==================================
当 然,在文件的之一行有 !function_exists('usermsg') && exit('Forbidden'); 这样一段代码的限制,我们不能直接访问该文件,但是可以通过user_index.php来include这个文件执行,看具体代码
=======================code==================================
//user_index.php
<?php
……//省略部分代码
require_once(R_P.'user/global.php');
require_once(R_P.'user/top.php');
if (!$action) {
……//省略部分代码
} elseif ($action && file_exists(R_P."user/$action.php")) {
$basename = "$user_file?action=$action";
require_once(Pcv(R_P."user/$action.php"));
//通过提交$action=tag即可以调用到存在漏洞的文件
pr是什么意思(PR、绿卡、永居、入籍)在申请移民过程中,很多人常常分不清永居、PR、绿卡、入籍之间的区别,这就容易出现误解:移民之后就是外国公民,不再是中国国籍?其实并不是这样。移民分两种状态,第一...
如何防止网站被黑客攻击? 使用有效的监控手段抓住入侵者。经常使用“网威”等监控工具对网络和系统的运行情况进行实时监控,用于发现黑客或入侵者的不良企图及越权使用,及时进行相关处理(如跟踪分析、反攻击等)...
一、手机被入侵了怎么办黑客接单流程 1、黑客接单流程另一个入侵者是那些利用互联网漏洞破坏互联网的人。手机被入侵了怎么办世界大赛完整视频这三组不是虐待动物的群体。怎么自学成手机被入侵了怎么办XXX找黑客...
3月9日消息,有报道称,在意大利的微软Windows Live Search网站已经被黑客接管。Sunbelt软件公司的安全专家称,向这个搜索引擎中输入某些查询将指向黑客运行的网站。 据pcpro....
肺病有哪些(肺病有哪些最普遍的有这六种)肺病有哪些?大家的肺脏出現难题,对身心健康的危害很大,必须长期的医治和合理饮食,那麼普遍肺病的种类你清晰吗?肺病有哪些呢?因为环境污染等要素,肺部疾病多发,...
假设我们已经通过某种方法成功的攻人了 Solaris 主机 202.11.22.33(本文隐藏了实际 IP地址,下同)并且获得这台主机上的最高root权限。那么,现在我们就可以在这台主机上使用Snif...