Axublog 1.1.0 c_login.php存在sql注入漏洞

0x00前言

开始从小的漏洞开始练习,搬运项目地址:

https://github.com/imsebao/Code-Audit

0x01

Axublog是一款PHP个人博客系统。 Axublog(c_login.php)存在SQL注入漏洞。攻击者可利用漏洞, 直接进行注入,获取数据库敏感信息。

漏洞分析: 漏洞出现在后台登录验证的部分。 首先看后台登录页面代码、www/ad/login.php

<?php
include_once("all.php");
header("Content-type:text/html;charset=utf-8");
@$user=$_POST["user"];
@$psw=$_POST["psw"];
@$loginlong=$_POST["loginlong"];
@$g=$_GET["g"];
switch ($g)
{
case "jsloginpost":jsloginpost();break;
case "exit":loginexit();break;
default:index();break;
}
function index(){
global $codename,$codeversion,$codeurl;
?>

首先看 user 和 psw 参数没经过然后过滤直接是 post 传递过来的值。 继续跟踪登录验证函数, jsloginpost 。jsloginpost 方法定义在文件 www/ad/c_login.php 第74行。
ps:这里我直接看的项目我也没看到他开头包含的all.php内容,想必应该没有过滤条件。

function jsloginpost(){
global $tabhead;
global $txtchk;
@$user=$_POST["user"];
@$psw=$_POST["psw"];$psw = authcode(@$psw, 'ENCODE', 'key',0);
@$loginlong=$_POST["loginlong"];
$chk=sqlguolv();
if($chk==1){
$json_arr = array("jieguo"=>"<div id=redmsg>登录失败:发现非法字符!</div>");
$json_obj = json_encode($json_arr);
echo $json_obj;die();
}
#-------
#setcookie("lggqsj",date('Y-m-d H:i:s',time()+$loginlong), time()+60*60*24,"/;
HttpOnly" , "",'');
$tab=$tabhead."adusers";
$chk=" where adnaa='".$user."' and adpss='".$psw."' ";
mysql_select_db($tab);
$sql = mysql_query("select * from ".$tab.$chk);
if(!$sql){$jieguo="<div id=redmsg>(数据库查询失败!)</div>";}else{
$num=mysql_num_rows($sql);
if($num==0){$jieguo='<div id=redmsg>登录失败:账户或密码错误!
</div>';}
else{
loginpass($loginlong);
$chkmoblie=isMobile();
if($chkmoblie==1){$jieguo='<div id=bluemsg>登录成功!正在前往<a
href="wap.php">后台</a>。。。</div>
<script>setTimeout("javascript:parent.location.href=\'wap.php\'", 1000);
</script>';}else{$jieguo='<div id=bluemsg>登录成功!正在前往<a href="index.php">后台
</a>。。。</div>
<script>setTimeout("javascript:parent.location.href=\'index.php\'", 1000);
</script>';}
}
}
$json_arr = array("jieguo"=>$jieguo);
$json_obj = json_encode($json_arr);
echo $json_obj;
}
#-------
?>

这里可以看到 user 和 psw 没有任何过滤直接进入了sql查询,导致sql注入,万能密码登录。 漏洞复 现: 访问后台登录页面 http://localhost/ad/login.php 账号: admin‘ and 1=1# 密码 随意 点 击登录,即可显示登录成功。

原文地址:https://www.cnblogs.com/wangtanzhi/p/12391307.html

时间: 2024-07-30 00:25:33

Axublog 1.1.0 c_login.php存在sql注入漏洞的相关文章

ref:ThinkPHP Builder.php SQL注入漏洞(&lt;= 3.2.3)

ThinkPHP Builder.php SQL注入漏洞(<= 3.2.3) ref:https://www.jianshu.com/p/18d06277161e TimeSHU 2018.04.21 02:03* 字数 761 阅读 23评论 2喜欢 0 ThinkPHP Builder.php SQL注入漏洞(<= 3.2.3)的一次漏洞复现作业 ------------------------------------------------------------- 1.进入docker

phpyun人才管理系统V5.0 SQL注入漏洞分析

*世界上最愚蠢的事莫过于我们无比狂热地做一件事,到最后却不知道为什么要做* cms背景介绍 PHP云人才管理系统(phpyun)是国内主流人才管理CMS系统之一!PHP云专为中文用户设计和开发,采用:B/S+c/s技术框架,程序源代码100%完全开放!基于PHP 和 MySQL 数据库构建的为核心开发. 漏洞类型 前台SQL盲注 漏洞描述 Phpyun最新版本V5.0中,在用户邮箱认证处,存在SQL延时注入.其未对 base64解密后的email参数进行任何过滤,从而导致漏洞产生. 漏洞产生链分

PHPCMS \phpcms\modules\member\index.php 用户登陆SQL注入漏洞分析

catalog 1. 漏洞描述 2. 漏洞触发条件 3. 漏洞影响范围 4. 漏洞代码分析 5. 防御方法 6. 攻防思考 1. 漏洞描述2. 漏洞触发条件 0x1: POC http://localhost/phpcms_v9/index.php?m=member&c=index&a=login dosubmit=1&username=phpcms&password=123456%26username%3d%2527%2bunion%2bselect%2b%25272%2

zabbix 爆高危 SQL 注入漏洞,可获系统权限(profileIdx 2 参数)

漏洞概述 zabbix是一个开源的企业级性能监控解决方案.近日,zabbix的jsrpc的profileIdx2参数存在insert方式的SQL注入漏洞,攻击者无需授权登陆即可登陆zabbix管理系统,也可通过script等功能轻易直接获取zabbix服务器的操作系统权限. 影响程度 攻击成本:低 危害程度:高 是否登陆:不需要 影响范围:2.2.x, 3.0.0-3.0.3.(其他版本未经测试) 漏洞测试 在zabbix地址后面添加这串url jsrpc.php?type=9&method=s

知名CMS软件Joomla 存SQL注入漏洞

  近日,Trustwave SpiderLabs 研究员Asaf Orpani 发现知名CMS Joomla 3.2-3.4.4版本中存在SQL注入漏洞,经安全狗实验室检测该漏洞危害巨大,影响范围广,利用难度低.目前官方已在3.4.5版本中修复该漏洞,请相关网站及时更新.另外,经测试安全狗可防御该漏洞. 漏洞详细说明与利用方法 据 Asaf Orpani 分析得出,该SQL注入漏洞存在于 /administrator /components /com_contenthistory/ model

WEB安全:XSS漏洞与SQL注入漏洞介绍及解决方案

对web安全方面的知识非常薄弱,这篇文章把Xss跨站攻击和sql注入的相关知识整理了下,希望大家多多提意见. 对于防止sql注入发生,我只用过简单拼接字符串的注入及参数化查询,可以说没什么好经验,为避免后知后觉的犯下大错,专门参考大量前辈们的心得,小小的总结一下,欢迎大家拍砖啊 一.跨站脚本攻击(XSS) 跨站脚本攻击的原理 XSS又叫CSS (Cross Site Script) ,跨站脚本攻击.它指的是恶意攻击者往Web页面里插入恶意脚本代码,而程序对于用户输入内容未过滤,当用户浏览该页之时

Zabbix-20160817-高危SQL注入漏洞

漏洞概述: zabbix是一个开源的企业级性能监控解决方案.近日,zabbix的jsrpc的profileIdx2参数存在insert方式的SQL注入漏洞,攻击者无需授权登陆即可登陆zabbix管理系统,也可通过script等功能轻易直接获取zabbix服务器的操作系统权限. 但是无需登录注入这里有个前提,就是zabbix开启了guest权限.而在zabbix中,guest的默认密码为空.需要有这个条件的支持才可以进行无权限注入. 影响程度: 攻击成本:低 危害程度:高 是否登陆:不需要 影响范

dedecms SESSION变量覆盖导致SQL注入漏洞修补方案

dedecms的/plus/advancedsearch.php中,直接从$_SESSION[$sqlhash]获取值作为$query带入SQL查询,这个漏洞的利用前提是session.auto_start = 1即开始了自动SESSION会话. 危害: 1.黑客可以通过此漏洞来重定义数据库连接. 2.通过此漏洞进行各种越权操作构造漏洞直接写入webshell后门. 云盾团队在dedemcs的变量注册入口进行了通用统一防御,禁止SESSION变量的传入,修复方法如下: 用文本编辑器打开/mnt/

SQL Injection(SQL注入漏洞)

审计前准备: 1.安?php程序(推荐phpStudy) 2.高亮编辑器(推荐 Sublimetext Notepad++) 3.新建一个文本,复制以下变量,这些变量是审计中需要在源码中寻找的 ###################### $_SERVER $_GET $_POST $_COOKIE $_REQUEST $_FILES $_ENV $_HTTP_COOKIE_VARS $_HTTP_ENV_VARS $_HTTP_GET_VARS $_HTTP_POST_FILES $_HTTP