Skip to content

Commit

Permalink
[DH] some reversing cleared
Browse files Browse the repository at this point in the history
  • Loading branch information
namaek2 committed May 29, 2024
1 parent 786c876 commit c64d678
Show file tree
Hide file tree
Showing 8 changed files with 238 additions and 0 deletions.
36 changes: 36 additions & 0 deletions DreamHack/16-rev-basic-2.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
#data:0000000140003000 aC db 'C',0 ; DATA XREF: sub_140001000+28↑o
#data:0000000140003002 align 4
#data:0000000140003004 aO db 'o',0
#data:0000000140003006 align 8
#data:0000000140003008 aM db 'm',0
#data:000000014000300A align 4
#data:000000014000300C aP db 'p',0
#data:000000014000300E align 10h
#data:0000000140003010 a4 db '4',0
#data:0000000140003012 align 4
#data:0000000140003014 aR db 'r',0
#data:0000000140003016 align 8
#data:0000000140003018 aE db 'e',0
#data:000000014000301A align 4
#data:000000014000301C db '_',0
#data:000000014000301E align 20h
#data:0000000140003020 aT db 't',0
#data:0000000140003022 align 4
#data:0000000140003024 db 'h',0
#data:0000000140003026 align 8
#data:0000000140003028 aE_0 db 'e',0
#data:000000014000302A align 4
#data:000000014000302C db '_',0
#data:000000014000302E align 10h
#data:0000000140003030 aA db 'a',0
#data:0000000140003032 align 4
#data:0000000140003034 aR_0 db 'r',0
#data:0000000140003036 align 8
#data:0000000140003038 aR_1 db 'r',0
#data:000000014000303A align 4
#data:000000014000303C a4_0 db '4',0
#data:000000014000303E align 20h
#data:0000000140003040 aY db 'y',0
#data:0000000140003042 align 10h


13 changes: 13 additions & 0 deletions DreamHack/18-rev-basic-4.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
import binascii
output = "24 27 13 C6 C6 13 16 E6 47 F5 26 96 47 F5 46 27 13 26 26 C6 56 F5 C3 C3 F5 E3 E3 00".replace(" ", "")
output = binascii.unhexlify(output)


input = ""
for i in range(len(output)):
for j in range(256):
calc = ((16 * j) | (j >> 4)) % 256
if calc == output[i]:
input += chr(j)

print(input) #Br1ll1ant_bit_dr1bble_<<_>>
33 changes: 33 additions & 0 deletions DreamHack/2-simple-operation.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main() {
unsigned int v6; // 랜덤 숫자 (사용자 입력)
int v7; // 필요한 입력값
unsigned int v11; // XOR 결과
char s[9]; // 결과를 저장할 문자열
char s1[9] = {0}; // 뒤집힌 문자열 결과
const char *s2 = "a0b4c1d7"; // 목표 문자열
char reversed_s2[9] = {0}; // 목표 문자열의 역순
char buf[50] = "Here is a secret message!"; // 보상 메시지

// 목표 문자열 뒤집기
for (int i = 0; i < 8; ++i) {
reversed_s2[i] = s2[7 - i];
}

// 사용자로부터 랜덤 숫자 입력 받기
printf("Enter the random number: ");
scanf("%x", &v6); // 16진수 입력

// 목표 문자열을 역순으로 변경 후 XOR 연산을 통해 필요한 입력값 계산
sscanf(reversed_s2, "%08x", &v11);
v7 = v11 ^ v6;

// 결과 출력
printf("To achieve the target result '%s', you need to input: %d\n", s2,
v7);

return 0;
}
43 changes: 43 additions & 0 deletions DreamHack/20-rev-basic-6.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
import binascii

arr3000 = "00 4D 51 50 EF FB C3 CF 92 45 " + \
"4D CF F5 04 40 50 43 63 0E 00 00"

arr3000=arr3000.replace(" ", "")
arr3000 = binascii.unhexlify(arr3000)

arr3020 = "63 7C 77 7B F2 6B 6F C5 30 01 67 " + \
"2B FE D7 AB 76 CA 82 C9 7D FA " + \
"59 47 F0 AD D4 A2 AF 9C A4 72 " + \
"C0 B7 FD 93 26 36 3F F7 CC 34 " + \
"A5 E5 F1 71 D8 31 15 04 C7 23 " + \
"C3 18 96 05 9A 07 12 80 E2 EB 27 " + \
"B2 75 09 83 2C 1A 1B 6E 5A A0 52 " + \
"3B D6 B3 29 E3 2F 84 53 D1 00 " + \
"ED 20 FC B1 5B 6A CB BE 39 4A " + \
"4C 58 CF D0 EF AA FB 43 4D 33 " + \
"85 45 F9 02 7F 50 3C 9F A8 51 A3 " + \
"40 8F 92 9D 38 F5 BC B6 DA 21 " + \
"10 FF F3 D2 CD 0C 13 EC 5F 97 " + \
"44 17 C4 A7 7E 3D 64 5D 19 73 " + \
"60 81 4F DC 22 2A 90 88 46 EE " + \
"B8 14 DE 5E 0B DB E0 32 3A 0A " + \
"49 06 24 5C C2 D3 AC 62 91 95 E4 " + \
"79 E7 C8 37 6D 8D D5 4E A9 6C " + \
"56 F4 EA 65 7A AE 08 BA 78 25 " + \
"2E 1C A6 B4 C6 E8 DD 74 1F 4B " + \
"BD 8B 8A 70 3E B5 66 48 03 F6 0E " + \
"61 35 57 B9 86 C1 1D 9E E1 F8 " + \
"98 11 69 D9 8E 94 9B 1E 87 E9 " + \
"CE 55 28 DF 8C A1 89 0D BF E6 " + \
"42 68 41 99 2D 0F B0 54 BB 16"
arr3020=arr3020.replace(" ", "")
arr3020 = binascii.unhexlify(arr3020)

input = ""
for i in range(0x12):
for j in range(len(arr3020)):
if arr3000[i] == arr3020[j]:
input += chr(j)

print(input)
14 changes: 14 additions & 0 deletions DreamHack/22-rev-basic-8.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
import binascii

#data3000 = "AC F3 0C 25 A3 10 B7 25 16 C6 B7 BC 07 25 02 D5 C6 11 07 C5 00 00 00 00 00 00 00 00 00 00 00 00".replace(" ", "")
data3000 = [0x0AC, 0x0F3, 0x0C, 0x25, 0x0A3, 0x10, 0x0B7, 0x25, 0x16, 0x0C6, 0x0B7, 0x0BC, 0x7, 0x25, 0x2, 0x0D5, 0x0C6, 0x11, 0x7, 0x0C5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]
#data3000 = binascii.unhexlify(data3000)
input = ""
for i in range(0x16):
a = data3000[i] * 0b11111011
#a = int(a)
a=a%256
input += chr(a)
print(a)

print(input)
24 changes: 24 additions & 0 deletions DreamHack/536-infested-terran.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
import binascii

qword_4020 = "03 01 03 03 07 01 05 57 65 27 72 65 20 67 6F 6E 6E 61 20 62 65 20 72 69 63 68 3F 20 6E 65 76 65 72 2E 2E 2E"
qword_4020 = qword_4020.replace(" ", "")
qword_4020 = binascii.unhexlify(qword_4020)

qword_4140 = [0xCC, 0x0114, 0x0285, 0x032A, 0x05D1, 0x0632, 0x0736, 0x28DB, 0x5119, 0x607C, 0x8BAE, 0x9FCD, 0xA5CD, 0xB91D, 0xCECB, 0xE36B, 0xFB7B, 0x010F2F, 0x01154F, 0x012811, 0x013DC4, 0x0144E4, 0x015D62, 0x01745A, 0x01899F, 0x01B2A7, 0x01BFF1, 0x01C6B1, 0x01F0CD, 0x02074A, 0x021DE0, 0x0244EF, 0x0271E9, 0x027B9D, 0x0284C7, 0x029B3D]
#qword_4140 = qword_4140.replace(" ", "")
#qword_4140 = binascii.unhexlify(qword_4140)

input =""
for i in range(36) :
a = 0
v6=qword_4140[i]
#for j in range (i) :
if i > 0:
v6 = v6 - qword_4140[i-1]

#print(v6)
a = v6 / qword_4020[i]
input += chr(int(a))

print(input)

44 changes: 44 additions & 0 deletions webhackingkr/old31.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
import requests

def send_get_request():
url = "http://webhacking.kr/challenge/web-16/?server=1.233.148.75"

# 최소한의 헤더 설정
headers = {
'Cache-Control': 'no-store, no-cache, must-revalidate',
'Pragma': 'no-cache',
'Vary': 'Accept-Encoding',
'Keep-Alive': 'timeout=5, max=100',
'Connection': 'Keep-Alive',
'Content-Type': 'text/html; charset=UTF-8'
}

# 쿠키 설정
cookies = {
"PHPSESSID":"752rcqm6dc16esi752lefgk09c",
}



# GET 요청 보내기
response = requests.get(url, headers=headers, cookies=cookies)

# 응답 상태 코드 확인
if response.status_code == 200:
print("Request successful!")
else:
print(f"Request failed with status code: {response.status_code}")

start_port = 0
end_port = 100

for port in range(start_port, end_port + 1):
url = f'http://webhacking.kr/challenge/web-16/?server=1.233.148.75'
try:
response = requests.get(url)
# 응답 상태 코드 확인
print(response.text)
print(f'{port}: Status Code {response.status_code}')
except requests.exceptions.RequestException as e:
# 예외 처리 (연결 실패 등)
print(f'Error {e}')
31 changes: 31 additions & 0 deletions webhackingkr/old32.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
import requests

def send_get_request():
url = "http://webhacking.kr/challenge/code-5?hit=science4588"

# 최소한의 헤더 설정
headers = {
'Cache-Control': 'no-store, no-cache, must-revalidate',
'Pragma': 'no-cache',
'Vary': 'Accept-Encoding',
'Keep-Alive': 'timeout=5, max=100',
'Connection': 'Keep-Alive',
'Content-Type': 'text/html; charset=UTF-8'
}

# 쿠키 설정
cookies = {
"PHPSESSID": "i30694d6kqr592s7sqbccl3b2q",
}

# GET 요청 보내기
response = requests.get(url, headers=headers, cookies=cookies)

# 응답 상태 코드 확인
if response.status_code == 200:
print("Request successful!")
else:
print(f"Request failed with status code: {response.status_code}")

for i in range(200):
send_get_request()

0 comments on commit c64d678

Please sign in to comment.