主頁 >  其他 > sqli-labs大詳解

sqli-labs大詳解

2021-10-20 07:37:17 其他


page1

Less-1 GET - Error based - Single quotes - String(基于錯誤的GET單引號字符型注入)

首先輸入引數?id=1,這時頁面正常顯示,并不報錯,

這時我們輸入?id=1‘時出現報錯,可以判斷它是單引號注入

常規注入,判斷欄位數,當我們order by10時,發生錯誤,然后我們用二分法判斷有幾個欄位(向上取整),

當我們到order by 3 時沒有報錯,這時候我們試試order by 4,發現報錯,說明只有三個欄位,

然后我們看回顯,用陳述句 union select 1,2,3發現顯示的還是用戶名和密碼,這就需要讓前面的陳述句報錯才可以將此陳述句注入進去,這時我們往1前面加一個-就可以報錯,從而執行我們注入的陳述句,發現2,3,可以回顯,

現在我們就可以進行注入了,但是如何獲取用戶名資料庫名等等呢,我總結了出來:

查看用戶名:union select 1,2,user()--+

查看資料庫名:union select 1,2,database()--+

查看資料庫版本: union select 1,2,version()--+

我們查看資料庫名,是security資料庫

然后我們就可以進行對security資料庫的查看了,

查看表:union select 1,2,group_concat(table_name) from information_schema.tables where table_schema='security'--+

查欄位:union select 1,2,group_concat(column_name) from information_schema.columns where table_schema=database()--+

查表中的資料:union select 1,2,group_concat(username,0x3a,password) from users--+

LESS2 GET - Error based - Intiger based (基于錯誤的GET整型注入)

根據報錯資訊我們可以知道為數字型注入,其余與第一題一致,

Less-3 GET - Error based - Single quotes with twist string (基于錯誤的GET單引號變形字符型注入)

根據報錯資訊我們發現它是字符型注入,且閉合方式為’)

當我們發現這樣寫時,就可以閉合,之后的與上面兩個一致,

http://127.0.0.1/sqli/Less-3/?id=-1') union select 1,2,3 --+

Less-4 GET - Error based - Double Quotes - String (基于錯誤的GET雙引號字符型注入)

當我們輸入單引號是,發現不報錯,雙引號時報錯,根據報錯資訊我們可以推斷是字符型注入,閉合方式為”),

當我們發現這樣寫時,就可以閉合,之后的與上面兩個一致,

http://127.0.0.1/sqli/Less-4/?id=-1") union select 1,2,3 --+

Less-5 GET - Double Injection - Single Quotes - String (雙注入GET單引號字符型注入)

在這一關我們會發現無論id值如何變化,永遠顯示的都是you are in,顯然我們不能采用聯合查詢的方法,因為沒有回顯,看到這里,我們就可以用left函式來嘗試一下

http://127.0.0.1/sqli/Less-5/?id=1' and left((select database()),1)='a'--+

這里的意思是如果第一個字符是a的話就證明正確,就會回傳you are in

很明顯沒有回傳,第一個字母不是a,因為我們已經知道了是security,我們試試s

http://127.0.0.1/sqli/Less-5/?id=1' and left((select database()),1)='s'--+

s正確,回傳了you are in,然后我們更改1為2,因為第一位已經確定了是s,就來確定第二位

以此類推,就能得到我們想要的資料庫名,但是這種方法顯然特別繁瑣,這時候就要用到我們的burp暴力破解了,

首先用burp抓包,發送到破解模塊

設定暴力破解

在爆破出來的資料中我們發現s的長度不同,下面也正常回傳了you are in,說明第一位為s

然后我們猜解第二位,與上面只有這里不同,下面已經標記,以此類推

Less-6 GET - Double Injection - Double Quotes - String (雙注入GET雙引號字符型注入)

當我們輸入單引號是,發現不報錯,雙引號時報錯,根據報錯資訊我們可以推斷是字符型注入,閉合方式為”,

剩余的與第五關一致,

Less-7 GET - Dump into outfile - String (匯出檔案GET字符型注入)

在我們準備閉合陳述句是,發現到了'))時可以閉合

之后的就跟之前的相同了,

Less-8 GET - Blind - Boolian Based - Single Quotes (布爾型單引號GET盲注)

當我們試用‘時,它閉合

沒有回顯,我們可以試試盲注

延遲了5s,且第一個字符是s,

如果試用其他字符,可以看到有明顯差別

也可以用ascii碼來查找

http://127.0.0.1/sqli-labs/Less-8/?id=1' and if(ascii(substr(database(),1,1))>1,sleep(5),sleep(1)) --+

Less-9 GET - Blind - Time based. - Single Quotes (基于時間的GET單引號盲注)

我們查看原始碼,發現是單引號閉合

我們試試時間盲注 這樣仍然可行,其余同less5

Less-10 GET - Blind - Time based - double quotes (基于時間的雙引號盲注)

查看原始碼,閉合方式為“

其余同less9.

Less-11 POST - Error Based - Single quotes- String (基于錯誤的POST型單引號字符型注入)

嘗試用admin登錄,發現回顯

post:

發現order by2可以 3不可以

我們查看回顯,發現回顯1,2

接下來我們正常查詢即可

這樣就可以查出自己想要的資料了

Less-12 POST - Error Based - Double quotes- String-with twist (基于錯誤的雙引號POST型字符型變形的注入)

在我們嘗試找出閉合是發現其閉合方式為“)

在對其進行post注入時改一下閉合方式即可,其余同less11

Less-13 POST - Double Injection - Single quotes- String -twist (POST單引號變形雙注入)

當我們加上’是發現報錯,根據報錯提示我們發現閉合形式為‘)

在我們登錄成功后發現沒有回顯

直接基于時間的盲注即可,同1-10關,只是在burp里面修改即可

Less-14 POST - Double Injection - Single quotes- String -twist (POST單引號變形雙注入)

他沒有任何回顯,就只能盲注了,

less-15 POST - Blind- Boolian/time Based - Single quotes (基于bool型/時間延遲單引號POST型盲注)

查看原始碼我們發現他是’閉合

我們使用admin and sleep(10)#進行盲注,然后用if,其余同上,

Less-16 POST - Blind- Boolian/Time Based - Double quotes (基于bool型/時間延遲的雙引號POST型盲注)

當測驗到admin“)#時登錄成功,閉合方式為”),依舊是進行布爾盲注和時間盲注

Less-17 POST - Update Query- Error Based - String (基于錯誤的更新查詢POST注入)

我們可以看到用戶名被check_input包裹了,而passwd沒有

這是它的檢查函式,傳入的值只會檢查前15位

Less-18 POST - Header Injection - Uagent field - Error based (基于錯誤的用戶代理,頭部POST注入)

我們嘗試直接burp,在我們burp并且登錄成功后,發現UA可以注入并且回顯

但是沒有我們想要的東西,嘗試報錯注入后就可以得到我們想要的東西

Less-19 POST - Header Injection - Referer field - Error based (基于頭部的Referer POST報錯注入)

這里和上面比較相似,只是在referer處的回顯,查看界面,我們發現它將ip和referer進行了輸出

輸入單引號,發生了報錯

我們使用報錯注入:1' and extractvalue(1,concat(0x7e,(database()),0x7e)) and '

這樣就能拿到我們所需要的資料

Less-20 POST - Cookie injections - Uagent field - Error based (基于錯誤的cookie頭部POST注入)

在我們登錄成功后,發現回傳了很多資料

這里有一個按鈕,發現可以點擊delete your cookie,所以用的使我們的cookie進行了資料庫的查詢,所以我們應該在這里入手,

輸入單引號,發生報錯

我們正常進行,輸入order by 3發現可以,4不可以

我沒讓查詢失敗,查看1,2,3的位置

然后就跟正常查詢一樣即可

page2

Less-21 Cookie Injection- Error Based- complex - string

查看原始碼我們發現這里的cookie使用了base64的加密,用')閉合

給大家分享一個解密網站:在線加密解密 (oschina.net)

在我們進行注入時,要將代碼進行加密,否則會報錯,舉例如下

在進行注入時就要用base64的進行注入了

這里成功回顯,接下來就是正常注入了,只不過需要用base64加密一下,

Less-22 Cookie Injection- Error Based- Double Quotes - string (基于錯誤的雙引號字符型Cookie注入)

根據原始碼我們發現使用的是雙引號閉合

接下來就跟less21一樣了,只不過閉合方式變成了“

明文:-admin" union select 1,2,database()#

base64:LWFkbWluIiB1bmlvbiBzZWxlY3QgMSwyLGRhdGFiYXNlKCkj

Less-23 GET - Error based - strip comments (基于錯誤的,過濾注釋的GET型)

經過我的網路查詢,我發現這關可以將聯合陳述句直接放入id中進行查詢

http://127.0.0.1/sqli/Less-23/?id='union select 1,2,database()'

這樣可以直接將我們想要的東西給查詢出來,剩下的就是把查詢陳述句放入id里面即可,

例如:查表:http://127.0.0.1/sqli/Less-23/?id=?id=' union select 1,2,group_concat(table_name) from information_schema.tables where table_schema=database() or '1'='

Less - 24 Second Degree Injections Real treat -Store Injections (二次注入)

這里是個二次注入

其實因為我們已經知道了后臺資料庫中有admin用戶名,所以我們注冊一個admin'#,密碼設定為123456.

然后登錄我們注冊的賬號

然后把admin'#的密碼改為123 這時我們就修改了admin的密碼,

Less-25 Trick with OR & AND (過濾了or和and)

查看原始碼,單引號包裹

這里說過濾了我們所有的or和and

那么我們就可以進行雙寫,這里or雙寫但是and沒有,那我們試試把and也雙寫,

雙寫and后

Less-25a Trick with OR & AND Blind (過濾了or和and的盲注)

查看原始碼,不需要單引號包裹

也是雙寫or和and,其余同上,

Less-26 Trick with comments and space (過濾了注釋和空格的注入)

查看原始碼,是單引號閉合

這里我們發現他將空格,and都過濾了,and可以雙寫,那么空格怎么辦,

我們可以用url編碼進行繞過

%09 Tab鍵(水平)
%0a 新建一行
%0c 新的一頁
%0d return 鍵
%0b Tab鍵(垂直)
%a0 空格
() 繞過

我們嘗試使用報錯注入:

這樣就注入成功了,

less 26a GET - Blind Based - All your SPACES and COMMENTS belong to us(過濾了空格和注釋的盲注)

查看原始碼我們發現閉合方式為')

直接盲注就可以,其余同上一關,

less 27 GET - Error Based- All your UNION & SELECT belong to us (過濾了union和select的)

這一關過濾了union和select,我們用大小寫繞過即可

經過測驗我們發現%0A可以當做括號

成功回顯

less 27a GET - Blind Based- All your UNION & SELECT belong to us

這里和上一關大致相同,只是閉合方式不一樣,經過測驗,我們發現雙引號可以閉合

less 28 GET - Error Based- All your UNION & SELECT belong to us String-Single quote with parenthesis(基于錯誤的,有括號的單引號字符型,過濾了union和select等的注入)

這關和less25有異曲同工之妙,只不過25關是雙寫or和and,這里雙寫union和select

雙寫繞過即可,

less 28a GET - Bind Based- All your UNION & SELECT belong to us String-Single quote with parenthesis基于盲注的,有括號的單引號字符型,過濾了union和select等的注入

這關與上一關一樣,直接雙寫就可以,

Less-29 基于WAF的一個錯誤

waf服務器(tomcat)只決議重復引數里面的前者,而真正的web服務器(Apache)只決議重復引數里面的后者,我們可以傳入兩個id引數,前者合法而后者為我們想注入的內容

我們的后端是apache,那么我們只要將引數放在后面即可,

Less-30 Get-Blind Havaing with WAF

這里與上一關差不多,只不過閉合方式變成了雙引號,

Less-31 Protection with WAF

與上述一致,閉合方式為"),

Less-32 Bypass addslashes()

check_addslashes函式把\\ 單引號 雙引號都進行過濾轉義

明顯的編碼gbk 寬位元組注入

Less-33 Bypass addslashes()

32關函式:

33關函式:

這關與上一關一致,只不過是換成了addslashes,

  • addslashes() 函式
    函式回傳在預定義字符之前添加反斜杠的字串,
    單引號(’)
    雙引號(")
    反斜杠(\)
    NULL

Less-34 Bypass Add SLASHES

這里需要抓包注入,其余同上,

Less-35 why care for addslashes()

id沒有被單引號括起來所以addslashes起不到作用,正常注入即可

Less-36 Bypass MySQL Real Escape String

在我們進行測驗后發現有轉義,寬位元組注入,

直接注入:http://127.0.0.1/sqli/Less-36/?id=-1%df' union select 1,2,3--+

Less-37- MySQL_real_escape_string

這一關用post登錄而已,用burp抓包,其余同less34

page-3

Less-38 stacked Query

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/325464.html

標籤:其他

上一篇:內網滲透—判斷當前主機是否處于域環境中

下一篇:MS08067 “安全練兵場”戰術空襲~

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 網閘典型架構簡述

    網閘架構一般分為兩種:三主機的三系統架構網閘和雙主機的2+1架構網閘。 三主機架構分別為內端機、外端機和仲裁機。三機無論從軟體和硬體上均各自獨立。首先從硬體上來看,三機都用各自獨立的主板、記憶體及存盤設備。從軟體上來看,三機有各自獨立的作業系統。這樣能達到完全的三機獨立。對于“2+1”系統,“2”分為 ......

    uj5u.com 2020-09-10 02:00:44 more
  • 如何從xshell上傳檔案到centos linux虛擬機里

    如何從xshell上傳檔案到centos linux虛擬機里及:虛擬機CentOs下執行 yum -y install lrzsz命令,出現錯誤:鏡像無法找到軟體包 前言 一、安裝lrzsz步驟 二、上傳檔案 三、遇到的問題及解決方案 總結 前言 提示:其實很簡單,往虛擬機上安裝一個上傳檔案的工具 ......

    uj5u.com 2020-09-10 02:00:47 more
  • 一、SQLMAP入門

    一、SQLMAP入門 1、判斷是否存在注入 sqlmap.py -u 網址/id=1 id=1不可缺少。當注入點后面的引數大于兩個時。需要加雙引號, sqlmap.py -u "網址/id=1&uid=1" 2、判斷文本中的請求是否存在注入 從文本中加載http請求,SQLMAP可以從一個文本檔案中 ......

    uj5u.com 2020-09-10 02:00:50 more
  • Metasploit 簡單使用教程

    metasploit 簡單使用教程 浩先生, 2020-08-28 16:18:25 分類專欄: kail 網路安全 linux 文章標簽: linux資訊安全 編輯 著作權 metasploit 使用教程 前言 一、Metasploit是什么? 二、準備作業 三、具體步驟 前言 Msfconsole ......

    uj5u.com 2020-09-10 02:00:53 more
  • 游戲逆向之驅動層與用戶層通訊

    驅動層代碼: #pragma once #include <ntifs.h> #define add_code CTL_CODE(FILE_DEVICE_UNKNOWN,0x800,METHOD_BUFFERED,FILE_ANY_ACCESS) /* 更多游戲逆向視頻www.yxfzedu.com ......

    uj5u.com 2020-09-10 02:00:56 more
  • 北斗電力時鐘(北斗授時服務器)讓網路資料更精準

    北斗電力時鐘(北斗授時服務器)讓網路資料更精準 北斗電力時鐘(北斗授時服務器)讓網路資料更精準 京準電子科技官微——ahjzsz 近幾年,資訊技術的得了快速發展,互聯網在逐漸普及,其在人們生活和生產中都得到了廣泛應用,并且取得了不錯的應用效果。計算機網路資訊在電力系統中的應用,一方面使電力系統的運行 ......

    uj5u.com 2020-09-10 02:01:03 more
  • 【CTF】CTFHub 技能樹 彩蛋 writeup

    ?碎碎念 CTFHub:https://www.ctfhub.com/ 筆者入門CTF時時剛開始刷的是bugku的舊平臺,后來才有了CTFHub。 感覺不論是網頁UI設計,還是題目質量,賽事跟蹤,工具軟體都做得很不錯。 而且因為獨到的金幣制度的確讓人有一種想去刷題賺金幣的感覺。 個人還是非常喜歡這個 ......

    uj5u.com 2020-09-10 02:04:05 more
  • 02windows基礎操作

    我學到了一下幾點 Windows系統目錄結構與滲透的作用 常見Windows的服務詳解 Windows埠詳解 常用的Windows注冊表詳解 hacker DOS命令詳解(net user / type /md /rd/ dir /cd /net use copy、批處理 等) 利用dos命令制作 ......

    uj5u.com 2020-09-10 02:04:18 more
  • 03.Linux基礎操作

    我學到了以下幾點 01Linux系統介紹02系統安裝,密碼啊破解03Linux常用命令04LAMP 01LINUX windows: win03 8 12 16 19 配置不繁瑣 Linux:redhat,centos(紅帽社區版),Ubuntu server,suse unix:金融機構,證券,銀 ......

    uj5u.com 2020-09-10 02:04:30 more
  • 05HTML

    01HTML介紹 02頭部標簽講解03基礎標簽講解04表單標簽講解 HTML前段語言 js1.了解代碼2.根據代碼 懂得挖掘漏洞 (POST注入/XSS漏洞上傳)3.黑帽seo 白帽seo 客戶網站被黑帽植入劫持代碼如何處理4.熟悉html表單 <html><head><title>TDK標題,描述 ......

    uj5u.com 2020-09-10 02:04:36 more
最新发布
  • 2023年最新微信小程式抓包教程

    01 開門見山 隔一個月發一篇文章,不過分。 首先回顧一下《微信系結手機號資料庫被脫庫事件》,我也是第一時間得知了這個訊息,然后跟蹤了整件事情的經過。下面是這起事件的相關截圖以及近日流出的一萬條資料樣本: 個人認為這件事也沒什么,還不如關注一下之前45億快遞資料查詢渠道疑似在近日復活的訊息。 訊息是 ......

    uj5u.com 2023-04-20 08:48:24 more
  • web3 產品介紹:metamask 錢包 使用最多的瀏覽器插件錢包

    Metamask錢包是一種基于區塊鏈技術的數字貨幣錢包,它允許用戶在安全、便捷的環境下管理自己的加密資產。Metamask錢包是以太坊生態系統中最流行的錢包之一,它具有易于使用、安全性高和功能強大等優點。 本文將詳細介紹Metamask錢包的功能和使用方法。 一、 Metamask錢包的功能 數字資 ......

    uj5u.com 2023-04-20 08:47:46 more
  • vulnhub_Earth

    前言 靶機地址->>>vulnhub_Earth 攻擊機ip:192.168.20.121 靶機ip:192.168.20.122 參考文章 https://www.cnblogs.com/Jing-X/archive/2022/04/03/16097695.html https://www.cnb ......

    uj5u.com 2023-04-20 07:46:20 more
  • 從4k到42k,軟體測驗工程師的漲薪史,給我看哭了

    清明節一過,盲猜大家已經無心上班,在數著日子準備過五一,但一想到銀行卡里的余額……瞬間心情就不美麗了。最近,2023年高校畢業生就業調查顯示,本科畢業月平均起薪為5825元。調查一出,便有很多同學表示自己又被平均了。看著這一資料,不免讓人想到前不久中國青年報的一項調查:近六成大學生認為畢業10年內會 ......

    uj5u.com 2023-04-20 07:44:00 more
  • 最新版本 Stable Diffusion 開源 AI 繪畫工具之中文自動提詞篇

    🎈 標簽生成器 由于輸入正向提示詞 prompt 和反向提示詞 negative prompt 都是使用英文,所以對學習母語的我們非常不友好 使用網址:https://tinygeeker.github.io/p/ai-prompt-generator 這個網址是為了讓大家在使用 AI 繪畫的時候 ......

    uj5u.com 2023-04-20 07:43:36 more
  • 漫談前端自動化測驗演進之路及測驗工具分析

    隨著前端技術的不斷發展和應用程式的日益復雜,前端自動化測驗也在不斷演進。隨著 Web 應用程式變得越來越復雜,自動化測驗的需求也越來越高。如今,自動化測驗已經成為 Web 應用程式開發程序中不可或缺的一部分,它們可以幫助開發人員更快地發現和修復錯誤,提高應用程式的性能和可靠性。 ......

    uj5u.com 2023-04-20 07:43:16 more
  • CANN開發實踐:4個DVPP記憶體問題的典型案例解讀

    摘要:由于DVPP媒體資料處理功能對存放輸入、輸出資料的記憶體有更高的要求(例如,記憶體首地址128位元組對齊),因此需呼叫專用的記憶體申請介面,那么本期就分享幾個關于DVPP記憶體問題的典型案例,并給出原因分析及解決方法。 本文分享自華為云社區《FAQ_DVPP記憶體問題案例》,作者:昇騰CANN。 DVPP ......

    uj5u.com 2023-04-20 07:43:03 more
  • msf學習

    msf學習 以kali自帶的msf為例 一、msf核心模塊與功能 msf模塊都放在/usr/share/metasploit-framework/modules目錄下 1、auxiliary 輔助模塊,輔助滲透(埠掃描、登錄密碼爆破、漏洞驗證等) 2、encoders 編碼器模塊,主要包含各種編碼 ......

    uj5u.com 2023-04-20 07:42:59 more
  • Halcon軟體安裝與界面簡介

    1. 下載Halcon17版本到到本地 2. 雙擊安裝包后 3. 步驟如下 1.2 Halcon軟體安裝 界面分為四大塊 1. Halcon的五個助手 1) 影像采集助手:與相機連接,設定相機引數,采集影像 2) 標定助手:九點標定或是其它的標定,生成標定檔案及內參外參,可以將像素單位轉換為長度單位 ......

    uj5u.com 2023-04-20 07:42:17 more
  • 在MacOS下使用Unity3D開發游戲

    第一次發博客,先發一下我的游戲開發環境吧。 去年2月份買了一臺MacBookPro2021 M1pro(以下簡稱mbp),這一年來一直在用mbp開發游戲。我大致分享一下我的開發工具以及使用體驗。 1、Unity 官網鏈接: https://unity.cn/releases 我一般使用的Apple ......

    uj5u.com 2023-04-20 07:40:19 more