← Back to Writeups
CUSTOMEasyMisc

Какие еще каски

XESXOR9/10/20262 min read
#misc#custom#easy#ascii_decoding#linux

Какие еще каски

Platform: taipanbyte | Category: Misc | Type: Challenge | Difficulty: Easy | OS: Linux | Author: XESXOR | Date: 2026-01-13 | Status: Solved Techniques: ASCII_decoding

Summary

Какие еще каски — TaipanByte

Description

Проходя возле строящегося офиса, я подслушал разговор работников, которые говорили о каком-то пароле от входной двери "в каске". Видимо, я плохо понял их строительный юмор, так как пароль ну уж очень длинный.

Пароль ведь не может лежать в каске, так ведь?

Дано: 49 116 36 95 110 48 116 95 64 95 104 51 108 109 51 116

Analysis

The task contains a sequence of numbers separated by spaces. This clearly hints at encoding. Given the context (a password that needs to be decoded), this looks like ASCII character codes. ‍​‌‌​​‌​​​‌‌​​‌​​​​‌‌​‌​​​​‌‌‌​​‌​​‌‌​​​‌​​‌‌‌​​​​​‌‌​‌‌​​​‌‌​​​​‍

Key indicators:

  • Sequence of numbers in the range 32-127 (standard ASCII)
  • Numbers separated by spaces
  • Need to obtain a text password

Solution

Method 1: Python (recommended)

python
#!/usr/bin/env python3

# ASCII codes
codes = [49, 116, 36, 95, 110, 48, 116, 95, 64, 95, 104, 51, 108, 109, 51, 116]

# Decode each code to a character
password = ''.join(chr(code) for code in codes)

print(f"Password: {password}")
print(f"Flag: CTF{{{password}}}")

Output:

Password: REDACTED
Flag: CTF{REDACTED}

‍​‌‌​​‌​​​‌‌​​‌​​​​‌‌​‌​​​​‌‌‌​​‌​​‌‌​​​‌​​‌‌‌​​​​​‌‌​‌‌​​​‌‌​​​​‍

Method 2: Step-by-step decoding

CodeSymbolCodeSymbol
49164@
116t95_
36$104h
95_513
110n108l
480109m
116t513
95_116t

Result: REDACTED

Tools and Commands

Python

bash
python3 -c "print(''.join(chr(x) for x in [49, 116, 36, 95, 110, 48, 116, 95, 64, 95, 104, 51, 108, 109, 51, 116]))"

‍​‌‌​​‌​​​‌‌​​‌​​​​‌‌​‌​​​​‌‌‌​​‌​​‌‌​​​‌​​‌‌‌​​​​​‌‌​‌‌​​​‌‌​​​​‍

Bash (one-liner)

bash
echo "49 116 36 95 110 48 116 95 64 95 104 51 108 109 51 116" | tr ' ' '\n' | awk '{printf "%c", $1}' && echo

Related Techniques

  • Base64 decoding — when data is encoded in Base64
  • Hex decoding — when data is in hexadecimal format
  • ROT13/Caesar cipher — when letter shifting is used
  • Substitution cipher — when letters are replaced with other letters

Notes

The task name "Какие еще каски" (What helmets?) is a wordplay:

  • "Каска" (kaska) — construction helmet
  • "В каске" (v kaske / in the helmet) — sounds like "в коде" (v kode / in the code)
  • The password "can't be in a helmet" — a hint that you need to decode the hidden text ‍​‌‌​​‌​​​‌‌​​‌​​​​‌‌​‌​​​​‌‌‌​​‌​​‌‌​​​‌​​‌‌‌​​​​​‌‌​‌‌​​​‌‌​​​​‍

This is a classic ASCII decoding task, often found in beginner CTF competitions. ‍​‌‌​​‌​​​‌‌​​‌​​​​‌‌​‌​​​​‌‌‌​​‌​​‌‌​​​‌​​‌‌‌​​​​​‌‌​‌‌​​​‌‌​​​​‍