SWLUG/์›น ํ•ดํ‚น

[los.rubiya.kr] goblin

waterproof 2023. 10. 6. 23:37

https://los.rubiya.kr/

 

Lord of SQLInjection

 

los.rubiya.kr


๋ฌธ์ œ ํ’€์ด๋ฅผ ์œ„ํ•ด ์ฐธ๊ณ ํ•œ ๊ธ€: https://dohunny.tistory.com/7, https://power-girl0-0.tistory.com/233

 

 

 

๋ฌธ์ œ ํ™”๋ฉด.

 

 

 

 

์ฝ”๋“œ๋ฅผ ์‚ดํŽด๋ณด๋ฉด ์ฒซ ๋ฒˆ์งธ ์ฃผ์˜ํ•  ์ 

 

 

์ด ๋ถ€๋ถ„์ธ๋ฐ... 

 

preg_match ๋Š” PHP4, 5, 7์—์„œ ์ง€์›ํ•˜๋Š” ํ•จ์ˆ˜๋กœ, ์ •๊ทœํ‘œํ˜„์‹ ์ค‘ ํ•˜๋‚˜์ด๋ฉฐ ์ง€์ •ํ•œ ํŒจํ„ด์ด ์ผ์น˜ํ•˜๋ฉด, ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•ด์ฃผ๋Š” ํ•จ์ˆ˜์ด๋‹ค.

์ฆ‰, ํ•ด๋‹น ํŽ˜์ด์ง€๋Š” preg_matchํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•˜์—ฌ ' (์‹ฑ๊ธ€ ์ฟผํ„ฐ), " (๋”๋ธ” ์ฟผํ„ฐ), \(๋ฐฑ ์ฟผํ„ฐ) ๋ฅผ ํ•„ํ„ฐ๋งํ•˜๊ณ  ์žˆ๋‹ค.

 

๋’ท ๋ถ€๋ถ„์— No Quotes์˜ ์˜๋ฏธ๋Š” ์ฟผํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ๋ง๋ผ๋Š” ์˜๋ฏธ์ธ ๊ฒƒ์ด๋‹ค. 

 

 

๋‘ ๋ฒˆ ์งธ๋กœ ์ฃผ์˜ํ•  ์ 

 

 

 

์ด์ „ ๋ฌธ์ œ๋“ค์ฒ˜๋Ÿผ id๊ฐ€ admin์ผ ๋•Œ ๋ฌธ์ œ๋ฅผ ํ’€ ์ˆ˜ ์žˆ๋‹ค.

 

 

์„ธ ๋ฒˆ ์งธ ์ฃผ์˜ํ•  ์ 

 

 

id๋Š” guest๋กœ ์ง€์ •๋˜์–ด ์žˆ์œผ๋ฉฐ no๋งŒ ์ž…๋ ฅ๋ฐ›์•„ ์˜ค๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค.

๋”ฐ๋ผ์„œ, id๋ฅผ guest๊ฐ€ ์•„๋‹Œ admin์œผ๋กœ ๋„ฃ์–ด์•ผ ๋ฌธ์ œ๋ฅผ ํด๋ฆฌ์–ดํ•  ์ˆ˜ ์žˆ๋‹ค.

 

 

 

 

 

์šฐ์„  no=1์„ ๋Œ€์ž…ํ•ด๋ณด์•˜๋‹ค.

 

 

 

 hello guest๊ฐ€ ์ถœ๋ ฅ๋œ๋‹ค.

 

 

 

 

๋‹ค์Œ์œผ๋กœ, no=2์™€ no=0์„ ๋Œ€์ž…ํ•ด๋ณด์•˜๋‹ค.

 

 

์•„๋ฌด๊ฒƒ๋„ ์‹คํ–‰๋˜์ง€ ์•Š๋Š”๋‹ค.

 

 id='guest' and no=1 ์— ํ•ด๋‹นํ•˜๋Š” ๊ฐ’์ด guest๋ผ๋Š” ์‚ฌ์‹ค๋งŒ์„ ์•Œ์•„๋‚ผ ์ˆ˜ ์žˆ์—ˆ๋‹ค.

 

 

 

OR์„ ์ด์šฉํ•ด์„œ id ์— admin์„ ์ž…๋ ฅํ•ด๋ณด๋„๋ก ํ•˜์ž. 

 

OR ์—ฐ์‚ฐ์ž๋Š” ๋‘˜ ์ค‘ ํ•˜๋‚˜๋งŒ ์ฐธ์ด์–ด๋„ TRUE๋กœ ๋‚˜์˜จ๋‹ค.

 

ํ•ด๋‹น ์›๋ฆฌ๋ฅผ ์ด์šฉํ•˜๋ฉด id='guest' and no=0์„ ๊ฑฐ์ง“(False)์œผ๋กœ ๋งŒ๋“ค๊ณ  id=admin์€ ์ฐธ(True)์œผ๋กœ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค.

 

๊ทธ๋Ÿฐ๋ฐ ์ฟผํ„ฐ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋‹ค. 

 

์ด๋ฅผ ํ•ด๊ฒฐํ•  ๋ฐฉ๋ฒ•์€ ๋‘ ๊ฐ€์ง€๊ฐ€ ์žˆ๋‹ค.

 

 

 

 

์ฒซ ๋ฒˆ์งธ ๋ฐฉ๋ฒ•: char( )ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•˜์—ฌ ๊ฐ’์„ ๋„ฃ์–ด์ค€๋‹ค.

 

char() ํ•จ์ˆ˜๋Š” MySQL์—์„œ ์‚ฌ์šฉ๋˜๋Š” ํ•จ์ˆ˜๋กœ, ์ฃผ์–ด์ง„ ASCII ์ฝ”๋“œ์— ํ•ด๋‹นํ•˜๋Š” ๋ฌธ์ž๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

 

์˜ˆ๋ฅผ ๋“ค์–ด, char(65)์€ ASCII ์ฝ”๋“œ๊ฐ€ 65์ธ ๋Œ€๋ฌธ์ž 'A'๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

 

์ด ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ์ž…๋ ฅํ•  ๋•Œ, ์ž‘์€ ๋”ฐ์˜ดํ‘œ๋‚˜ ํฐ ๋”ฐ์˜ดํ‘œ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ ๋„ ๊ฐ€๋Šฅํ•˜๋‹ค.

 

์˜ˆ๋ฅผ ๋“ค์–ด, "Hello"๋ผ๋Š” ๋ฌธ์ž์—ด์„ char() ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ž…๋ ฅํ•˜๋ ค๋ฉด:

 

SELECT CHAR(72, 101, 108, 108, 111);

 

์œ„์˜ SQL ๋ฌธ์€ ASCII ์ฝ”๋“œ 72๋Š” 'H', 101์€ 'e', 108์€ 'l', 111์€ 'o'์— ํ•ด๋‹นํ•˜๋ฏ€๋กœ, ๊ฒฐ๊ณผ๋Š” "Hello"๊ฐ€ ๋œ๋‹ค.

 

์ด ๋ฐฉ๋ฒ•์€ ์ž‘์€ ๋”ฐ์˜ดํ‘œ๋‚˜ ํฐ ๋”ฐ์˜ดํ‘œ๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์–ด๋ ค์šด ์ƒํ™ฉ์—์„œ ๋ฌธ์ž์—ด์„ ์ƒ์„ฑํ•  ๋•Œ ์œ ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

 

 

 

๋ฌธ์ œ์— ์ด๋Ÿฌํ•œ char() ํ•จ์ˆ˜์˜ ํŠน์ง•์„ ์ ์šฉํ•˜์—ฌ

 

? no=0 or id=char(97,100,109,105,110)

 

์™€ ๊ฐ™์ด ์ž…๋ ฅํ•ด์ฃผ๋ฉด ๋ฌธ์ œ๊ฐ€ ํ’€๋ฆฐ๋‹ค.

 

 

๋‘ ๋ฒˆ์งธ ๋ฐฉ๋ฒ•: ๋ฌธ์ž์—ด์„ 16์ง„์ˆ˜๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ๋‚˜ํƒ€๋‚ด๊ธฐ.

 

 

"admin"์ด๋ผ๋Š” ๋ฌธ์ž์—ด์„ 16์ง„์ˆ˜๋กœ ๋‚˜ํƒ€๋‚ด๋ ค๋ฉด ๊ฐ ๋ฌธ์ž๋ฅผ 16์ง„์ˆ˜ ๊ฐ’์œผ๋กœ ๋ณ€ํ™˜ํ•ด์•ผ ํ•œ๋‹ค.

 

ASCII ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ ๋ฌธ์ž๋ฅผ 16์ง„์ˆ˜๋กœ ๋ณ€ํ™˜ํ•  ์ˆ˜ ์žˆ๋‹ค.

"admin" ๋ฌธ์ž์—ด์„ ASCII ์ฝ”๋“œ๋กœ ๋ณ€ํ™˜ํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค:

 

  • 'a'๋Š” ASCII ์ฝ”๋“œ๋กœ 97์ด๋ฉฐ, 16์ง„์ˆ˜๋กœ๋Š” 0x61
  • 'd'๋Š” ASCII ์ฝ”๋“œ๋กœ 100์ด๋ฉฐ, 16์ง„์ˆ˜๋กœ๋Š” 0x64
  • 'm'์€ ASCII ์ฝ”๋“œ๋กœ 109์ด๋ฉฐ, 16์ง„์ˆ˜๋กœ๋Š” 0x6D
  • 'i'๋Š” ASCII ์ฝ”๋“œ๋กœ 105์ด๋ฉฐ, 16์ง„์ˆ˜๋กœ๋Š” 0x69
  • 'n'์€ ASCII ์ฝ”๋“œ๋กœ 110์ด๋ฉฐ, 16์ง„์ˆ˜๋กœ๋Š” 0x6E

 

๋”ฐ๋ผ์„œ "admin"์„ 16์ง„์ˆ˜๋กœ ๋ณ€ํ™˜ํ•˜๋ฉด ๊ฐ ๋ฌธ์ž์˜ 16์ง„์ˆ˜ ๊ฐ’๋“ค์„ ์—ฐ๊ฒฐํ•˜์—ฌ "0x61646D696E"์ด ๋œ๋‹ค.

(์—ฌ๊ธฐ์„œ ๋งจ ์•ž์— "0x"๋Š” 16์ง„์ˆ˜๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ‘œ์‹œ)

์ด์ œ ์ด ๊ฐ’์„ ์‚ฌ์šฉํ•˜์—ฌ ํ”„๋กœ๊ทธ๋žจ์ด๋‚˜ ์‹œ์Šคํ…œ์—์„œ "admin"์„ ๋ฌธ์ž์—ด๋กœ ์ธ์‹ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

( 16์ง„์ˆ˜๋กœ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๋Š” ์‚ฌ์ดํŠธ -> https://www.percederberg.net/tools/text_converter.html )

 

? no=0 or id=0x61646D696E

 

 

 

 

'SWLUG > ์›น ํ•ดํ‚น' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[Dreamhack/๋“œ๋ฆผํ•ต] DOM XSS  (0) 2023.11.05
[los.rubiya.kr] orc  (1) 2023.10.07
[los.rubiya.kr] cobolt  (0) 2023.10.06
[LoS.Rubiya.kr] gremlin  (0) 2023.10.06
[Dreamhack/๋“œ๋ฆผํ•ต] simple_sqli  (0) 2023.10.06