Study/wargame

[Dreamhack] Secure Mail

์œค์ •_ 2024. 12. 31. 16:11

 

 

Secure Mail์€ ๋ณด์•ˆ ๋ฉ”์ผ์˜ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ฐพ๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค.

 

 

 

์ด๋ฒˆ ๋ฆฌ๋ฒ„์‹ฑ ๋ฌธ์ œ๋Š” html ํŒŒ์ผ์ž…๋‹ˆ๋‹ค. ์‹คํ–‰ํ•˜๋ฉด ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅํ•  ์ˆ˜ ์žˆ๋Š” ํผ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

 

 

html๋Š” ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅํ•˜๊ณ  Confirm ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๋ฉด, ์ž…๋ ฅํ•œ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ํ•˜๋Š” ๋‚ด๋ถ€ javascript ํ•จ์ˆ˜ _0x9a220๋ฅผ ํ˜ธ์ถœํ•ฉ๋‹ˆ๋‹ค.

 

 

 

JS: _0x9a220 ํ•จ์ˆ˜ ๋ถ„์„

_0x9a220๊ฐ€ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ๋ฉ”์ธ ํ•จ์ˆ˜๋กœ, ์ž…๋ ฅ๋œ ์ƒ๋…„์›”์ผ์„ ๊ฒ€์‚ฌํ•ฉ๋‹ˆ๋‹ค.

 

 

 

_0x9a220๋Š” ๋ณ€์ˆ˜ file์— ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณตํ˜ธํ™”(AES-128-CBC)ํ•˜์—ฌ ๋ณ€์ˆ˜ dfbora์— ์ €์žฅํ•˜๊ณ  ์ด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ฒ€์ฆ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

CBC ๋ชจ๋“œ ๋ฐ 16๋ฐ”์ดํŠธ IV(_0x274b61), key(_0x2ee89c)

 

 

 

์ž…๋ ฅ๋œ ์ƒ๋…„์›”์ผ์„ for๋ฌธ์„ ํ†ตํ•ด ์ž์ฒด์ ์ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๊ฑฐ์ณ ๋‚œ๋…ํ™”๋œ ๋ฐ์ดํ„ฐ๋กœ ๋ณ€์ˆ˜ odradurs1์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ์‹œ: ๋‚œ๋…ํ™”๋œ ์ž…๋ ฅ๊ฐ’ 850810

 

 

 

์ž…๋ ฅ ๋ฐ›์€ ์ƒ๋…„์›”์ผ์ด ๋‹ต์ด ์•„๋‹ˆ๋ฉด Wrong ๋ฌธ์ž์—ด์„ ์ถœ๋ ฅํ•˜๋Š” ์ฝ”๋“œ์ž…๋‹ˆ๋‹ค.

 

 

odradurs1์„ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ _0x3eebe5 ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•ฉ๋‹ˆ๋‹ค.

_0x3eebe5 ํ•จ์ˆ˜๋Š” encodeURIComponent ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ๊ฒƒ์œผ๋กœ ๋ณด์•„ ์ด๋Š” URL์˜ ์ผ๋ถ€๊ฐ€ ๋˜๋Š” ๋ฐ์ดํ„ฐ๋กœ ๋ณ€ํ™˜๋˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

 

 

๋น„๊ตํ•˜๋Š” ๋ฌธ์ž์—ด์€ ๋‚œ๋…ํ™”๋˜์–ด ์žˆ์–ด ์ด๊ฑธ๋กœ ์ •๋‹ต์„ ์•Œ์•„๋‚ผ ์ˆ˜๋Š” ์—†๊ฒ ์Šต๋‹ˆ๋‹ค. ใ…Ž

 

 

 

์ž…๋ ฅ ๋ฐ›์€ ์ƒ๋…„์›”์ผ์ด ์ •๋‹ต์ด๋ฉด ํŠน์ • html ์ฝ˜ํ…์ธ ๋ฅผ ์ถœ๋ ฅํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.  

 

 

html ์ฝ˜ํ…์ธ ๋Š” ์ด๋ฏธ์ง€์ธ ๊ฒƒ์œผ๋กœ ๋ณด์•„ ํ”Œ๋ž˜๊ทธ๊ฐ€ ์ ํ˜€์ง„ ์ด๋ฏธ์ง€๊ฐ€ ์ถœ๋ ฅ๋˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

 

 

 

๋ฌธ์ œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

์ •๋‹ต(์ƒ๋…„์›”์ผ) ํ™•์ธ์„ ์œ„ํ•ด ๋””๋ฒ„๊น…์„ ์‹œ๋„ํ–ˆ์ง€๋งŒ ๋‚œ๋…ํ™” ๋ฐ ์•”ํ˜ธํ™”๋˜์–ด ์žˆ์–ด ํ™•์ธ์ด ์–ด๋ ค์› ์Šต๋‹ˆ๋‹ค. (ใ…œใ…œ)

๊ทธ๋ž˜์„œ ์ถ”๊ฐ€ ์ฝ”๋“œ๋ฅผ ์งœ์„œ ์ƒ๋…„์›”์ผ์„ ์•Œ์•„๋‚ด๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

 

 

 

function birthcheck() {
	var pwd;
	for (var y=99; y>=0; y--){
		var Y = y < 10 ? '0' + y : y;
		
		for (var m=1; m<=12; m++){
			var M = m < 10 ? '0' + m : m;
			
			for (var d=1; d<=31; d++){
				var D = d < 10 ? '0' + d : d;
				pwd = Y.toString() + M.toString() + D.toString();
				_0x9a220(pwd);
			}
		}
	}
}

์ƒ๋…„์›”์ผ 6์ž๋ฆฌ ์ •๋‹ต์„ ๋” ํšจ์œจ์ ์œผ๋กœ ๊ตฌํ•˜๊ณ  ์‹ถ์–ด์„œ ๋…„, ์›”, ์ผ๋กœ ๋‚˜๋ˆ„์–ด์„œ for๋ฌธ์„ ์„ค์ •ํ•˜์˜€๊ณ  ๋ฒ”์œ„๋ฅผ ๋…„, ์›”, ์ผ์— ํ•ด๋‹นํ•˜๋Š” ์ˆซ์ž๋กœ ๊ตฌ์„ฑํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ํ•œ ๊ธ€์ž ์ˆซ์ž์ธ ๊ฒฝ์šฐ, 0์„ ๋ถ™์—ฌ ๋‘ ๊ธ€์ž๋กœ ๋งŒ๋“ค์–ด ์ฃผ์—ˆ์Šต๋‹ˆ๋‹ค. (ex. 1์›”์ธ ๊ฒฝ์šฐ → 01)

์ด๋ ‡๊ฒŒ birthcheck ํ•จ์ˆ˜๋ฅผ ํ†ตํ•ด ์ƒ๋…„์›”์ผ์„ ์ƒ์„ฑํ•˜๊ณ  ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋ฉ”์ธ ํ•จ์ˆ˜ _0x9a220์˜ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ์„ค์ •ํ•˜์—ฌ ์‹คํ–‰ํ•˜์˜€์Šต๋‹ˆ๋‹ค. 

 

 

 

์ตœ์ข…์ ์œผ๋กœ ์ •๋‹ต(์ƒ๋…„์›”์ผ)์„ ๊ตฌํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

 

 

 

๊ตฌํ•œ ์ƒ๋…„์›”์ผ์„ ์ž…๋ ฅํ•ด๋ณด๋ฉด ํ”Œ๋ž˜๊ทธ๊ฐ€ ์ ํžŒ ์ด๋ฏธ์ง€๊ฐ€ ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค.

 

ํ”Œ๋ž˜๊ทธ๋ฅผ ๋ณด๋‹ˆ ์—ญ์‹œ bruteforce๋ฅผ ํ†ตํ•ด ํ’€๋„๋ก ๋งŒ๋“  ๋ฌธ์ œ์˜€๋‚˜๋ณด๋„ค์š” ^.ใ… 

 

 

 

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

[CodeEngn] Malware L06  (0) 2024.12.31
[Dreamhack] rev-basic-2  (0) 2024.12.27
[Dreamhack] rev-basic-1  (0) 2024.12.19
[Dreamhack] rev-basic-0  (0) 2024.12.18
[Reversing.kr] 4๋ฒˆ Music Player  (2) 2023.02.14