Business logic vulnerabilities

Business logic vulnerabilities

in

Business logic vulnerabilities

๐Ÿ”Ž What is Business logic vulnerabilities?


logic-flaws

๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง ์ทจ์•ฝ์ ์€ ๊ณต๊ฒฉ์ž๊ฐ€ ์˜๋„ํ•˜์ง€ ์•Š์€ ๋™์ž‘์„ ์œ ๋„ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„ค๊ณ„ ๋ฐ ๊ตฌํ˜„์˜ ๊ฒฐํ•จ์ž…๋‹ˆ๋‹ค.

Low-level logic flaw

๋ฐฑ์—”๋“œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์—์„œ ์ •์ˆ˜์— ํ—ˆ์šฉ๋œ ์ตœ๋Œ€๊ฐ’(2,147,483,647)์„ ์ดˆ๊ณผํ•˜์—ฌ ๊ฒฐ๊ณผ์ ์œผ๋กœ ๊ฐ€๋Šฅํ•œ ์ตœ์†Œ๊ฐ’(-2,147,483,647)๋กœ ๋ฃจํ”„๋ฐฑ ๋˜๋Š” ์ทจ์•ฝ์ ์ž…๋‹ˆ๋‹ค.

์žฅ๋ฐ”๊ตฌ๋‹ˆ์— ๋ฌผํ’ˆ์„ ๋‹ด์„ ์‹œ 99๊ฐœ๊นŒ์ง€์˜ ๊ฐฏ์ˆ˜๋งŒ ์ถ”๊ฐ€๊ฐ€ ๋ฉ๋‹ˆ๋‹ค.(100๊ฐœ ์ด์ƒ์‹œ ๊ฐฏ์ˆ˜ ์—๋Ÿฌ)

แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2021-11-15 แ„‹แ…ฉแ„’แ…ฎ 3 52 07

ํ•ด๋‹น ํŒจํ‚ท์„ ์ธํŠธ๋ฃจ๋”๋กœ ๋ณด๋‚ด ๋„ํŽ˜์ด๋กœ๋“œ๋กœ ์„ค์ •ํ•˜์—ฌ ๋ฌด์ œํ•œ์œผ๋กœ ๊ณ„์† ํŒจํ‚ท์„ ๋ณด๋ƒ…๋‹ˆ๋‹ค

แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2021-11-15 แ„‹แ…ฉแ„’แ…ฎ 3 52 25 แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2021-11-15 แ„‹แ…ฉแ„’แ…ฎ 3 53 05

ํŽ˜์ด์ง€๋ฅผ ์ƒˆ๋กœ๊ณ ์นจํ•˜๋ฉด์„œ ํ™•์ธํ•˜๋‹ค๋ณด๋ฉด Total ๊ฐ€๊ฒฉ์ด ํ—ˆ์šฉ๋œ ์ตœ๋Œ€๊ฐ’(2,147,483,647)์„ ์ดˆ๊ณผ์‹œ ๊ฐ€๊ฒฉ์ด -2,147,483,647๋กœ ๋ณ€๊ฒฝ๋˜๊ณ  ์Œ์ˆ˜์˜ ๊ฐ€๊ฒฉ์œผ๋กœ ๋ณ€๊ฒฝ์ด ๋ฉ๋‹ˆ๋‹ค.

แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2021-11-15 แ„‹แ…ฉแ„’แ…ฎ 3 53 27 ๊ฐ€๊ฒฉ์ด ์–‘์ˆ˜

แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2021-11-15 แ„‹แ…ฉแ„’แ…ฎ 3 53 49 ๊ฐ€๊ฒฉ์ด ์Œ์ˆ˜๋กœ ๋ณ€๊ฒฝ

์ตœ์ข…์ ์œผ๋กœ ์ œํ’ˆ์˜ ์ˆ˜๋Ÿ‰์„ ๋งž์ถ”์–ด ์ผ์ •๊ธˆ์•ก์˜ ๊ฐ€๊ฒฉ์—์„œ ์ œํ’ˆ ์ฃผ๋ฌธ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค

แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2021-11-15 แ„‹แ…ฉแ„’แ…ฎ 4 04 23

Inconsistent security controls

๊ฐœ์ธ ์ •๋ณด ๋ณ€๊ฒฝ ์‹œ ํšŒ์‚ฌ ์ด๋ฉ”์ผ๋กœ ๋ณ€๊ฒฝํ•˜์—ฌ ์–ด๋“œ๋ฏผ ํŽ˜์ด์ง€ ์ ‘๊ทผ๊ฐ€๋Šฅํ•œ ์ทจ์•ฝ์  ์ž…๋‹ˆ๋‹ค.

#0 test ํšŒ์‚ฌ ์ด๋ฉ”์ผ ๊ถŒํ•œ ๋ถ€์—ฌ ๋ฌธ์ œ

ํšŒ์› ๊ฐ€์ž… ์‹œ DontWannaCry ํšŒ์‚ฌ์— ๊ทผ๋ฌดํ•œ๋‹ค๋ฉด ์ด๋ฉ”์ผ์— @dontwannacry.com ์œผ๋กœ ๋“ฑ๋กํ•˜๋ผ๋Š” ๋ฌธ๊ตฌ๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

#1 test ํšŒ์‚ฌ ์ด๋ฉ”์ผ ๋“ฑ๋ก

๋จผ์ € ์ž์‹ ์˜ ์ผ๋ฐ˜ ๊ณ„์ •์œผ๋กœ ํšŒ์›๊ฐ€์ž…์„ ๋“ฑ๋ก ํ•œ ํ›„ ๊ฐœ์ธ์ •๋ณด ๋ณ€๊ฒฝ์—์„œ ์ด๋ฉ”์ผ์„ ํšŒ์‚ฌ ์ด๋ฉ”์ผ๋กœ ๋ณ€๊ฒฝํ•˜์—ฌ ์ค๋‹ˆ๋‹ค.

#2 test ํšŒ์‚ฌ ์ด๋ฉ”์ผ ๋ณ€๊ฒฝ

๊ทธ๋Ÿฌ๋ฉด ๋ณ„ ๋‹ค๋ฅธ ์ธ์ฆ์—†์ด ํšŒ์›์˜ ์ด๋ฉ”์ผ์ด ํšŒ์‚ฌ ์ด๋ฉ”์ผ๋กœ ๋ณ€๊ฒฝ์ด ๋˜๋ฉด์„œ ๋ณด์ด์ง€ ์•Š์•˜๋˜ Admin panel ํŽ˜์ด์ง€๊ฐ€ ๋ณด์ด๊ฒŒ ๋˜๊ณ  AdminํŽ˜์ด์ง€ ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•ด์ง‘๋‹ˆ๋‹ค.

#3 test ํšŒ์‚ฌ ์ด๋ฉ”์ผ ๋“ฑ๋ก ์„ฑ๊ณต

#4 test adminํŽ˜์ด์ง€ ์ ‘๊ทผ ๊ฐ€๋Šฅ

Inconsistent handling of exceptional input

์ด๋ฉ”์ผ ๋“ฑ๋ก์‹œ ํ—ˆ์šฉ๋˜๋Š” ๋ฌธ์ž์—ด 255๋ฅผ ์ดˆ๊ณผํ•˜์—ฌ ์ด๋ฉ”์ผ ์ฃผ์†Œ๋ฅผ ์กฐ์ž‘ํ•˜๋Š” ์ทจ์•ฝ์  ์ž…๋‹ˆ๋‹ค.

๋จผ์ € ๋ฒ„ํ”„์Šค์œ„ํŠธ ๋””๋ ‰ํ† ๋ฆฌ ์Šค์บ”์„ ํ™œ์šฉํ•˜์—ฌ ํ•ด๋‹น ํŽ˜์ด์ง€์˜ /admin ํŽ˜์ด์ง€๊ฐ€ ์žˆ๋‹ค๋Š”๊ฒƒ์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2021-11-16 แ„‹แ…ฉแ„’แ…ฎ 7 41 57 แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2021-11-16 แ„‹แ…ฉแ„’แ…ฎ 7 55 48

์–ด๋“œ๋ฏผ ํŽ˜์ด์ง€๋ฅผ ์ด์šฉํ• ๋ ค๋ฉด DontWannaCry ์œ ์ €๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค๋Š”๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2021-11-16 แ„‹แ…ฉแ„’แ…ฎ 8 50 35

์ด๋ฉ”์ผ ๋“ฑ๋ก์‹œ 255๊ฐœ์˜ ๋ฌธ์ž์—ด์„ ์ดˆ๊ณผํ•˜๋ฉด 255๊ฐœ๊นŒ์ง€์˜ ๋ฌธ์ž์—ด๋งŒ ๋“ฑ๋ก๋˜๊ณ  ๋‚˜๋จธ์ง€ ๋ฌธ์ž์—ด์„ ์ž˜๋ ค์„œ ๋‚˜์˜ค์งˆ ์•Š์Šต๋‹ˆ๋‹ค.

แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2021-11-16 แ„‹แ…ฉแ„’แ…ฎ 8 35 53

์ด๋ฉ”์ผ ๋“ฑ๋ก์‹œ ์›ํ•˜๋Š” ์ด๋ฉ”์ผ @dontwannrycry.com ๊นŒ์ง€ 255๊ฐœ์˜ ๋ฌธ์ž์—ด์„ ์ž‘์„ฑํ•œ ํ›„ ๋’ค์— ์ž์‹ ์˜ ์ด๋ฉ”์ผ์„ ์ ์–ด ์ด๋ฉ”์ผ์€ dontwannacry.com ์œผ๋กœ ๋˜์ง€๋งŒ ๋“ฑ๋ก ์ด๋ฉ”์ผ์€ ์ž์‹ ์—๊ฒŒ ์˜ค๋„๋ก ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
๊ทธ ํ›„ ํ•ด๋‹น ๊ณ„์ •์œผ๋กœ ๋กœ๊ทธ์ธํ•˜๋ฉด admin ๊ณ„์ •์œผ๋กœ ๋กœ๊ทธ์ธ ํ•œ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

//255๊ฐœ์˜ ๋ฌธ์ž์—ด
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@dontwannacry.com

//255๊ฐœ์˜ ๋ฌธ์ž์—ด ์ดํ›„ ์ž์‹ ์˜ ์ด๋ฉ”์ผ ๋„๋ฉ”์ธ ์ถ”๊ฐ€ ์ž…๋ ฅ
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@dontwannacry.com.exploit-ac411ff61f2df426c05010d801a00085.web-security-academy.net

แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2021-11-16 แ„‹แ…ฉแ„’แ…ฎ 8 43 03 แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2021-11-16 แ„‹แ…ฉแ„’แ…ฎ 8 45 07 Admin panel ํŽ˜์ด์ง€ ์ถ”๊ฐ€

2FA Simple bypass

๊ธฐ๋ณธ์ ์ธ ๋กœ์ง์€ ๋กœ๊ทธ์ธ -> 2์ฐจ์ธ์ฆ -> ๋ฉ”์ธํŽ˜์ด์ง€ ์ˆœ์„œ์ง€๋งŒ ์ด๋ฅผ ์šฐํšŒํ•˜์—ฌ
๋กœ๊ทธ์ธ -> ๋ฉ”์ธํŽ˜์ด์ง€๋กœ URL์„ ์ง์ ‘ ์ด๋™ ์‹œ 2์ฐจ์ธ์ฆ์„ ์šฐํšŒํ•˜๋Š” ์ทจ์•ฝ์  ์ž…๋‹ˆ๋‹ค.

image

๊ธฐ์กด ์ž์‹ ์˜ ๊ณ„์ •์œผ๋กœ ๋กœ๊ทธ์ธ ํ•˜์—ฌ URL ์ฃผ์†Œ๋ฅผ ๊ธฐ์–ตํ•˜์—ฌ ๋‘ก๋‹ˆ๋‹ค (my-account)

#2 2์ฐจ์ธ์ฆ ํ›„ ๋ฉ”์ธ ํŽ˜์ด์ง€

ํฌ์ƒ์ž์˜ ๊ณ„์ •์œผ๋กœ ์ ‘์†ํ•˜์—ฌ 2์ฐจ์ธ์ฆ URL ํŽ˜์ด์ง€์—์„œ MainํŽ˜์ด์ง€(my-account)์˜ URL์ฃผ์†Œ๋ฅผ ์ง์ ‘ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค

#3 URL ์ฃผ์†Œ ์ˆ˜๋™ ์ž…๋ ฅ

ํฌ์ƒ์ž์˜ ๊ณ„์ •์—์„œ 2์ฐจ์ธ์ฆ์„ ์ธ์ฆํ•˜์ง€ ์•Š๊ณ  ์šฐํšŒํ•˜์—ฌ ๋กœ๊ทธ์ธ์ด ์ •์ƒ์ ์œผ๋กœ ๋˜๋Š”๊ฒƒ์„ ํ™•์ธ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค

#4 2์ฐจ์ธ์ฆ ์šฐํšŒ

2FA broken logic

2FA์ธ์ฆ์—์„œ ์ธ์ฆ ๊ฒฐํ•จ ๋กœ์ง์— ์˜ค๋ฅ˜๊ฐ€ ์žˆ์–ด 2์ฐจ์ธ์ฆ์ด ์šฐํšŒ๋˜๋Š” ์ทจ์•ฝ์ ์ž…๋‹ˆ๋‹ค.

image 2์ฐจ์ธ์ฆ ๋ฌธ์ œ

image ๋กœ๊ทธ์ธ ์‹œ๋„

๋กœ๊ทธ์ธ ํ›„ 2์ฐจ์ธ์ฆ ์š”์ฒญ์„ ์œ„ํ•œ ํŒจํ‚ท์ด ์ „์†ก๋ ๋•Œ Burp๋ฅผ ์ด์šฉํ•˜์—ฌ ์ „์†ก๋˜๋Š” ํŒŒ๋ผ๋ฏธํ„ฐ verify๋ฅผ wiener ์—์„œ ์šฐํšŒ๋ฅผ ์›ํ•˜๋Š” ๊ณ„์ • carlos๋กœ ๋ณ€๊ฒฝ ํ›„ ํŒจํ‚ท์„ ์ „์†กํ•˜์—ฌ OTP ๋ฒˆํ˜ธ๋ฅผ ๋ฉ”์ผ๋กœ ์š”์ฒญ๋ฐ›์Šต๋‹ˆ๋‹ค.

#0 2fa ํŒŒ๋ผ๋ฏธํ„ฐ ๋ณ€์กฐ

์ธํŠธ๋ฃจ๋”๋ฅผ ์ด์šฉํ•˜์—ฌ 2์ฐจ์ธ์ฆ OTP ์ž…๋ ฅ ํŒจํ‚ท์—์„œ verify๋ฅผ carlos๋กœ ๋ณ€๊ฒฝ ํ›„ ์ธ์ฆ๋ฒˆํ˜ธ 4๊ธ€์ž๋ฅผ ๋ธŒ๋ฃจํŠธํฌ์Šค ๊ณต๊ฒฉ์„ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

#0 5 2fa ๋ธŒ๋ฃจํŠธ ํฌ์Šค

์ด์ „์— ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ๋ณ€์กฐํ•˜์—ฌ carlos๋กœ 2์ฐจ์ธ์ฆ ์ธ์ฆ๋ฒˆํ˜ธ๋ฅผ ์š”์ฒญํ•œ ํŒจํ‚ท์ด ์ „์†ก๋˜์—ˆ๊ธฐ์— ๋ธŒ๋ฃจํŠธํฌ์Šค๋ฅผ ํ†ตํ•˜์—ฌ 2์ฐจ์ธ์ฆ์„ ์šฐํšŒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

#1 2fa 2์ฐจ์ธ์ฆ ์šฐํšŒ

#2 2fa ๋กœ๊ทธ์ธ ์„ฑ๊ณต

Weak isolation on dual-use endpoint

ํ•„์ˆ˜์ž…๋ ฅ๊ฐ’ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์‚ญ์ œํ•˜์—ฌ ์ „์†ก ์‹œ ์ธ์ฆ์ด ๋˜๋Š” ์ทจ์•ฝ์  ์ž…๋‹ˆ๋‹ค.

ํŒŒ๋ผ๋ฏธํ„ฐ ๋ฟ ์•„๋‹ˆ๋ผ URL, ์ฟ ํ‚ค๋„ ์‚ญ์ œํ•˜์—ฌ ์ „์†ก ํ›„ ์ด๊ฒƒ์ด ์‘๋‹ต์— ์–ด๋–ค ์˜ํ–ฅ์„ ๋ผ์น˜๋Š”์ง€ ํŒŒ์•…ํ•˜์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค

image

๊ธฐ๋ณธ ๊ณ„์ •์œผ๋กœ ์ ‘์† ํ›„ ํŒจ์Šค์›Œ๋“œ ๋ณ€๊ฒฝ์—์„œ ์ž…๋ ฅ๊ฐ’์„ ์ž‘์„ฑ ํ›„ ํŒจํ‚ท์„ ์ „์†กํ•ฉ๋‹ˆ๋‹ค

#2 ํŒจ์Šค์›Œ๋“œ ๋ณ€๊ฒฝ

ํŒจ์Šค์›Œ๋“œ ๋ณ€๊ฒฝ์‹œ ์ „์†ก๋˜๋Š” ํŒจํ‚ท์„ ์บก์ณํ•˜์—ฌ ์•„์ด๋””๋ฅผ administrator๋กœ ๋ณ€๊ฒฝ ํ›„ ํ•„์ˆ˜ ์ž…๋ ฅ๊ฐ’์ด ํ˜„์žฌ ํŒจ์Šค์›Œ๋“œ current-passwordํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์‚ญ์ œ ํ›„ ์ „์†กํ•ฉ๋‹ˆ๋‹ค

#3 ํŒŒ๋ผ๋ฏธํ„ฐ ๋ณ€๊ฒฝ ๋ฐ ์‚ญ์ œ

ํ•ด๋‹น ์ž…๋ ฅ๊ฐ’์ด ์˜ค๋ฅ˜์—†์ด ์ „์†ก๋˜๊ณ  administrator์˜ ๋น„๋ฐ€๋ฒˆํ˜ธ ๊ฐ€ ๋ณ€๊ฒฝ๋˜์–ด ๋กœ๊ทธ์ธ ํ›„ admin ํŽ˜์ด์ง€ ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค

#4 administrator ๊ณ„์ • ์ ‘๊ทผ ๊ฐ€๋Šฅ

Insufficient workflow validation

ํ’ˆ๋ชฉ ๊ตฌ๋งค workflow์˜ ์ˆœ์„œ์ฒ˜๋ฆฌ ๋กœ์ง์„ ์—๋Ÿฌ -> ์ •์ƒ๊ฒฐ์ œ๋กœ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๋Š” ์ทจ์•ฝ์  ์ž…๋‹ˆ๋‹ค.

์‡ผํ•‘๋ชฐ์—์„œ ๊ฐ€๊ฒฉ์ด ์‹ผ ์ œํ’ˆ์„ ์ •์ƒ์ ์œผ๋กœ ๊ตฌ๋งค ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค

#1 ํ’ˆ๋ชฉ ๊ตฌ๋งค

๋ฌผํ’ˆ ๊ตฌ๋งค ์„ฑ๊ณต์‹œ /cart/order-confrimation?order-confirmed=ture ๋กœ ๋„˜์–ด๊ฐ€๋Š”๊ฒƒ์„ ํ™•์ธ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค

#2 ์ •์ƒ์ ์ธ ๋ฌผํ’ˆ ๊ตฌ๋งค ์„ฑ๊ณต

ํ•ด๋‹น URL์ด ์ „์†ก๋˜๋ฉด ๋ฌผํ’ˆ์ด ์ •์ƒ์ ์œผ๋กœ ๊ตฌ๋งค๊ฐ€ ์™„๋ฃŒ๋ฉ๋‹ˆ๋‹ค

#3 ๋ฌผํ’ˆ ๊ตฌ๋งค ์„ฑ๊ณต

ํ˜„์žฌ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๋ˆ $36๋ณด๋‹ค ๋น„์‹ผ ์ œํ’ˆ $1337๋ฅผ ๊ฒฐ์ œ ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค

#4 ๋ฌผํ’ˆ ๊ตฌ๋งค ์‹œ๋„

์ •์ƒ์ ์ธ ํ”„๋กœ์„ธ์Šค๋Š” /cart?err=INSUFFICIENT_FUNDS ๋กœ ์—๋ŸฌํŽ˜์ด์ง€๋กœ ๋„˜์–ด๊ฐ€์ง€๋งŒ ํ•ด๋‹น ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ๋ฌผํ’ˆ์„ ๊ตฌ๋งคํ–ˆ์„๋•Œ ๋„˜์–ด๊ฐ€๋Š” URL๋กœ ๋ณ€๊ฒฝ ํ•ฉ๋‹ˆ๋””

#5 ํŒŒ๋ผ๋ฏธํ„ฐ ๋ณ€์กฐ

๊ทธ๋Ÿฌ๋ฉด ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๋ˆ๋ณด๋‹ค ๋น„์‹ผ ์ œํ’ˆ์ด ์ •์ƒ์ ์œผ๋กœ ๊ตฌ๋งค๊ฐ€ ๋ฉ๋‹ˆ๋‹ค

#6 ๋ฌผํ’ˆ ๊ตฌ๋งค ์„ฑ๊ณต

Authentication bypass via flawed state machine

๋กœ๊ทธ์ธ ์‹œ role์„ ์„ ํƒํ•˜์—ฌ ๋ฉ”์ธํŽ˜์ด์ง€๋กœ ์ด๋™ํ•˜๋Š”๋ฐ ์ด๋•Œ role ์„ ํƒํŽ˜์ด์ง€๋กœ ์ด๋™ํ•˜์ง€ ์•Š๊ณ  ๋ฐ”๋กœ ๋ฉ”์ธํŽ˜์ด์ง€๋กœ ์ด๋™ ์‹œ admin ๊ณ„์ •์œผ๋กœ ์„ ํƒ๋˜๋Š” ์ทจ์•ฝ์  ์ž…๋‹ˆ๋‹ค

image

๋กœ๊ทธ์ธ ์ง„ํ–‰ ํ›„ /role-selector ๋กœ ๋„˜์–ด๊ฐ€๋ฉด ์•„๋ž˜์™€ ๊ฐ™์€ ํŽ˜์ด์ง€๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค

#2 3 role selector ํŽ˜์ด์ง€

์ดํ›„ role ์„ ํƒ ํ›„ select ๋ฒ„ํŠผ์„ ๋ˆŒ๋ฅด๋ฉด ๋ฉ”์ธํŽ˜์ด์ง€(/)๋กœ ๋„˜์–ด๊ฐ€๊ฒŒ ๋˜๋Š” ๋กœ์ง์ž…๋‹ˆ๋‹ค

4 5 ๋ฉ”์ธ ํŽ˜์ด์ง€

์šฐํšŒํ•˜๊ธฐ ์œ„ํ•˜์—ฌ ๋กœ๊ทธ์ธ ํ›„ /role-selectorํŽ˜์ด์ง€๋กœ ๋„˜์–ด๊ฐ€์ง€ ์•Š๊ณ  ๋ฐ”๋กœ ๋ฉ”์ธํŽ˜์ด์ง€(/)๋กœ ๋ณ€๊ฒฝ ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค

6 ํŒŒ๋ผ๋ฏธํ„ฐ ๋ณ€๊ฒฝ

๊ทธ๋Ÿฌ๋ฉด role์„ ์„ ํƒํ•˜์ง€ ์•Š๊ณ  ๋ฐ”๋กœ administrator ๊ณ„์ •์œผ๋กœ ์ ‘๊ทผ๊ฐ€๋Šฅํ•œ๊ฒƒ์„ ํ™•์ธ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค

7 admin role ์ ‘๊ทผ



๐Ÿ“ƒ References