补一下这道题,顺便发篇博客

不知道今年国赛是什么时候,菜鸡还是来刷刷题好了

0X01 考点

SQL注入、盲注、数字型

0X02自己尝试

尝试输入1

赵师傅需要女朋友吗???随便都能有好吧

输入2

???黑人问号

输入3

提交空

输入union都被过滤....

每次sql注入就很迷茫,然后fuzz测试一把...

发现好多都被过滤了

后来找到赵师傅的视频看了一下

有写 :通过1^1^1这个知识点绕过

1^(if((ascii(substr((select(flag)from(flag)),1,1))=102),0,1))

后面看了大佬们的脚本,发现自己还是太菜了,菜鸡的脚本就不贴上来了,各位看官可以去看看别的大佬的脚本

有二分法、布尔盲注、延时等等

附上大佬们的博客:

https://blog.csdn.net/weixin_43345082/article/details/99062970

https://www.cnblogs.com/20175211lyz/p/11435298.html

https://www.cnblogs.com/kevinbruce656/p/11342580.html

本题源码,希望对各位大佬有帮助

  1. <?php
  2. $dbuser='root';
  3. $dbpass='root';
  4.  
  5. function safe($sql){
  6. #被过滤的内容 函数基本没过滤
  7. $blackList = array(' ','||','#','-',';','&','+','or','and','`','"','insert','group','limit','update','delete','*','into','union','load_file','outfile','./');
  8. foreach($blackList as $blackitem){
  9. if(stripos($sql,$blackitem)){
  10. return False;
  11. }
  12. }
  13. return True;
  14. }
  15. if(isset($_POST['id'])){
  16. $id = $_POST['id'];
  17. }else{
  18. die();
  19. }
  20. $db = mysql_connect("localhost",$dbuser,$dbpass);
  21. if(!$db){
  22. die(mysql_error());
  23. }
  24. mysql_select_db("ctf",$db);
  25.  
  26. if(safe($id)){
  27. $query = mysql_query("SELECT content from passage WHERE id = ${id} limit 0,1");
  28.  
  29. if($query){
  30. $result = mysql_fetch_array($query);
  31.  
  32. if($result){
  33. echo $result['content'];
  34. }else{
  35. echo "Error Occured When Fetch Result.";
  36. }
  37. }else{
  38. var_dump($query);
  39. }
  40. }else{
  41. die("SQL Injection Checked.");
  42. }

BUUOJ [CISCN2019 华北赛区 Day2 Web1]Hack World的更多相关文章

  1. 刷题记录:[CISCN2019 华北赛区 Day2 Web1]Hack World

    目录 刷题记录:[CISCN2019 华北赛区 Day2 Web1]Hack World 一.前言 二.正文 1.解题过程 2.解题方法 刷题记录:[CISCN2019 华北赛区 Day2 Web1] ...

  2. BUUCTF | [CISCN2019 华北赛区 Day2 Web1]Hack World

    id=0 id=1 id=2 id=3 发现结果不一样,尝试 : ">4","=4","<4" : 在自己的环境下验证一下: 爆 ...

  3. [CISCN2019 华北赛区 Day2 Web1]Hack World

    知识点:题目已经告知列名和表明为flag,接下来利用ascii和substr函数即可进行bool盲注 eg: id=(ascii(substr((select(flag)from(flag)),1,1 ...

  4. [CISCN2019 华北赛区 Day2 Web1]Hack World 1详解

    打开题目, 我们开始尝试注入, 输入0回显Error Occured When Fetch Result. 输入1回显Hello, glzjin wants a girlfriend. 输入2回显Do ...

  5. [CISCN2019 华北赛区 Day2 Web1]Hack World(二分法写布尔注入脚本)

    记一道布尔注入的题,存在过滤字符. 从题目看应该是一道注入题.提示存在flag表flag列. 输入1和2的返回结果不一样,可能是布尔注入. 简单用万能密码尝试了一下.提示SQL Injection C ...

  6. 刷题[CISCN2019 华北赛区 Day2 Web1]Hack World

    解题思路 打开发现是很简单的页面,告诉了表名和列名,只需知道字段即可 尝试一下,输入1,2都有内容,后面无内容.输入1'让他报错,发现返回bool(false) 大概思路就是布尔型注入了,通过不断返回 ...

  7. 刷题记录:[CISCN2019 华北赛区 Day1 Web1]Dropbox

    目录 刷题记录:[CISCN2019 华北赛区 Day1 Web1]Dropbox 一.涉及知识点 1.任意文件下载 2.PHAR反序列化RCE 二.解题方法 刷题记录:[CISCN2019 华北赛区 ...

  8. PHAR伪协议&&[CISCN2019 华北赛区 Day1 Web1]Dropbox

    PHAR:// PHP文件操作允许使用各种URL协议去访问文件路径:如data://,php://,等等 include('php://filter/read=convert.base64-encod ...

  9. BUUCTF | [CISCN2019 华北赛区 Day1 Web1]Dropbox

    步骤: 1.运行这个: <?php class User { public $db; } class File { public $filename; } class FileList { pr ...

随机推荐

  1. .NET Core中创建和使用NuGet包

    在.NET Core的项目中,如果我们要在项目中引用其它DLL文件,不应该直接在项目引用中添加DLL文件(虽然在.NET Core项目中也可以这么做),建议是去直接下载DLL文件所属的NuGet包.这 ...

  2. Mysql性能优化:为什么你的count(*)这么慢?

    导读 在开发中一定会用到统计一张表的行数,比如一个交易系统,老板会让你每天生成一个报表,这些统计信息少不了 sql 中的count函数. 但是随着记录越来越多,查询的速度会越来越慢,为什么会这样呢?M ...

  3. [noip模拟赛]虫洞holes<SPFA>

    虫洞(holes.cpp/c/pas) [题目描述] N个虫洞,M条单向跃迁路径.从一个虫洞沿跃迁路径到另一个虫洞需要消耗一定量的燃料和1单位时间.虫洞有白洞和黑洞之分.设一条跃迁路径两端的虫洞质量差 ...

  4. ASP.NET Core技术研究-探秘Host主机启动过程

    当我们将原有ASP.NET 应用程序升级迁移到ASP.NET Core之后,我们发现代码工程中多了两个类Program类和Startup类. 接下来我们详细探秘一下通用主机Host的启动过程. 一.P ...

  5. MATLAB——元胞数组

    一. 1.元胞数组的创建 >> a={;ones(,),:} a = ] [2x3 ;ones(,),:} >> b=[{};{ones(,)},{:}] b = ] [2x3 ...

  6. .git/info/refs not valid: is this a git repository?

    今天用idea git提交的时候遇到了这个神奇的问题.git/info/refs not valid: is this a git repository? 看了很多网上的都不靠谱,最后自己乱点着找, ...

  7. HashMap源码与相关面试题

    一.哈希表 哈希表是一种可以快速定位得数据结构.哈希表可以做到平均查找.插入.删除时间是O(1),当然这是指不发生Hash碰撞得情况.而哈希表最大得缺陷就是哈希值得碰撞(collision). Has ...

  8. 数据库服务概述,构建MYSQL服务器,数据库基本管理,mysql数据类型,表结构的调整

                                                            数据库的发展前引 MySQL的起源与发展过程 最为著名.应用最广泛的开源数据库软件 最早 ...

  9. MySQL入门,第八部分,多表查询(二)

    嵌套查询 嵌套查询是指一个SELECT-FROM-WHERE查询块嵌入在另一个SELECT-FROM-WHERE查询块的WHERE子句中的查询 注意: 只有当连接查询投影列的属性来自于一个关系表时才能 ...

  10. javascript 入门 之 bootstrap 第一个程序

    <table data-toggle="table"> <thead> <tr> <th>Item ID</th> &l ...