sql注入1(南邮)

今天在南邮上做了一个关于sql注入的题目:

题目s如下:

 这是一个关于sql注入的问题,打来题目链接:

 点击 提交查询

提示未登陆,如下图:

 点击source,弹出来一个页面如图

 这是php的mysql代码审计问题,

对代码进行逐行分析:

if($_POST[user] && $_POST[pass]) {

如果上传两个变量user pass  则继续执行if下面的代码

mysql_connect(SAE_MYSQL_HOST_M . ':' . SAE_MYSQL_PORT,SAE_MYSQL_USER,SAE_MYSQL_PASS);

链接sae的mysql数据库

 mysql_select_db(SAE_MYSQL_DB);

选择要修改的数据表

$user = trim($_POST[user]);
$pass = md5(trim($_POST[pass]));

去掉上传的user pass前后的空格,并对pass进行MD5加密

 $sql="select user from ctf where (user='".$user."') and (pw='".$pass."')";
    echo '</br>'.$sql;

从特定的表中取出user并复制给$sql

$query = mysql_fetch_array(mysql_query($sql));

对$sql进行查询,并将结果数组化,并赋值给$query

if($query[user]=="admin") {
      echo "<p>Logged in! flag:******************** </p>";
  }

满足条件就会输出flag

用brupsuit抓包即可得到结果。

猜你喜欢

转载自blog.csdn.net/weixin_42419856/article/details/82726795
今日推荐