Web安全入門 ACCESS手工注入

2022-09-06 17:57:08 字數 1493 閱讀 1640

access手工注入一般步驟:

1.判斷注入點(自己編的))

觀察url中是否存在"?id=12"(這只是個例子,其實就是看url裡有沒有引數傳遞的語句)

進一步測試這是不是乙個注入點,在url後面附加乙個「and 1=1」,重新整理網頁,然後把「and 1=1」換成"and 1=2",再次重新整理網頁,如果第一次重新整理網頁沒有變化但第二次重新整理網頁發生變化則說明這是乙個注入點

2.判斷表名

知道這裡是乙個注入點之後就要進一步猜我們所需要的資料庫表名了,一般做滲透肯定對管理員的賬號密碼是最感興趣的,拿這個舉例,我們想知道資料庫中哪個表是存放這些資訊的,根據經驗來說,一般表名會為admin,manage,user,manage_user什麼的

然後測試一下:

用exists()函式判斷是否存在乙個名為manage的表

and exists(select * from manage)

執行之後網頁沒變化,說明這個表存在

3.判斷欄位名

和上乙個步驟差不多,只不過把字段查詢精確到使用者名稱和密碼上

and exists(select username,password from manage)

執行之後網頁沒變化,說明這兩個字段存在

4.爆出字段內容

a.在已經確定存放使用者名稱和密碼的位置的情況下,就要想辦法獲得使用者名稱和密碼具體數值了,這裡就要用到上篇文章說過的聯合查詢了,但是要進行聯合查詢必須滿足的條件是兩個表字段數相同,所以我們先要判斷字段數多少,我們可以用order by來判斷:

order by y(y為我們猜的字段數,我們可以通過二分法,從大往小猜)

b.當我們確定字段數之後我們就可以使用聯合查詢了(假如欄位數是6):

union select 1,2,3,4,5,6 from manage

做完這步之後,可能會發現,123456這串數字中網頁中只有兩到三個數字顯示出來了,這個時候我們就可以把相應的數字換成username和password,那麼使用者名稱和密碼對應的值就會爆出來了

d.一般我們得到的密碼的值都是經過加密的,大多數都是md5加密演算法, 所以還需要我們用其他工具對密碼進行解密

這就是我總結的大致access手工注入過程,手工注入access還是主要靠猜的,表名欄位名什麼的憑經驗,我這裡也總結一些常用的:

常見表名:

admin  user  adminuser  manage  manager  manage_user

常見欄位名:

賬號:name  username  user_name  admin  adminuser  admin_user  admin_usename  adminname

密碼:password  pass  usepass  user_pass  pwd  userpwd  adminpwd  admin_pwd

如果**開發者把管理員使用者名稱和密碼欄位名弄得很**,那屬實不好猜,我們可以用一些現成的sql注入工具,網上一搜有很多,我這裡就不說了,當然我個人認為,不要一味依賴工具,還是要學一下手工注入,掌握原理,還是有好處的

WEB安全入門

黑客通過輸入提交 特殊資料 特殊資料在資料流的每個層處理,如果某個層沒處理好,在輸出的時候,就會出現相應層的安全問題。精彩舉例 1.如果在作業系統層上沒處理好,比如linux的bash環境把 特殊資料 當做 指令執行時,就產生了 os命令執行的安全問題,這段 特殊資料 可能長得如下這般 rm rf ...

WEB安全入門建議

web入門文章一直想寫一篇,但是一直沒寫,也猶豫了很多,畢竟對於入門文章太多了,但是我還是想寫一篇,一篇非同尋常的入門到高階.可能很多人已經入門了,但是我還是想發表一下自己的看法,如果有錯誤還希望大佬指出 可能對於很多剛入門的朋友感到迷茫,或者經常學習學著就沒有方向,自己一直處於入門階段,我現在也一...

Web安全入門 sqlmap

列舉一下sqlmap簡單命令和相對應的功能 檢測注入點 sqlmap.py u 目標url 檢測有哪些資料庫 sqlmap.py u 目標url dbs 檢測當前使用的哪個資料庫 sqlmap.py u 目標url current db 檢測當前使用者 sqlmap.py u 目標url curre...