Yozzang의 해킹일기 💻
article thumbnail
CodeUp-3015 (성적표 출력)
Coding Test/CodeUp 2023. 3. 5. 01:59

이번 포스트에서는 CodeUp의 3015번 "성적표 출력" 문제를 풀어보겠다. 문제 설명은 다음과 같다. 입력과 출력은 다음과 같다. ## 문제 해석: 우선 총 학생 수와 출력할 학생의 수를 입력받는다. 그런 다음에 입력받은 총수를 기반으로 각 데이터(학생 이름과 점수)를 입력받는다. 마지막으로 출력할 학생의 수를 기반으로 성적이 높은 학생부터 차례대로 출력하면 된다. ## 문제 풀이: 먼저 처리할 학생의 총 수 및 출력할 데이터의 수를 입력 받는 코드를 작성한다. 학생_점수 리스트도 함께 작성한다. n, m = map(int, input().split()) sco_lst = [] 그런 다음에 입력한 학생의 총 수를 바탕으로 리스트에 값을 채워가는 코드를 작성한다. n, m = map(int, input..

article thumbnail
CodeUp-3004 (데이터 재정렬)
Coding Test/CodeUp 2023. 3. 4. 01:24

이번 포스트에서는 CodeUp의 3004번 "데이터 재정렬" 문제를 풀어보겠다. 문제 설명은 다음과 같다. 입력과 출력은 다음과 같다. ## 문제 해석: 우선 처리할 데이터의 개수를 입력 받는다. 그런 다음에 입력받은 개수를 기반으로 각 데이터를 입력받는다. 마지막으로 각 데이터의 크기 인덱스를 출력하면 된다. ## 문제 풀이: 먼저 처리할 데이터의 수를 입력 받는 코드를 작성한다. 값의 범위를 검증하는 코드도 역시 추가한다. n = int(input()) if n 50000: print("n의 범위는 1~50000이다.") quit() 그런 다음에 입력한 데이터의 수를 바탕으로 각 데이터를 입력받는 코드를 작성한다. n = int(input()) if n 5000..

article thumbnail
CodeUp-2623 (최대공약수 구하기)
Coding Test/CodeUp 2023. 3. 3. 01:35

이번 포스트에서는 CodeUp의 2623번 "최대공약수 구하기" 문제를 풀어보겠다. 문제 설명은 다음과 같다. 입력과 출력은 다음과 같다. ## 문제 해석: 두 숫자를 입력받은 다음에, 두 숫자의 최대공약수를 구하는 간단한 문제이다. ## 문제 풀이: 먼저 a, b를 입력받는 코드를 작성한 다음에, int형으로 변환시킨다. 또한 입력값에 대한 검증도 함께 추가한다. a, b = input().split(' ') a, b = int(a), int(b) if a 10000 or b 10000: print("a, b의 값은 1~10000 사이여야 한다.") quit() 이어서 두 수의 최대공약수를 구하는 코드를 작성한다. 여기서는 반복문을 사용하여 마지막 공약수를 최대공..

article thumbnail
CodeUp-4012 (석차 계산)
Coding Test/CodeUp 2023. 3. 2. 01:49

이번 포스트에서는 CodeUp의 4012번 "석차 계산" 문제를 풀어보겠다. 문제 설명은 다음과 같다. 입력과 출력은 다음과 같다. ## 문제 해석: 우선 처리할 점수의 개수를 입력 받는다. 그런 다음에 입력받은 개수를 기반으로 각 점수를 입력받아, 등차와 함께 출력하면 된다. ## 문제 풀이: 먼저 처리할 학생의 수를 입력 받는 코드를 작성한다. n = int(input()) if n > 200 or n 200 or n 200 or n 200 or n

article thumbnail
CodeUp-1805 (입체기동장치 생산공장)
Coding Test/CodeUp 2023. 3. 1. 01:31

이번 포스트에서는 CodeUp의 1805번 "입체기동장치 생산공장" 문제를 풀어보겠다. 문제 설명은 다음과 같다. 입력과 출력은 다음과 같다. ## 문제 해석: 우선 입체기동장치의 수를 입력 받는다. 그런 다음에 입력받은 개수를 기반으로 각각 식별번호와 가스용량을 입력받아, 식별번호로 정렬해서 출력하면 된다. ## 문제 풀이: 먼저 입체기동장치의 수를 입력 받는 코드를 작성한다. while 1: n = int(input()) if n 100: print("1~100 사이의 수를 입력해주세요") continue 또한 개수가 1보다 작거나 100보다 크면 안되므로, 이에 관한 제어문구도 함께 작성한다. 이어서 입력 받은 개수 기반으로 식별번호와 가스용량을 입력받는다. while 1: n = int(input..

article thumbnail
FridaLab (Challenge 6)
Wargame/FridaLab 2022. 9. 30. 00:57

이번 포스트에서는 FridaLab의 Challenge 6 문제에 대해 다루겠다. 문제를 실행하면 다음과 같다. ## 문제 해석 : Challenge 6의 문제 코드는 다음과 같다. package uk.rossmarks.fridalab; /* loaded from: classes.dex */ public class challenge_06 { static int chall06; static long timeStart; public static void startTime() { timeStart = System.currentTimeMillis(); } public static boolean confirmChall06(int i) { return i == chall06 && System.currentTimeMi..

article thumbnail
FridaLab (Challenge 5)
Wargame/FridaLab 2022. 9. 29. 00:05

이번 포스트에서는 FridaLab의 Challenge 5 문제에 대해 다루겠다. 문제를 실행하면 다음과 같다. ## 문제 해석 : Challenge 5의 문제 코드는 다음과 같다. public void chall05(String str) { if (str.equals("frida")) { this.completeArr[4] = 1; } else { this.completeArr[4] = 0; } } Main함수에서 이미 "notfrida"라는 인자를 가진 chall05 함수를 호출하고 있으며 해당 함수를 "frida"라는 인자로 재호출하면 되는 것으로 보인다. ## 문제 풀이 : 우선 우리가 삽입할 JS code를 실행해줄 JSInjector를 작성해보겠다. ### JSInjector : import f..

article thumbnail
FridaLab (Challenge 4)
Wargame/FridaLab 2022. 9. 28. 00:27

이번 포스트에서는 FridaLab의 Challenge 4 문제에 대해 다루겠다. 문제를 실행하면 다음과 같다. ## 문제 해석 : Challenge 4의 문제 코드는 다음과 같다. public void chall04(String str) { if (str.equals("frida")) { this.completeArr[3] = 1; } } chall04 함수는 String값을 인자로 받고 있다. 인자값이 frida인 경우 해당 챌린지를 통과할 수 있는 것으로 보인다. ## 문제 풀이 : 우선 우리가 삽입할 JS code를 실행해줄 JSInjector를 작성해보겠다. ### JSInjector : import frida,sys import argparse def on_message(message, data..

article thumbnail
FridaLab (Challenge 3)
Wargame/FridaLab 2022. 9. 27. 00:08

이번 포스트에서는 FridaLab의 Challenge 3 문제에 대해 다루겠다. 문제를 실행하면 다음과 같다. ## 문제 해석 : Challenge 3의 문제 코드는 다음과 같다. public boolean chall03() { return false; } chall03 함수는 현재 false를 반환하고 있다. chall03가 true를 반환하게 해주면 된다. ## 문제 풀이 : 우선 우리가 삽입할 JS code를 실행해줄 JSInjector를 작성해보겠다. ### JSInjector : import frida,sys import argparse def on_message(message, data): if message['type'] == 'send': print(message['payload']) el..

article thumbnail
FridaLab (Challenge 2)
Wargame/FridaLab 2022. 9. 26. 00:32

이번 포스트에서는 FridaLab의 Challenge 2 문제에 대해 다루겠다. 문제를 실행하면 다음과 같다. ## 문제 해석 : Challenge 2의 문제 코드는 다음과 같다. private void chall02() { this.completeArr[1] = 1; } chall02 함수를 실행하면 되는 것으로 보인다. 단 chall02가 private라는 점을 주의해야 한다. ## 문제 풀이 : 우선 우리가 삽입할 JS code를 실행해줄 JSInjector를 작성해보겠다. ### JSInjector : import frida,sys import argparse def on_message(message, data): if message['type'] == 'send': print(message['p..