CTF

주어진 two.apk 파일을 dex2jar로 디컴파일해서 jd-gui로 확인하니까 이전 droids1 문제와 같이 FlagstaffHill 클래스가 있었고 그 안에 getFlag함수가 있었다. package com.hellocmu.picoctf; import android.content.Context; public class FlagstaffHill { public static String getFlag(String paramString, Context paramContext) { String[] arrayOfString = new String[6]; arrayOfString[0] = "weatherwax"; arrayOfString[1] = "ogg"; arrayOfString[2] = "garlick..
주어진 one.apk 파일을 dex2jar로 디컴파일해서 봤더니 FlagstaffHill라는 클래스가 있었고 안에 getFlag라는 함수가 있었다. 함수 내용을 보니 paramString으로 입력값인 문자열을 받아와 2131427375에 해당하는 문자열을 getString으로 가져와 비교해서 일치하면, 왼쪽의 fenugreek(paramString)을 리턴하고 아니면 NOPE이란 문자열을 리턴한다. 1) 2131427375에 맞는 문자열 찾기 2) 아무 문자열이나 어플에 쳐보니 NOPE이라고 밑에 뜨는 것을 보니, 맞는 문자열을 입력하면 flag가 그 자리에 뜰것같다. 먼저 1)에 대한 것을 찾기 위해 어플이 참조하는 리소스에 대한 정보를 res/values/public.xml에서 찾을 수 있었다. de..
Where do droid logs go. Check out this file. dex2jar 툴을 써서 디컴파일하고 jd-gui로 열어 본 MainActivity 위 코드를 보면 버튼을 클릭하면 text_bottom, 아마 아래쪽에 flag를 보여주는 형식인것 같다. FlagstaffHill.class를 따라가보면 paprika라는 함수에 input값을 넣어 Log.i()로 로그를 남기며, "Not Today"를 return한다. 어플을 다운받아 실행해보면 밑에와 같은 창이 뜨고 어떤 값을 입력하면 "Not Today"라고 뜬다. 어플에서 직접 flag를 구할 수 있을 것같진 않고, 위에서 Log.i()를 통해 로그를 남긴다고 했으니 adb logcat을 이용해 로그 내역 중 PICO가 들어간 내용만 ..
Yay reversing! Relevant files: otp flag.txt otp 파일을 ghidra로 까서 본 main 함수 undefined8 main(int param_1,undefined8 *param_2) { char cVar1; byte bVar2; int iVar3; undefined8 uVar4; long in_FS_OFFSET; int local_f0; int local_ec; char local_e8 [100]; undefined local_84; char local_78 [104]; long local_10; local_10 = *(long *)(in_FS_OFFSET + 0x28); if (param_1 < 2) { printf("USAGE: %s [KEY]\n",*param_2..
What does asm2(0xb,0x2e) return? Submit the flag as a hexadecimal value (starting with '0x'). NOTE: Your submission for this question will NOT be in the normal flag format. Source asm2: :push ebp :mov ebp,esp :sub esp,0x10 :mov eax,DWORD PTR [ebp+0xc] :mov DWORD PTR [ebp-0x4],eax :mov eax,DWORD PTR [ebp+0x8] :mov DWORD PTR [ebp-0x8],eax :jmp 0x509 :add DWORD PTR [ebp-0x4],0x1 :sub DWORD PTR [ebp..
import java.util.*; class VaultDoor4 { public static void main(String args[]) { VaultDoor4 vaultDoor = new VaultDoor4(); Scanner scanner = new Scanner(System.in); System.out.print("Enter vault password: "); String userInput = scanner.next(); String input = userInput.substring("picoCTF{".length(),userInput.length()-1); if (vaultDoor.checkPassword(input)) { System.out.println("Access granted."); }..
· CTF/Forensic
주어진 charwrap 파일을 리눅스에서 file 명령어로 살펴봤다. 그냥 ELF 파일인 듯 하다. cat 명령어로 읽어봤는데 다 깨져서 나와서 다른 명령어를 찾아봤다. 유효한 문자열을 보여주는 strings를 이용해 봤더니 중간에 flag가 있을 것 같이 생긴 것을 발견 strings charwrap | grep "AFFCTF" 명령어 입력했더니 어디에 있긴 한것같다. grep 명령어 이용해 주변 여러 줄을 함께 출력하는 옵션을 찾아본 결과 -An(n은 출력할 줄)을 이용해 flag를 찾을 수 있었다. 저기 있는 줄맞춤 H를 빼고 FLAG : AFFCTF{you_found_somethiHng!}
· CTF/Crypto
The flag is AFFCTF{395f4dfc82f56b796b23c3fa1b5150cbe568d71e} but the content is encrypted! Can you discover the flag content? SHA1로 복호화한 값을 같이 넣어주면 해결 FLAG : AFFCTF{Unimaginatively}
기넌
'CTF' 카테고리의 글 목록 (3 Page)