随笔分类 - Sqli-labs
摘要:Less-30与less-29原理是一致的,区别仅仅是将id的'变为了",我们可以看到less-30的sql语句为: $id=$_GET['id']; $id = '"' .$id. '"'; $sql="SELECT * FROM users WHERE id=$id LIMIT 0,1"; 所以
阅读全文
摘要:查看源码SQL如下 $sql="SELECT * FROM users WHERE id='$id' LIMIT 0,1"; 尝试进行注入 http://127.0.0.1/sql/Less-29/login.php?id=-1' union select 1,database(),3--+ 系统检
阅读全文
摘要:首先介绍一下29,30,31这三关的基本情况: 服务器端有两个部分:第一部分为tomcat为引擎的jsp型服务器,第二部分为apache为引擎的php服务器,真正提供web服务的是php服务器。工作流程为:client访问服务器,能直接访问到tomcat服务器,然后tomcat服务器再向apache
阅读全文
摘要:关键代码 function blacklist($id) { //$id= preg_replace('/[\/\*]/',"", $id); //strip out /* //$id= preg_replace('/[--]/',"", $id); //Strip out --. //$id= p
阅读全文
摘要:关键代码 function blacklist($id) { $id= preg_replace('/[\/\*]/',"", $id); //strip out /* $id= preg_replace('/[--]/',"", $id); //Strip out --. $id= preg_re
阅读全文
摘要:关键代码 function blacklist($id) { $id= preg_replace('/[\/\*]/',"", $id); //strip out /* $id= preg_replace('/[--]/',"", $id); //Strip out --. $id= preg_re
阅读全文
摘要:关键代码 function blacklist($id) { $id= preg_replace('/[\/\*]/',"", $id); //strip out /* $id= preg_replace('/[--]/',"", $id); //Strip out --. $id= preg_re
阅读全文
摘要:关键代码 function blacklist($id) { $id= preg_replace('/or/i',"", $id); //strip out OR (non case sensitive) $id= preg_replace('/and/i',"", $id); //Strip ou
阅读全文
摘要:关键代码 function blacklist($id) { $id= preg_replace('/or/i',"", $id); //strip out OR (non case sensitive) $id= preg_replace('/and/i',"", $id); //Strip ou
阅读全文
摘要:关键代码 function blacklist($id) { $id= preg_replace('/or/i',"", $id); //strip out OR (non case sensitive) $id= preg_replace('/AND/i',"", $id); //Strip ou
阅读全文
摘要:关键代码 function blacklist($id) { $id= preg_replace('/or/i',"", $id); //strip out OR (non case sensitive) $id= preg_replace('/AND/i',"", $id); //Strip ou
阅读全文
摘要:本关为二次排序注入的示范例。二次排序注入也成为存储型的注入,就是将可能导致sql注入的字符先存入到数据库中,当再次调用这个恶意构造的字符时,就可以触发sql注入。二次排序注入思路: 1. 黑客通过构造数据的形式,在浏览器或者其他软件中提交HTTP数据报文请求到服务端进行处理,提交的数据报文请求中可能
阅读全文
摘要:关键源码如下 $reg = "/#/"; $reg1 = "/--/"; $replace = ""; $id = preg_replace($reg, $replace, $id); $id = preg_replace($reg1, $replace, $id); $sql="SELECT *
阅读全文
摘要:本关和less20、less21是一致的,我们可以从源代码中看到这里对uname进行了"uname"的处理 $cookee = $_COOKIE['uname']; $cookee = base64_decode($cookee); $cookee1 = '"'. $cookee. '"'; $sq
阅读全文
摘要:本关对cookie进行了base64的处理,其他的处理流程和less20是一样的。 关键代码 $cookee = $_COOKIE['uname']; $cookee = base64_decode($cookee); $sql="SELECT * FROM users WHERE username
阅读全文
摘要:从源代码中我们可以看到cookie从username中获得值后,当再次刷新时,会从cookie中读取username,然后进行查询。 关键代码 $cookee = $_COOKIE['uname']; $sql="SELECT * FROM users WHERE username='$cookee
阅读全文
摘要:从源代码中我们可以看到我们获取到的是HTTP_REFERER $uagent = $_SERVER['HTTP_REFERER']; $insert="INSERT INTO `security`.`referers` (`referer`, `ip_address`) VALUES ('$uage
阅读全文
摘要:本关我们这里从源代码直接了解到 $uname = check_input($_POST['uname']); $passwd = check_input($_POST['passwd']); 对uname和passwd进行了check_input()函数的处理,所以我们在输入uname和passwd
阅读全文
摘要:在利用抓包工具进行抓包的时候,我们能看到很多的项,下面详细讲解每一项。 HTTP头部详解 1、 Accept:告诉WEB服务器自己接受什么介质类型,*/* 表示任何类型,type/* 表示该类型下的所有子类型,type/sub-type。 2、 Accept-Charset: 浏览器申明自己接收的字
阅读全文
摘要:本关我们可以看到是一个修改密码的过程,利用的是update语句,与在用select时是一样的,我们仅需要将原先的闭合,构造自己的payload。 尝试报错 Username:admin Password:1' You have an error in your SQL syntax; check t
阅读全文
浙公网安备 33010602011771号