[BOB CTF 8th] - Summer Fan
๋ฌธ์ ํ์ผ์ ๋ค์ด๋ก๋ ๋ฐ์ผ๋ฉด Summer_Fan.apk ํ์ผ์ด ์กด์ฌํ๋ค.
ํด๋น ์ฑ์ ์ค์นํ๊ณ ์คํํด๋ณด๋ฉด ์๋ ์ฒ๋ผ ์ ํ๊ธฐ๋ฅผ ๋๋ฆฌ๊ณ ํ๋๊ทธ๋ฅผ ์ป์ ์ ์๋ ์ฑ์ด ์คํ๋๋ค.
adb install Summer_Fan.apk
GET FLAG! ๋ฒํผ์ ํด๋ฆญํ๊ฒ ๋๋ฉด ์๋ ํ๋ฉด์ฒ๋ผ ๋์จ๋ค.
jadx๋ฅผ ํตํด apk ํ์ผ์ ์์ค์ฝ๋๋ฅผ ๋ณด๋ฉด MainActivity์ ๋ค์ํ ํจ์๋ค์ด ์กด์ฌํ๋ค.
๊ทธ ์ค Start ๋ฒํผ์ ๋๋ฅด๋ฉด ์คํ๋๋ startTimer(), Get Flag ๋ฒํผ์ ๋๋ ค๋ฉด ์คํ๋๋ checkTime(),
Flag๋ฅผ ์์ฑํ๋ generateFlag() ํจ์๊ฐ ์๋ค.
private final void checkTime(Intent intent) {
Toast.makeText(this, (((int) intent.getDoubleExtra(TimerService.TIME_EXTRA, 0.0d)) % 86400) / 3600 >= 31337 ? generateFlag() : "ํ๋๊ทธ๋ฅผ ์ฃผ๊ธฐ์ ์์ง ๋๋ฌด ๋์ด๊ฑธ...", 0).show();
}
private final String generateFlag() {
ArrayList arrayList = new ArrayList();
int size = MainActivityKt.getFLAG().size();
for (int i = 0; i < size; i++) {
arrayList.add(Character.valueOf((char) ((MainActivityKt.getFLAG().get(i).intValue() ^ StringsKt.first(MainActivityKt.getKEY().get(i % MainActivityKt.getKEY().size()))) - gen(i))));
}
return CollectionsKt.joinToString$default(arrayList, "", null, null, 0, null, null, 62, null);
}
private final int gen(int i) {
int size = MainActivityKt.getKEY().size();
return (((int) Math.pow(i, 3.0d)) % 256) ^ StringsKt.first(MainActivityKt.getKEY().get(size - ((i % size) + 1)));
}
checkTime ํจ์๋ด์ ์กฐ๊ฑด์ ๋ง์กฑํ๋ฉด generateFlag ํจ์๋ฅผ ์คํํด์ค๋ค.
์ด์ Frida๋ฅผ ํตํด startTime ํจ์๋ฅผ ํํนํ์ฌ generateFlag ํจ์๋ฅผ ์คํํด์ฃผ๋ ๋ฐฉ๋ฒ์ผ๋ก Flag๋ฅผ ์ถ๋ ฅํ๋ค.
frida -D emulator-5554 -f com.example.summer --no-pause -l generateFlagHook.js
# generateFlagHook.js
function generateFlagHook(){
Java.perform(function(){
var RootingDecteor = Java.use("com.example.summer.MainActivity");
RootingDecteor.startTimer.implementation = function(){
Java.choose("com.example.summer.MainActivity",{
"onMatch":function(generateFlag){
console.log(generateFlag.generateFlag());
},
"onComplete":function() {}
})
};
})
}
generateFlagHook()
'๐ก๏ธCTF > DreamHack' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
rev-basic-3 (0) | 2023.09.19 |
---|---|
[BOB CTF 8th] - FileStroage (0) | 2022.09.13 |
Apache htaccess (0) | 2022.07.28 |
read_flag (0) | 2022.01.23 |
crawling (0) | 2022.01.23 |
๋๊ธ
์ด ๊ธ ๊ณต์ ํ๊ธฐ
-
๊ตฌ๋
ํ๊ธฐ
๊ตฌ๋ ํ๊ธฐ
-
์นด์นด์คํก
์นด์นด์คํก
-
๋ผ์ธ
๋ผ์ธ
-
ํธ์ํฐ
ํธ์ํฐ
-
Facebook
Facebook
-
์นด์นด์ค์คํ ๋ฆฌ
์นด์นด์ค์คํ ๋ฆฌ
-
๋ฐด๋
๋ฐด๋
-
๋ค์ด๋ฒ ๋ธ๋ก๊ทธ
๋ค์ด๋ฒ ๋ธ๋ก๊ทธ
-
Pocket
Pocket
-
Evernote
Evernote
๋ค๋ฅธ ๊ธ
-
rev-basic-3
rev-basic-3
2023.09.19 -
[BOB CTF 8th] - FileStroage
[BOB CTF 8th] - FileStroage
2022.09.13 -
Apache htaccess
Apache htaccess
2022.07.28 -
read_flag
read_flag
2022.01.23