如图所示,sql注入

一、数字型注入

既然是post那我们拿burp抓一下包

id=2,我们改一下sql最常用的语句2 or 1=1发现注入成功

二、字符型注入

直接上语句1‘ or 1=1 #

出来了,下一个受害者

三、搜索型注入

发现他会匹配出现的所有username

又是正常的注入语句,并没有waf,依旧可以注入出来

四、xx型注入

这次直接上发现错误,说明这次有了一定的防御

结果发现他只是换了一种闭合方式,还是没有waf进行防御

五、insert/update注入

注册了用户名为zerben密码为123的账号

进入后发现

发现不是很行,insert注入肯定是在注册时候进行的,再次尝试,发现其注册并无过滤,直接奥里给,z' or updatexml(1,concat(0x7e,database()),0) or'

注出其数据库为pikachu

update注入在登陆后点击修改个人信息,无论修改哪个都一样,均无过滤

payload相同,也是直接注出其数据库

六、delete注入

既然是delete注入那就肯定在删除那里。先随便留言一下

删除后发现无提示直接删除,开启burp抓包

在url上改GET /pikachu/vul/sqli/sqli_del.php?id=57+or+updatexml(1,concat(0x7e,dabase()),0)

的确找到了pikachu的数据库但有些小问题,但语句是正确的。

六、http header 注入

根据提示进入后台

用burp抓包,根据名字测试http头注入,发现有注入点

用之前的爆数据库的payload,发现

发现爆出成功

八、盲注boolian

发现只能存在kobe' and 1=1 #连or 都会报错

于是利用and来构造payload

kobe' and ascii(substr(database(),1,1))=112 #

来一个个进行测试,爆出database

不对的话就会出现用户名不存在,正确的话就会出现用户正确信息,可采用二分法来减少盲注次数

九、盲注time

根据上题经验

发现其存在时间盲注,只要kobe存在就会执行后面的响应五秒延迟

根据这个在加上测试

payload: kobe' and if((substr(database(),1,1))='p',sleep(4),null) #

此时412ms就返回结果,说明数据库名第一位是p
将p改为a,则1ms返回结果
说明数据库名第一位是p

WEB攻击与防御技术 pikachu——sql注入的更多相关文章

  1. 常见【十种】WEB攻击及防御技术总结

    最近参加了一个WEB安全培训,感觉WEB攻击跟防御都是挺有意思的.以下总结比较简短,仅供观赏哈. 一.XSS攻击 [介绍] xss攻击是跨站脚本攻击,例如在表单中提交含有可执行的javascript的 ...

  2. web攻击与防御技术--SQL注入

    sql注入是WEB安全中比较重要而复杂的一个东西.而且危害性比较大. 一般来讲SQL注入的话首先要识别注入点.一个是看能不能注入另外一个是看是什么类型的注入比如说字符,数字,搜索(?)等等 GET.P ...

  3. web攻击之零:WEB攻击及防御技术汇总

    一.XSS攻击 [介绍] xss攻击是跨站脚本攻击,例如在表单中提交含有可执行的javascript的内容文本,如果服务器端没有过滤或转义这些脚本,而这些脚本由通过内容的形式发布到了页面上,这个时候如 ...

  4. web攻击与防御技术-平台搭建与暴力破解

    平台搭建是首先安装xampp并把pikachu的压缩文件解压在HTdocs下 然后 点击后显示 安装成功 首先随便输入一些东西 然后用burpsuite抓包 对username和password字段进 ...

  5. web攻击之八:溢出攻击(nginx服务器防sql注入/溢出攻击/spam及禁User-agents)

    一.什么是溢出攻击 首先, 溢出,通俗的讲就是意外数据的重新写入,就像装满了水的水桶,继续装水就会溢出,而溢出攻击就是,攻击者可以控制溢出的代码,如果程序的对象是内核级别的,如dll.sys文件等,就 ...

  6. Web安全相关(五):SQL注入(SQL Injection)

    简介 SQL注入攻击指的是通过构建特殊的输入作为参数传入Web应用程序,而这些输入大都是SQL语法里的一些组合,通过执行SQL语句进而执行攻击者所要的操作,其主要原因是程序没有细致地过滤用户输入的数据 ...

  7. WEB安全:XSS漏洞与SQL注入漏洞介绍及解决方案(转)

    对web安全方面的知识非常薄弱,这篇文章把Xss跨站攻击和sql注入的相关知识整理了下,希望大家多多提意见. 对于防止sql注入发生,我只用过简单拼接字符串的注入及参数化查询,可以说没什么好经验,为避 ...

  8. WEB安全:XSS漏洞与SQL注入漏洞介绍及解决方案

    对web安全方面的知识非常薄弱,这篇文章把Xss跨站攻击和sql注入的相关知识整理了下,希望大家多多提意见. 对于防止sql注入发生,我只用过简单拼接字符串的注入及参数化查询,可以说没什么好经验,为避 ...

  9. web攻击和防御措施

    1.SQL注入:参照下面的链接 http://www.cnblogs.com/chenhaoyu/p/8758888.html 2.跨网站脚本攻击(Cross Site Scripting, XSS) ...

  10. Web安全相关(五):SQL注入(SQL Injection)

    简介 SQL注入攻击指的是通过构建特殊的输入作为参数传入Web应用程序,而这些输入大都是SQL语法里的一些组合,通过执行SQL语句进而执行攻击者所要的操作,其主要原因是程序没有细致地过滤用户输入的数据 ...

随机推荐

  1. Android使用volley发送带参数的post请求

    用参数方式可以解决E/Volley: [777] BasicNetwork.performRequest: Unexpected response code 500 for XXXXX 1.Strin ...

  2. 若依分离版本+Nginx+docker+jenkins 部署

    准备: jenkins node.js 若依前后分离 docker 最终访问地址: 服务端api地址:192.168.66.74:8086 前端页面地址:192.168.66.61:7001 jenk ...

  3. 直播带货源码,flutter 顶部滚动栏+页面

    直播带货源码,flutter 顶部滚动栏+页面 tabPage.dart import 'package:flutter/cupertino.dart';import 'package:flutter ...

  4. vue3文档学习

    1.vue的核心功能 1.声明式渲染2.响应性: vue会自动跟踪JavaScript状态并在其发生变化时响应式的更新DOM. 2.渐进式框架 根据不同的需求场景,可以用不同的方式使用vue: 1.无 ...

  5. 关于filter_input函数

    PHP: filter_input <?php $search_html = filter_input(INPUT_GET, 'search', FILTER_SANITIZE_SPECIAL_ ...

  6. C# 当页面有很多选择条件时的处理方式

    如下图,用户可能输入很多条件 在后端的处理方式: 使用键值对 private Dictionary<string, string> CreatSearchPara() { Dictiona ...

  7. SSH远程服务器时报错 /bin/bash : Permission denied

    SSH远程服务器时报错 /bin/bash : Permission denied 今日接到用户那边的报障,/bin/bash : Permission denied报错,用户使用的是具有sudo权限 ...

  8. vue页面点击按钮增加和删除标签

    1.在data()里定义一个空数组: conditions:[], 2.给数组一个容器,并且遍历数组 <div v-for="item in conditions">& ...

  9. sos 扩展命令文档

    https://learn.microsoft.com/zh-cn/dotnet/framework/tools/sos-dll-sos-debugging-extension?redirectedf ...

  10. vscode个人常用插件

    1.个人常用插件记录一下,2020年7月6日