**KCSC REV Crackme Write-up**
1.**Cũng như chall kia thì ban đầu vào web ta sẽ thây được như này**
**Tải file crackme.py về đi rồi tính gì tính**
2.**Open file crackme.py lên sẽ thấy một chương trình Py như sau:**
```
secret_flag = "ardLRyTJNc8{VJE3O8M"
alphabet = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz{}_"
def decode_secret(secret):
rotate_const = 41
decoded = ""
for c in secret:
index = alphabet.find(c)
original_index = (index + rotate_const) % len(alphabet)
decoded = decoded + alphabet[original_index]
print(decoded)
def choose_greatest():
value_1 = input("What's your first number? ")
value_2 = input("What's your second number? ")
if not (value_1.isnumeric() and value_2.isnumeric()):
print("Invalid input")
else:
greatest_value = value_1
if value_1 > value_2:
greatest_value = value_1
elif value_1 < value_2:
greatest_value = value_2
print("The number with largest positive magnitude is " + str(greatest_value))
exit()
choose_greatest()
```
**Sau đó để in ra flag em sẽ chỉnh sửa một chút(có tham khảo một tí của gpt =)) )**
```
**Trước khi thực hiện chỉnh sửa, alphabet được định nghĩa như sau:
alphabet = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz{}"
```
Sau đó, chuỗi `secret_flag` được giải mã sử dụng hàm `decode_secret`. Quá trình giải mã này sử dụng một hằng số `rotate_const` là 41 để dịch chuyển các ký tự trong chuỗi `secret_flag`.
Sau khi thực hiện chỉnh sửa, ký tự "_" đã được thêm vào alphabet, và alphabet trở thành:
```
alphabet = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz{}_"
```
Kết quả giải mã của chuỗi `secret_flag` sẽ khác sau khi thực hiện chỉnh sửa. Kết quả giải mã được in ra:
```
Decoded flag: FLAG{EASY_ENCRYPTION}
---HẾT---