it-swarm-eu.dev

Testování čistých adres URL s mapou sqlmap

Je možné otestovat zranitelnost SQL s použitím sqlmap s url, který používá mod rewrite (nebo něco podobného) k vyčištění URL?

Vím, jak otestovat své weby, které mají adresy URL, jako například: http://mysite.com/?id=1

Ale co moje weby, které mají čisté adresy URL, například: http://mysite.com/1

19
chadgh

Měli byste použít * ve vašem URI, vytvoření bodu (ů) injekce URI. Takže místo použití:

sqlmap.py -u "website.com/script/paramrewrited1/paramrewrited2"

použití:

sqlmap.py -u "website.com/script/paramrewrited1*/paramrewrited2*"

Další možnosti využití viz sqlmap wiki . Z této stránky:

místo injekce URI

Existují zvláštní případy, kdy je bod injekce uvnitř samotného URI. sqlmap neprovádí žádný automatický test proti cestám URI, pokud na ně není ručně poukázáno. Tyto injekční body musíte zadat v příkazovém řádku připojením hvězdičky (*) za každým bodem URI, který má sqlmap testovat a využívat SQL injekci.

To je zvláště užitečné, když je například používán modul mod_rewrite webového serveru Apache nebo jiné podobné technologie.

Příkladem platného příkazového řádku bude:

$ python sqlmap.py -u "http://targeturl/param1/value1*/param2/value2/"
24
dz.

Pokud rozumím vaší otázce, domnívám se, že sqlmap není navržen tak, aby se s touto situací vypořádal (kde webový server nedodržuje webové standardy pro reprezentaci parametrů požadavku). Takže si můžu představit několik možností:

  1. Vypnout přepisování URL. Dočasně vypnout přepisování parametrů požadavku na vašem webovém serveru (pokud existuje jednoduchý způsob, jak to udělat), abyste mohli spustit sqlmap.

  2. Zkuste POST požadavky. Ukázali jste, že váš webový server kóduje parametry požadavků pro požadavky GET nestandardním způsobem. Jak kóduje parametry požadavků POST požadavky? Pokud zprostředkuje webový server kódování parametrů požadavku standardnějším způsobem a pokud je každý požadavek přístupný prostřednictvím GET i POST (nesprávná konfigurace, ale běžná) jeden), můžete svůj server vyzkoušet odesláním POST požadavků namísto požadavků GET. Viz --data možnost sqlmap.

  3. Použijte jiný nástroj. Vyhledejte jiný nástroj, protože sqlmap se nezdá být navržen pro tento konkrétní případ.

  4. pravit sqlmap. sqlmap je otevřený zdroj. Mohli byste se ponořit do zdrojového kódu a rozšířit jej na podporu případu použití, který máte na mysli. (Možná byste se měli podívat na kód, který zpracovává -p možnost sqlmap.) Sakra, je to zdarma; musíte očekávat, že pokud máte neobvyklou situaci, možná to již neřeší, a možná budete muset udělat trochu práce sami. Pokud se vydáte touto cestou, vraťte se zpět komunitě darováním kódu správcům sqlmap.

3
D.W.