前言
今天看了下团队发的XCTF高校战疫的WP,这里先喊一句。杨大树师傅太强了orz 几乎没帮啥忙,简单的题目都被师傅们秒了,我进度太慢,跟不上,后面难的题目基本动不了。再喊一遍,星盟的师傅tql。再接再厉,希望下次能上师傅们,帮到师傅们解题。
回顾主题,这里是从看到比赛里的sqlcheckin这道题目的WP后,才觉得很奇怪,然后百度发现并学习到了mysql的隐式类型转换的点。(比较菜没有仔细学习过mysql)
MYSQL弱类型转换
这里本地搭建一下环境(用的老的语句),php7比较高的环境用新的语句
$conn = mysql_connect('127.0.0.1','root','root'); //这里使用@符号屏蔽出错信息
mysql_select_db('test',$conn);
$sql ="select * from people where username = '".$_POST["username"]."' and password = '".$_POST["password"]."'";
$result = mysql_query($sql);
while($row = mysql_fetch_array($result)){
echo "用户ID:" . $row['id'] . "
";
echo "用户名:" . $row['username']