hacktricks/cryptography/crypto-ctfs-tricks.md
2024-02-10 13:11:20 +00:00

14 KiB

Trikovi za Crypto CTF-ove

Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini da podržite HackTricks:

Online baze heševa

Čarobni automatski rešavači

Enkoderi

Većina enkodiranih podataka može se dekodirati pomoću ovih 2 resursa:

Automatski rešavači za zamenu

Cezar - ROTx automatski rešavači

Atbash šifra

Automatski rešavači za osnovne enkodiranje

Proverite sve ove baze sa: https://github.com/dhondta/python-codext

  • Ascii85
  • BQ%]q@psCd@rH0l
  • Base26 [A-Z]
  • BQEKGAHRJKHQMVZGKUXNT
  • Base32 [A-Z2-7=]
  • NBXWYYLDMFZGCY3PNRQQ====
  • Zbase32 [ybndrfg8ejkmcpqxot1uwisza345h769]
  • pbzsaamdcf3gna5xptoo====
  • Base32 Geohash [0-9b-hjkmnp-z]
  • e1rqssc3d5t62svgejhh====
  • Base32 Crockford [0-9A-HJKMNP-TV-Z]
  • D1QPRRB3C5S62RVFDHGG====
  • Base32 Extended Hexadecimal [0-9A-V]
  • D1NMOOB3C5P62ORFDHGG====
  • Base45 [0-9A-Z $%*+-./:]
  • 59DPVDGPCVKEUPCPVD
  • Base58 (bitcoin) [1-9A-HJ-NP-Za-km-z]
  • 2yJiRg5BF9gmsU6AC
  • Base58 (flickr) [1-9a-km-zA-HJ-NP-Z]
  • 2YiHqF5bf9FLSt6ac
  • Base58 (ripple) [rpshnaf39wBUDNEGHJKLM4PQ-T7V-Z2b-eCg65jkm8oFqi1tuvAxyz]
  • pyJ5RgnBE9gm17awU
  • Base62 [0-9A-Za-z]
  • g2AextRZpBKRBzQ9
  • Base64 [A-Za-z0-9+/=]
  • aG9sYWNhcmFjb2xh
  • Base67 [A-Za-z0-9-.!~_]
  • NI9JKX0cSUdqhr!p
  • Base85 (Ascii85) [!"#$%&'()*+,-./0-9:;<=>?@A-Z[\]^_`a-u]
  • BQ%]q@psCd@rH0l
  • Base85 (Adobe) [!"#$%&'()*+,-./0-9:;<=>?@A-Z[\]^_`a-u]
  • <~BQ%]q@psCd@rH0l~>
  • Base85 (IPv6 or RFC1924) [0-9A-Za-z!#$%&()*+-;<=>?@^`{|}~_]
  • Xm4yV_|Y(V{dF>`
  • Base85 (xbtoa) [!"#$%&'()*+,-./0-9:;<=>?@A-Z[\]^_`a-u]
  • xbtoa Begin\nBQ%]q@psCd@rH0l\nxbtoa End N 12 c E 1a S 4e6 R 6991d
  • Base85 (XML) [0-9A-Za-y!#$()*+,-./:;=?@^`{|}~z_]
  • Xm4y|V{~Y+V}dF?
  • Base91 [A-Za-z0-9!#$%&()*+,./:;<=>?@[]^_`{|}~"]
  • frDg[*jNN!7&BQM
  • DmPsv8J7qrlKEoY7
  • MEGAN35 [3G-Ub=c-pW-Z/12+406-9Vaq-zA-F5]
  • kLD8iwKsigSalLJ5
  • ZONG22 [ZKj9n+yf0wDVX1s/5YbdxSo=ILaUpPBCHg8uvNO4klm6iJGhQ7eFrWczAMEq3RTt2]
  • ayRiIo1gpO+uUc7g
  • ESAB46 []
  • 3sHcL2NR8WrT7mhR
  • MEGAN45 []
  • kLD8igSXm2KZlwrX
  • TIGO3FX []
  • 7AP9mIzdmltYmIP9mWXX
  • TRIPO5 []
  • UE9vSbnBW6psVzxB
  • FERON74 []
  • PbGkNudxCzaKBm0x
  • GILA7 []
  • D+nkv8C1qIKMErY1
  • Citrix CTX1 []
  • MNGIKCAHMOGLKPAKMMGJKNAINPHKLOBLNNHILCBHNOHLLPBK

http://k4.cba.pl/dw/crypo/tools/eng_atom128c.html - 404 Dead: https://web.archive.org/web/20190228181208/http://k4.cba.pl/dw/crypo/tools/eng_hackerize.html

HackerizeXS [╫Λ↻├☰┏]

╫☐↑Λ↻Λ┏Λ↻☐↑Λ

Morse

Морзе

.... --- .-.. -.-. .- .-. .- -.-. --- .-.. .-

UUencoder

UUencoder je tehnika enkodiranja koja se koristi za pretvaranje binarnih podataka u ASCII format. Ova tehnika je često korišćena u kriptografiji i komunikaciji putem mejla. UUencoder konvertuje binarne podatke u ASCII karaktere kako bi se omogućilo slanje podataka putem tekstualnih formata koji podržavaju samo ASCII karaktere. Ova tehnika je korisna u situacijama kada je potrebno preneti binarne podatke preko kanala koji podržava samo tekstualne formate.

begin 644 webutils_pl
M2$],04A/3$%(3TQ!2$],04A/3$%(3TQ!2$],04A/3$%(3TQ!2$],04A/3$%(
M3TQ!2$],04A/3$%(3TQ!2$],04A/3$%(3TQ!2$],04A/3$%(3TQ!2$],04A/
F3$%(3TQ!2$],04A/3$%(3TQ!2$],04A/3$%(3TQ!2$],04A/3$$`
`
end

XXEncoder

XXEncoder je jednostavan alat koji se koristi za enkodiranje i dekodiranje podataka u različitim formatima. Može se koristiti za enkodiranje tekstualnih podataka u format koji je pogodan za prenos preko HTTP zahteva. Takođe može biti koristan za enkodiranje binarnih podataka kao što su slike ili fajlovi. Ovaj alat je često korišćen u CTF takmičenjima za rešavanje kriptografskih izazova.

begin 644 webutils_pl
hG2xAEIVDH236Hol-G2xAEIVDH236Hol-G2xAEIVDH236Hol-G2xAEIVDH236
5Hol-G2xAEE++
end

YEncoder

YEncoder je jednostavan algoritam enkodiranja koji se koristi za enkodiranje binarnih podataka u ASCII format. Ovaj algoritam je često korišćen u CTF takmičenjima za skrivanje informacija.

Da biste dekodovali YEncoded podatke, možete koristiti različite online alate ili napisati sopstveni skript. Kada dekodujete podatke, dobićete originalne binarne podatke.

Evo primera kako možete dekodovati YEncoded podatke koristeći Python skript:

import binascii

def ydecode(data):
    decoded_data = ''
    i = 0
    while i < len(data):
        if data[i] == '=':
            break
        char = ord(data[i]) - 42
        decoded_data += chr(char)
        i += 1
    return binascii.unhexlify(decoded_data)

encoded_data = 'Y29vbCBkYXRh'
decoded_data = ydecode(encoded_data)
print(decoded_data)

Ovaj skript će dekodovati YEncoded podatke 'Y29vbCBkYXRh' i ispisati originalne binarne podatke 'cool data'.

Kada se susretnete sa YEncoded podacima tokom CTF takmičenja, važno je da pažljivo proučite kako su podaci enkodirani i koristite odgovarajuće metode za dekodiranje.

=ybegin line=128 size=28 name=webutils_pl
ryvkryvkryvkryvkryvkryvkryvk
=yend size=28 crc32=35834c86

BinHex

BinHex je metoda enkodiranja koja se koristi za pretvaranje binarnih podataka u tekstualni format. Ova tehnika je često korišćena u prošlosti za prenos binarnih fajlova putem emaila ili drugih tekstualnih kanala komunikacije. BinHex enkodiranje koristi 6-bitnu ASCII enkodiranu verziju originalnih binarnih podataka. Ova metoda takođe dodaje kontrolne karaktere kako bi se obezbedila integritet podataka prilikom prenosa. BinHex enkodiranje se može dekodirati kako bi se dobili originalni binarni podaci.

(This file must be converted with BinHex 4.0)
:#hGPBR9dD@acAh"X!$mr2cmr2cmr!!!!!!!8!!!!!-ka5%p-38K26%&)6da"5%p
-38K26%'d9J!!:

ASCII85

ASCII85 je metoda enkodiranja koja se koristi za pretvaranje binarnih podataka u tekstualni format. Ova tehnika je često korišćena u CTF izazovima i može biti korisna prilikom rešavanja kriptografskih zagonetki. ASCII85 enkodiranje se zasniva na pretvaranju svakih 4 bajta binarnih podataka u 5 ASCII karaktera. Ova tehnika je slična Base64 enkodiranju, ali ASCII85 omogućava efikasnije enkodiranje podataka. Da biste dekodovali ASCII85 enkodirane podatke, možete koristiti različite alate i biblioteke dostupne na internetu.

<~85DoF85DoF85DoF85DoF85DoF85DoF~>

Dvorak tastatura

drnajapajrna

A1Z26

Slova u njihovu numeričku vrednost

8 15 12 1 3 1 18 1 3 15 12 1

Enkodiranje pomoću Afine šifre

Slovo u broj (ax+b)%26 (a i b su ključevi, a x je slovo) i rezultat se vraća nazad u slovo

krodfdudfrod

SMS Kod

Multitap zamenjuje slovo ponavljajućim brojevima definisanim odgovarajućim kodom na tastaturi mobilnog telefona (Ovaj režim se koristi prilikom pisanja SMS poruka).
Na primer: 2=A, 22=B, 222=C, 3=D...
Možete prepoznati ovaj kod jer ćete videti** više puta ponovljene brojeve**.

Ovaj kod možete dekodirati na: https://www.dcode.fr/multitap-abc-cipher

Bacon Kod

Zamenite svako slovo sa 4 A ili B (ili 1 i 0)

00111 01101 01010 00000 00010 00000 10000 00000 00010 01101 01010 00000
AABBB ABBAB ABABA AAAAA AAABA AAAAA BAAAA AAAAA AAABA ABBAB ABABA AAAAA

Runovi

Kompresija

Raw Deflate i Raw Inflate (obe možete pronaći u Cyberchef-u) mogu kompresovati i dekompresovati podatke bez zaglavlja.

Jednostavna Kriptografija

XOR - Automatsko rešavanje

Bifid

Potreban je ključna reč

fgaargaamnlunesuneoa

Vigenere

Potreban je ključna reč

wodsyoidrods

Jaka kriptografija

Fernet

2 base64 stringa (token i ključ)

Token:
gAAAAABWC9P7-9RsxTz_dwxh9-O2VUB7Ih8UCQL1_Zk4suxnkCvb26Ie4i8HSUJ4caHZuiNtjLl3qfmCv_fS3_VpjL7HxCz7_Q==

Key:
-s6eI5hyNh8liH7Gq0urPC-vzPgNnxauKvRO4g03oYI=

Samirovo deljenje tajni

Tajna se deli na X delova, a za njeno povraćanje potrebno je Y delova (Y <=X).

8019f8fa5879aa3e07858d08308dc1a8b45
80223035713295bddf0b0bd1b10a5340b89
803bc8cf294b3f83d88e86d9818792e80cd

http://christian.gen.co/secrets/

OpenSSL brute-force

Alati

Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u: