最近碰到一个MSSQL的注入,有一段时间没真正搞过注入了,就拿它找回一下手感。其实本身注入没什么特别的地方,就是带会话的SQL注入,有点简单的防护(用sqlmap秒之),然后就没然后了~~

之所以拿出来分享是后续考虑到脱库的效率性【本人只是秉着程序猿提高算法效率的思想去思考这个问题】

有注入,其实相当于一个数据库shell摆在你面前了,盲注应该不在这队列,要脱那就直接select了,但问题是通常网站只是显示一条数据,而非多条数据。如果是一个稍微大的库估计一条一条select都够呛。实际上是巨呛!!!对sqlmap,Pangolin,Havij估算了一下:

sqlmap:用dump一次只能拿到一条数据(普通dump,不知是否有其他高效的选项),快的话2条/s,假如一个100W的表,需要100 0000/2/3600 小时,各位感觉下

Pangolin:只能获得数据库,获得不了表名。而使用数据导出时未带有Cookie,结果导出失败

Havij:试了1.15和1.17版本,都未能获得数据库,没能绕过防护而失败告终

另想可以通过写个Python来搞定,POC通过抓sqlmap的包获得。其实说到底依然是访问一个URL,获得一条数据,添加多线程操作的话速度可能容易接收一点。

这其实有个小问题:MSSQL是没有Mysql的limit语句的,那如果通过准备定位获得某一行的数据呢?通过查找资料,提供一种解决方法:

select top 1 * from database.table where username not in (select top N * from database.table)

原理就是用where条件将top N行数据去除,再select

这种方法有个严重的问题:提交N多请求,容易在日志中被发现!!!

其实,说到脱库,最简单最快的方法就是将数据库备份到网站下进行下载最快。以前遇过一个站后台做了IP白名单,无法访问;shell也没有写/改/执行权限,没找到数据库连接字符串。

经过苦苦思考,最终用bcp搞定。

脱库是个体力活,真的

转载于:https://blog.51cto.com/terrying/1331412

MSSQL 注入鄙见相关推荐

  1. ASP+MSSQL注入工具 web版 beta 3 final release

    ASP+MSSQL注入工具 web版 beta 3 final release 2007-10-01 12:17:14 标签:ASP web MSSQL [推送到技术圈] 文章作者:MIKA[EST] ...

  2. MSSQL注入手工注入mssql提权

    mssql数据库 mssql数据库相比mysql数据库本质上的框架是差不多的,使用的增,删,改,查命令是互相通的,mysql中使用的函数在mssql中有些会起不到作用点. MSSQL数据库的基本知识 ...

  3. mssql注入和mysql注入_mssql手工注入

    mssql注入是针对于sql server数据库的 sql server数据库和mysql数据库是有所区别的,语句命令之类的可自行百度. 平台:i春秋 内容:mssql手工注入 找注入点 点击test ...

  4. ASPX+MSSQL注入

    MSSQL三个关键系统表: 1.master.dbo.sysdatabases系统表:该表位于master数据库中 关键字段:name:库的名字  dbid:库的id(dbid从1到5是系统库) 2. ...

  5. MSSQL注入语句总结

    目录: 基础语句 注入点权限判断 获取数据库 获取指定数据库中的表的列的数据库 判断数据库级别的角色 SQL特性: 关于mssql的注入语句,跟mysql也差不了多少,都是从information_s ...

  6. mssql注入和mysql注入_MSSQL注入代码

    ■获取数据库名 and db_name()=0 and db_name(0)=0 and db_name(__i__)=0 and quotename(db_name(__i__))=0 ■获取用户名 ...

  7. SQL注入之Mssql注入及原理

    Mssql简介 MsSQL是指微软的SQLServer数据库服务器,它是一个数据库平台,提供数据库的从服务器到终端的完整的解决方案,其中数据库服务器部分,是一个数据库管理系统,用于建立.使用和维护数据 ...

  8. 软件工程第三次作业——软件质量保证鄙见

    阅读教材第14章及课后参考文献  写一篇关于软件质量保障的博文 参考文献: 两种不同的声音(1)https://coolshell.cn/articles/6994.html (2)https://w ...

  9. 谈谈自己关于阅读源码的一点鄙见

    起因是这样的,最近一个工作两年同事,用其他同事写好的一些控件,网络库的时候,总是问别人怎么调用,有几种调用方法,不只是一次两次是每次都这样,一个简单封装Dialog的调用都要问别人怎么用传什么参数,什 ...

最新文章

  1. 再不参与就晚了!!2020年结束前最后一波内测福利!人人有份!
  2. git fetch和git pull
  3. 实战:向GitHub提交代码时触发Jenkins自动构建
  4. nginx php默认首页,iis、apache、nginx设置默认首页index.html方法图解 电脑维修技术网...
  5. VTK:圆锥用法实战
  6. javascript包装对象
  7. 现在很多公司都在辞退年龄超过35岁以上的员工,原因到底为什么?
  8. error: 'NULL' was not declared in this scope
  9. [微信小程序] js变量名称写活
  10. WebForm读取指定的config文件的内容
  11. 他们为啥说我没有数据分析思维?
  12. oracle 11g表空间之最大最小
  13. #动态规划 LeetCode 120 三角形最小路径和
  14. 时间序列(二):时间序列平稳性检测
  15. PHP使用声网的页面录制、合流录制、单流录制
  16. Redis持久化之RDB(详解)
  17. 开放Centos7端口
  18. Unity 2D精灵分割图片注意事项
  19. 实战项目!用PHP实现的编程论坛网站
  20. java 压缩oop_JVM优化之压缩普通对象指针(CompressedOops)

热门文章

  1. PHP - AJAX 与 PHP
  2. 沟通的艺术——情绪:感觉、思考和沟通
  3. 解决C#界面假死问题
  4. 调试AKM4432 DAC驱动问题记录
  5. 2019最新前端薪资报告来啦!前端的工资到底有多高?其实真相是这样的......
  6. 炉石传说【一年记录】
  7. 向日葵的约定(歌词中日对译)
  8. html调用 另存为,【HTML】前台页面调出文件另存为对话框几种方法
  9. fastreport一些技巧
  10. Aria2 下载工具(转)