ํ‹ฐ์Šคํ† ๋ฆฌ ๋ทฐ

CHALLENGE

XSS Challenges 5-1

๐ŸŒง: 2020. 12. 7.

์ „ ๋‹จ๊ณ„์˜ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰์‹œ์ผœ ๋ณธ ๊ฒฐ๊ณผ ํŒ์—…์ฐฝ์„ ๋„์šฐ์ง€ ๋ชปํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ์ „ ๋‹จ๊ณ„๋“ค๊ณผ๋Š” ๋‹ค๋ฅด๊ฒŒ ์ž…๋ ฅ๋˜๋Š” ํผ์ด ์กด์žฌํ•˜์ง€ ์•Š๊ณ  DOM ๋ฐฉ์‹์˜ ํ˜•ํƒœ๋กœ URL ์ž…๋ ฅ์ฐฝ์— ์ฝ”๋“œ๋ฅผ ์‚ฝ์ž…ํ•จ์œผ๋กœ์จ ํŒ์—…์ฐฝ์„ ์‹คํ–‰์‹œํ‚ค๋„๋ก ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

 

ํŽ˜์ด์ง€ ์†Œ์Šค๋ฅผ ํ™•์ธํ•ด๋ณด๋‹ˆ <script> ํƒœ๊ทธ์•ˆ์— "a" ๋ณ€์ˆ˜๊ฐ€ ์กด์žฌํ•˜๋ฉฐ ์šฐ๋ฆฌ๊ฐ€ ์ž…๋ ฅํ•œ ๊ฐ’์ด ๊ทธ๋Œ€๋กœ ์‚ฝ์ž…๋˜์–ด ๋“ค์–ด๊ฐ€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฒ€์ฆํ•˜๋Š” ๊ตฌ๋ฌธ์€ "/" -> "\/" ํ˜•ํƒœ๋กœ ์น˜ํ™˜์‹œํ‚ค๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  <script> Input </script> ์Šคํฌ๋ฆฝํŠธ ํƒœ๊ทธ ์•ˆ์— ์ ์ ˆํ•œ ์ฝ”๋“œ๋ฅผ ์‚ฝ์ž…ํ•ด์•ผ๋งŒ ํŒ์—…์ฐฝ์ด ์‹คํ–‰๋˜๊ธฐ ๋•Œ๋ฌธ์— ์กฐ๊ธˆ์€ ๊ณ ๋ฏผํ•ด๋ณผ ํ•„์š”๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

 

ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

1. ;(์„ธ๋ฏธ์ฝœ๋ก )

2. ์ฃผ์„

 

์šฐ์„  javascript ์—์„œ ;(์„ธ๋ฏธ์ฝœ๋ก )์€ ๋ช…๋ น์ด ๋๋‚ฌ๋‹ค๋Š”๊ฒƒ์„ ๋ช…์‹œ์ ์œผ๋กœ ๊ตฌ๋ถ„ํ•ด์ค๋‹ˆ๋‹ค. ์ฆ‰ ์„ธ๋ฏธ์ฝœ๋ก  ์—†์ด a=''alert('guleum') ํ˜•ํƒœ๋กœ ์ž…๋ ฅ๋˜๋ฉด "a" ๋ผ๋Š” ๋ณ€์ˆ˜์™€ "alert" ๊ทธ๋ฆฌ๊ณ  ์ดํ›„์˜ ์ฝ”๋“œ๊ฐ€ ๊ตฌ๋ถ„๋˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ๋ฌธ๋ฒ• ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒ๋ฉ๋‹ˆ๋‹ค.

 

๋งŒ์ผ a='';alert('guleum'); ํ˜•์‹์œผ๋กœ ์ค‘๊ฐ„์— ์„ธ๋ฏธ์ฝœ๋ก ์„ ์‚ฝ์ž…ํ•˜์—ฌ ๊ฐ ๋ฌธ๋ฒ•์„ ๊ตฌ๋ถ„ํ•ด์ฃผ๊ฒŒ๋˜๋ฉด ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒ๋˜์ง€ ์•Š๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

 

๊ทธ๋‹ค์Œ ์ฃผ์„์ž…๋‹ˆ๋‹ค. a๋ผ๋Š” ๋ณ€์ˆ˜์— ์ฝ”๋“œ๋ฅผ ์‚ฝ์ž…ํ•˜๋ฉด ๋งจ๋งˆ์ง€๋ง‰ ๊ตฌ๋ฌธ์— '(์‹ฑ๊ธ€ ์ฟผํ„ฐ)๊ฐ€ ์ž๋™์œผ๋กœ ๋ถ™๊ฒŒ ๋˜์–ด ๋ฌธ๋ฒ•์ด ์ด์ƒํ•ด์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

 

์šฐ๋ฆฌ๋Š” ํŒ์—…์ฐฝ์„ ๋„์šฐ๊ธฐ ์œ„ํ•ด alert('guleum') ๊นŒ์ง€๋งŒ ์„ฑ๊ณต์ ์œผ๋กœ ์‹คํ–‰์‹œํ‚ค๋ฉด ๋ฉ๋‹ˆ๋‹ค. ์ฆ‰ ์ดํ›„์˜ ๊ตฌ๋ฌธ์€ ํ•„์š”๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์ฃผ์„์ฒ˜๋ฆฌ๋ฅผ ํ•ด์•ผ ๋ฉ๋‹ˆ๋‹ค

 

์ฃผ์„์ฒ˜๋ฆฌ

javascript : //(๋‹ค์ค‘ ์ฃผ์„)

html : <!--์ฃผ์„-->

 

javascript ์‹ ์ฃผ์„์„ ์‚ฌ์šฉํ•˜๊ธฐ์—๋Š” /(์Šฌ๋ž˜์‹œ)๋ฅผ -> \/ ํ˜•ํƒœ๋กœ ์น˜ํ™˜ํ•˜๊ธฐ ๋•Œ๋ฌธ์— html ์‹ ์ฃผ์„์„ ์‚ฌ์šฉํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

 

๊ตฌ๋ฒ„์ „์˜ ๊ฒฝ์šฐ html ์‹ ์ฃผ์„์„ ์‚ฌ์šฉํ•˜๋ฉด ์ œ๋Œ€๋กœ ์ธ์‹์„ ๋ชปํ–ˆ์ง€๋งŒ ์š”์ฆ˜์˜ ํ™˜๊ฒฝ์˜ ๊ฒฝ์šฐ html ์‹ ์ฝ”๋“œ๊ฐ€ javascript ์— ์‚ฝ์ž…๋˜์–ด๋„ ์ดํ•ดํ•˜๊ณ  ์‹คํ–‰์‹œ์ผœ์ฃผ๋Š”๋ฐ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

 

์„ฑ๊ณต์ ์œผ๋กœ ํŒ์—…์ฐฝ์„ ๋„์› ์Šต๋‹ˆ๋‹ค.

 

Exploit Code

';alert('guleum');<!--

'CHALLENGE' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[LOS] Darkknight ํ’€์ด(12)  (0) 2020.12.08
XSS Challenges 5-2  (0) 2020.12.08
XSS Challenges 4  (0) 2020.12.06
[LOS] Golem ํ’€์ด(11)  (0) 2020.12.06
[LOS] Skeleton ํ’€์ด(10)  (0) 2020.12.06
๊ณต์œ ํ•˜๊ธฐ ๋งํฌ
Comment