8. 11. 2024

CTF - The Catch 2024 - DNS madness

 Pri správe infraštruktúry musí oddelenie Operations udržiavať veľké množstvo DNS záznamov vo veľa zónach. DNS správca zošalel z obrovského množstva záznamov, sediac pred monitorom nakláňajúc sa sem a tam hovoril opakovane, o jeho doméne infra.tcc ako o nejakom milášikovi z pána prsteňov.

Mám za úlohu preskúmať zóny, záznamy a ich počty, aby sme nabudúce prijali odolnejšieho správcu. Ako pomôcku máme, že než sa zbláznil vravel o sekundárnych serveroch a AXFR/IXFR distribúcií zón.

CTF - The Catch 2024 - Admin Johnson

 Admin Johnson začal testovať zálohovacie procedúry na serveri johnson-backup.cypherfix.tcc. Nechal ale proces rozpracovaný z dôvodu iných zaujímavých úloh. Mám zistiť, či je v súčasnom stave napadnuteľný.

Ako pomôcku dostávam, že admin Johnson nie je dobrý v dodržiavaní hygieny hesiel.

7. 11. 2024

CTF - The Catch 2024 - Long secure password

Prejdem zo sekcie úloh "Miscellaneous" na sekciu "Security concerns".
Nový kolega prišiel s moderným spôsobom, ako vytvoriť zapamätateľné heslá. Rád by ho implementoval ako nový štandard v TCC. Každý používateľ v TCC-CSIRT dostane kartičku so znakmi v mriežke a vyberie si svoje heslo na základe počiatočného políčka, smeru a počtu znakov.

Pre skeptikov zverejnil svoju kartičku a vyzval kolegov na prihlásenie na jeho vlastný SSH server (password-card-rules.cypherfix.tcc) pod jeho loginom "futurethinker".
Mám úlohu overiť slabiny tejto metódy.

Ako pomôcku dostávam, že kolegovo obľúbené číslo je 18 a teda počet znakov hesla bude pravdepodobne tento.

6. 11. 2024

CTF - The Catch 2024 - Old service

 V tiketovacom systéme sa šíria klebety, že niekde na sieti beží stará neudržiavaná služba. Táto môže byť bezpečnostným rizikom, aj keď sa volá 3S - "Super Secure Service". Starší zamestnanci vspomínajú, že mala doménové meno supersecureservice.cypherfix.tcc. Táto neexistuje na aktuálnom DNS serveri, ale nejaká informácia môže byť na starom ns6-old.tcc, ktorý sa bude čoskoro rušiť. Ďalšia úloha za 2 body.

Preskúmaj službu a zisti čo najviac.

5. 11. 2024

CTF - The Catch 2024 - Leonidas

Náš IDS (intrusion detection system) zaznamenal podozrivú komunikáciu medzi zariadením srv-test23.cypherfix.tcc (10.99.24.23, 2001:db8:7cc::24:23) v našom obvode a C2 botnetom Leonidas300. Používateľ a správca zariadenia v jednom nemá poňatia ako je to možné a odmieta vypnúť dôležité testovacie zariadenie (ako VIP si zjavne môže dovoliť komplikovať vyšetrovanie). Ale je ochotný dodať ssh kľúč a testovacieho používateľa pre preskúmanie zariadenia.

Mojou úlohou je analýza incidentu, hlavne čo spôsobuje občasnú detekciu komunikácie s botnetom. Úloha je za 2 body.

IDS je dostupný na http://ids.cypherfix.tcc

4. 11. 2024

CTF - The Catch 2024 - Who is who?

 Prvá úloha v The Catch po prijatí za analytika, ktorú som si vybral. V CSIRT zistili, že analytici si niesú uplne istí v základných pojmoch, skratky sa im pletú. Preto je tu úloha zodpovedať správne na 10 kvízových otázok. Je potrebné vybrať správnu zo 4 možností. Úloha je za 1 bod.

Moje odpovede som napísal malým číslom vpravo, väčšina by mala byť správna.

CTF - The Catch 2024 - Intro

 Prvý októbrový pondelok začal ôsmy ročník The Catch. Počas 3 týždňov bolo možné hravou formou CTF súťažne riešiť úlohy súvisiace s IT bezpečnosťou. Pre zapojenie sa stačilo, po spustení súťaže, zaregistrovať na stránke www.thecatch.cz - zadať login, heslo a mail.

Na webe je bodkovaná deliaca čiara, má bodky v dvoch polohách - vyššie a nižšie. Informácia uložená v dvoch úrovniach, bez zjavných oddeľovačov, je zvyčajne kódovaná binárne. Prepísal som teda bodky do 0 a 1 a preložil cez CyberChef ako 7-bitový ascii reťazec: 20 years of CESNET-CERTS

To bude téma tohto ročníka.

* CESNET-CERTS - je názov CSIRT tímu združenia CESNET od r.2004


0. Introduction (0 bodov)

Vítajú ma, ako sľubného kandidáta, do nového bezpečnostného tímu TCC-CSIRT (The Catch by Cesnet - Computer Security Incident Response Team). Očakáva ma kariéra plná krvi, potu a sĺz, teda vlastne veľkých skúseností, príležitostí a pocitu dobre vykonanej práce. Ak mám záujem, stačí prepísať vlajku :
FLAG{BTb5-QfYb-JzAh-Zte0}

Po zadaní vlajky sa mi odomkla sekcia CSIRT - Training center.

31. 10. 2024

Úprava - LED reflektor Parkside PAS 3000 A1 - režim nízkej spotreby

Prenosné svietidlo bolo vo výpredaji Lidl z bežných 22€ na 11€. Obsahuje 2 ks LED COB modulov spojené kĺbom s ohybom do 270st. V zloženom stave svietia od seba (do priestoru), spínajú sa tlačidlom v režime 100%, 50% prvý panel, potom 100%, 50% druhý, potom 100%, 50% oba panely. Po ponechaní pár sekúnd v nejakom režime ďalšie stlačenie svetlo vypne.

9. 10. 2024

Nabíjanie - Playstation Move ovládač

 Ovládač "Playstation Move" sa nabíja po pripojení cez mini-USB kábel priamo na konzolu. Pripojenie na klasickú USB nabíjačku nefunguje, potrebuje najskôr komunikovať.

Existuje ale alternatívne pripojenie cez výstupy na fotke. Pripojený ovládač spotrebúva prúd 500mA, ktorý postupne s nabitím batérie klesá. Nabíjanie indikuje červená LED, batéria má kapacitu 1350mAh.

4. 10. 2024

Nastavenie digitálnej elektrostatickej hlavice - Elektrobock HD13

 Po osadení 2x AA batériami sa hlavica adaptuje (pretočí ventilom do krajných polôh). Pdf návod sa dá stiahnuť na stránkach českého výrobcu. Pri nákupe myslieť aj na redukcie.

Nastavenie času

  • stlačím 1-2x ENTER⏎ (stredné tl.), kým nesvieti len AUTO/MANU/OFF uprostred dispeja
  • cez +/- hľadám voľbu CLo, potvrdím ⏎
  • začne blikať čas, +/- nastavím hodiny, potvrdím ⏎
  • rovnako minúty, deň, mesiac, rok
  • vyskočím 2x dlhým stlačením ⏎

12. 8. 2024

Úprava - stíšenie spájkovacej stanice QUICKO T12-952

 Vždy po zapnutí táto stanica nepríjemne pípne zhruba na 2 sekundy. Následne už nepípa, pretože v nastavení som si vybral, aby bola ticho. Otravné to bolo najmä v noci, preto som sa rozhodol piezo vybrať. Jediné, kedy môže chýbať je pípnutie pri prepínaní do úsporného režimu.

Doska T12-952 s odstráneným piezo reproduktorom

8ohm odpor telesa v T12 hrotoch určuje výkon pri jednotlivých napätiach (niekedy sa uvádza 16V ako minimum keď doska obsahuje navyše 12V stabilizátor):
 12V-1,5A-18W, 16V-2A-32W, 19V-2,4A-45W, 21V-2,6A-55W, 24V-3A-72W

(procesor STC 15W408AS typu 8051, dual opamp LM358, p-mosfet 40V 22A 22P04, 3,3V stabilizátor)

Vývody u 4 pinového konektora spájkovacieho pera obsahujú:
1. kostru (vodivý povrch špičky hrotu), 2.kladný a 4.záporný vývod telesa zapojeného v sérií s termočlánkom, 3.senzor pohybu zapojený voči mínus vývodu telesa. 5 pin môže pripájať NTC termistor umiestnený v rúčke pera.

10. 8. 2024

Úprava - zníženie teploty Parkside spájkovačky PLSA 20-Li C3

"Bezdrôtová" batériová spájkovačka Parkside má uvedenú pracovnú teplotu okolo 480st.C. Pri tejto teplote sa prepaľuje cín a ničia sa rýchlo hroty - ľudia ako Big Clive prišli na to ako túto teplotu znížiť.

Riadiaca doska sníma teplotu termočlánku a teda regulácia tu je, len nastavená vysoko. Prvá verzia A1 umožňovala doladenie teploty cez jediné tlačítko (kalibrácia), neskoršia B2 už nie. Vznikla ale tabuľka s hodnotami rezistorov, ktoré možno prispájkovať sériovo ku cca. 50ohm termočlánku pre zníženie teploty.

odporteplota A1B2
0480480
10460425    
22410380
33360370
47315360
56277340
10077300

Úprava je možná priamo v rúčke, bez rozoberania zlepenej stanice, použil som odporúčaných 22ohm do série s posledným drôtom.

9. 8. 2024

Shell - paralelné spúšťanie podprocesov vrámci skriptu

Niekedy, z výkonového hľadiska, chceme spustiť paralelne viaceré podprocesy zo shell skriptu a čakať kým všetky dobehnú, než pokračujeme ďalším kódom.

Prvá možnosť je príkaz wait. Ten čaká na všetky podprocesy, ja však zozbieram čísla procesov do premennej PIDS (reťazec), aby som čakal len na konkrétne.

PIDS=""
FAIL=0
for subor in `ls *.txt`; do
   spracuj.sh $subor &
   PIDS="$PIDS $!"
done
for job in $PIDS; do
  wait $job || FAIL=1
done

Ak chceme spustiť niečo s x-paralelnými procesmi, aj s čakaním na dobehnutie, je tu druhá možnosť.

Xargs ponúka parameter P pre paralelizmus, v parametri I sa dá definovať skratka nahradzujúca parameter v paralelne spúšťanom príkaze (tu server z textového zoznamu, z ktorého SCP skopíruje subor.txt, paralelne 3 procesmi).

grep -v ^# zoznam_serverov.txt | xargs -n1 -I{} -P3 scp -B -o ConnectTimeout=6 {}:/tmp/subor.txt ./subory 2>log/log_err.log

Úprava - zníženie prúdu nabíjačky Parkside zo 4,5A na polovicu

Nabíjačka Parkside PLG20C3 (12,99€ v akcii) je stavaná na nabíjanie lítiových batérií X20Vteam (IAN418060_2210). Nabíja prúdom 4,5A na napätie 21,5V. Na rozdiel od slabšej verzie obsahuje 4cm 12V ventilátor (12S4010M) v hornej časti, nasávajúci vzduch do vnútra (po pripojení batérie) a dvojitá dióda na sekundári je na chladiči.

Odporúčané prúdy pre nabíjanie LiIon článkov sú do 1/2C, teda pre 2Ah je to 1A, pre 4Ah prúd 2A, pre 8Ah zas do 4A. Nakúpil som 4Ah batérie a keďže mi nevadí 2 hodinový čas potrebný na nabitie, rozhodol som sa batérie (a nabíjačku) šetriť a znížiť prúd na polovicu - zo 4,5A na 2,25A.

odspájkovaný jeden rezistor

Nabíjačka sníma (na zápornom póle) prúd ako úbytok napätia na dvoch paralelne zapojených 0,1Ohm rezistoroch. Po odpojení jedného teda klesne regulovaný nabíjací prúd na polovicu.

Nabíjačka aj batéria sú teraz podstatne chladnejšie.

26. 6. 2024

CTF - CyberGame2024 - MailLeaks

V sekcii "Forensics" tohto ročníka súťaže CyberGame sa nachádzala téma "MailLeaks".

Forenzná analýza - hráči hľadajú v dátach z postihnutých počítačov digitálne stopy, ktoré ich privedú k vlajke

2.1 Destination

Pred niekoľkými dňami sme boli hacknutí, skontrolovali sme systém na malware pomocou antivírusu, ale nič sme nenašli, ale zrazu nám začala unikať pošta. Ako došlo k úniku pošty a na akú IP sa odoslala?
Vlajka je IP adresa, na ktorú boli e-maily odoslané.

Stiahol som si zo zadania súbor files.tar.gz, po rozbalení gz má tar súbor 3,1GB. Obsahuje image linuxového filesystému Ubuntu 22.04LTS.
Tento .tar sa dá bez ďalšieho rozbalenia množstva súborov priamo prechádzať napr v Midnight Commanderi.
Ako prvé preskúmam jediný používateľský adresár /home/bob. V .profile ani .bashrc nie je nič podozrivé. V .bash_history je vidieť, že tento súbor niekto vyčistil. Následne sa pozrel do /var/log/auth.log a potom zmenil svoje (bob) heslo.

Pozrel som preto /var/log/auth.log, vidieť tu opakované pokusy (slovníkový útok?) o prelomenie hesla pre bob používateľa, až po úspešné prihlásenie sa útočníka:
Mar 26 12:46:58 mail sshd[76661]: Accepted password for bob from 198.18.14.145 port 61433 ssh2

Nasledujú záznamy s pokusmi o "sudo vi /var/logs/auth.log" (preklep) a "sudo vi /var/log/auth.log" o 12:47:21.
Vyzerá, že 27.3. o 2:23 sa prihlásil skutočný majiteľ konta bob z lokálnej siete (192.168...) a spravil nález.

16. 6. 2024

CTF - CyberGame2024 - Documents

V sekcií "Malware" tohto ročníka súťaže CyberGame sa nachádzala téma "Documents".

Malvérová analýza - aby hráči získali vlajku, zisťujú, ako funguje škodlivý kód a hľadajú ďalšie spojitosti.

1.1 Categorization

Jeden z našich klientov zistil škodlivú aktivitu a podal podozrivý kód na analýzu. Tento kód, ktorý bol stiahnutý ako nástroj na kategorizáciu dokumentov v systéme.

Dostali ste za úlohu analyzovať tento súbor. Aké informácie z neho môžete zistiť?

Stiahol som si prílohu, súbor categorization.jl
import Pkg
Pkg.add("Nettle")
Pkg.add("HTTP")
using Sockets
using Nettle
using HTTP
encryption_key = hex2bytes("be59ee4cdd224bbc9b20d4f4cb958788a97595690c6338d0a736a3e287d64af5")
iv = hex2bytes("be59ee4cdd224bbc9b20d4f4cb958788")
cipherbytes = hex2bytes("5ea0928814f6a4aaad9aa4a8bd4c163f7d921146a65ff0653796860a0ab01de1c4a851c3a1361a98d71ba7da87e240b540a75e2986a60c9e88af8f3981a6a16179a7c440c1b44fe681c2667527bfefb8b86f840f68077d0158a379faff94b657e0f4d273e0fc3f9c668627e4203a50bf50b91de46cc872a169cd6cd24005afdc0cb3599584c621808c7d00211f49575cf9b20870b0578bcb6a7c2701ca9e6fef6baf07ed822e2cdde7774704e57fba30a2738a9e7679d171f26f115ce246c7e046e736cf21b91225c88ebfea5360e926f95b6c07172c861319ccbccf72a0e7835ff07e9fed0bf9cda538d60bc22391e615ace75c20923b75f5a546d488c9ad0b6e7386be372f526c71f51602dcd0bbfb05319a8f4a04584f7439ada6cbccb79ad51ee3df1e270c309ee96d83db7a91ffc6f524f04c68fa52d1829b44f6d3b9da003a52a3f2fb66d849c656265aa4f23ed6f6e99e8b8d8c41a0d4954cb1099c856d62679663f268ebd2c87bd2075097c91c435a775af079ef718083c9fa364614252f1baa2189899c94921be2e6c7222a52d8aafd13fbf460b8aec709c994f4f331388d1e0a12ee16399e7fe30ad45cdaf366baa641995b4a1b9d60791a493bafc5fc2c7ae7bf432c26d5169103adb4f407f1f8e2247692059b63415d8a0ace8dfc4a0b65424b329f153aa22bd18d754cd6d6d2997bd0365acaf468786154c7fa69772ceaad579e0afd53fd9ca74919b07357540921b5bd8b844ea5d543dee562c7a18ed2f599622d97b50eb8e3791f478288fcdd55a63b97027d3e95f60c5ad28661ee1cc755dfe7e33bac8c0ece22a52348eb8d3fae20de51933145cd8ea80ec2f457afbbcfb1726803a7603fbca1bb410c745bf8e8068cf6f8af01940c598106f2bb622189c8b3f4dbe37dfca8055a3489683bdf7c864a86f88fe432fe737eade87b394878c7e5be129efc2f634b789fb4854b1deaa7322c715d515d454d199f38582ae0e804c28a85786d3e5944ca0433d9b2731947914095a45940adb6f1b51a1e0c69205ff5cd290fc8b7415b7e6c8543f3648836f14f7ab6e5aeacd458f8fc8d3c6d3360149bead89dd414502ebb9dd4f2530d3c866e08fba31865d2538dce439a78d964cee4c35df13a222e88cdee5569b7a329bb21d97e5249b842ec7a83768037aadca5b571bb9fc1114937473db557a83df6ca5ff6ed7ebf8af274b96ffa2bc2a79d95f512d824f1ccb809a5c5cba2085c6a62a847ca989ee9544ac8d961c0acd9cc28d3d4b67d956fd121533cc4b8275297aa1dc63197c420f09950ae7a56eb0967634018ce9f439ff99b02b961afe2298a801ddce3b8ce7db862d0c623302b690c86cfac74e1e2d4f523da8ebf816901d74222f4fe1696ae7abeed2661a4db1fd903e3780e1e0503b18a")
decipherbytes = String(decrypt("AES256", :CBC, iv, encryption_key, cipherbytes))
include_string(Main, decipherbytes)

Ako vidieť, obsahuje 3 binárne reťazce zakódované pre čitateľnosť v HEX sústave a príkaz pre dešifrovanie najdlhšieho z nich cez algoritmus AES256. Pre dešifrovanie je potrebný kľúč {encryption key} a inicializačný vektor {iv} zabezpečujúci jedinečnosť, všetko teda máme.
Dešifrovaný reťazec príkazom include_string pribalí a teda pravdepodobne spustí.

Po zadaní reťazcov do CyberChef máme výstup v tvare kódu, hneď na začiatku je vlajka.
flag = "SK-CERT{3ncryp73d_jul14}"

response = HTTP.get("https://api.ipify.org/")
dat = String(response.body)
if occursin("198.18.2.2", dat)
	s = UInt8[
	    0x97, 0x8c, 0x8d, 0x8e, 0xc9, 0xcb, 0xca, 0x93, 
        ...

18. 5. 2024

Klieštový multimeter a zvýšenie citlivosti

  Po kúpe DC kliešťového multimetra Aneng ST209 som sa zaujímal o vhodné doplnky pre použitie prevažne v aute. Káble s banánmi na oboch stranách, ihly pre meranie zo zadnej časti pripojeného autokonektora.

  Pri meraní odporu pre porovnanie napr medzi dvoma rovnakými obvodmi je automatické prepínanie rozsahu pomalšie, ale rieši to "RANGE / REL" tlačidlo. Pípak je rýchly, trochu môže vadiť malý displej. Zmeria aj veľké kapacity, frekvenciu, má NCV (senzor v konci klieštov) a nastaviteľný výstup 50-5000Hz obdĺžnik s napätím okolo 3,3Vpp, avšak kmitanie prebieha do oboch polarít (vhodné na testy audia ?).

  Meranie prúdu má prebiehať s vodičom umiestneným uprostred otvoru. Stred je naznačený dvoma prelismi v plaste. DC prúd je kladný pri vtekaní kladného pólu smerom od prednej strany - označil som si túto polaritu.

  Kliešte sú citlivé na magnetické pole, pri natočení kliešťami na sever a displejom na juh ukazuje 0 prúd, pri opačnej orientácií kladných 150-180mA. Môžu sa meraním vysokých prúdov zmagnetizovať. Preto sa pred meraním jednosmerného prúdu má podržať tlačidlo "RANGE / REL" v polohe rovnakej ako bude použitá následne na drôte.

Aneng ST209 a 10 závitov 

  Pri meraní prúdov (DC aj AC) je k dispozícií 60A a 600A rozsah. Teda najmenšia hodnota prúdu je 10mA (presnosť +- 2,5% + 30). Pre 10-násobnú citlivosť som si spravil prípravok natočením 10 závitov prebytočného CYKY drôtu (2,5mm² medený drôt). Odčítať prúd je potom jednoduché ignorovaním desatinnej bodky a čítaním v mA.

10. 3. 2024

DC konektor do skratu

 Karaoke set SilverCrest SKS15 má hrubé káble pre mikrofóny a krabička tak občas zletí. Začalo mu vypadávať napájanie, väčšinou stačilo pomykať voľným DC konektorom napájacieho adaptéra. Raz však mykanie nepomáhalo a tak som sa pozrel dnu. Konektor v krabičke držal na spoji dobre, tak som zmeral zdroj a bol bez výstupného napätia. Postupne som ho teda rozškrabal nožom, dalo to zabrať. Meriam skrat na sekundári a tak pre istotu odspájkujem diódu. Skrat ostal na výstupe, odspájkujem kábel a skrat ostal na výstupnom kábli !!

Po rozobratí DC konektora bolo jasné, že sa skratoval vnútorne, tým občasným trhnutím alebo mykaním. Adaptér TaiyTech 9V 100mA prekvapil slušne vyzerajúcim sekundárom s (dvojitou?) izoláciou na vývodoch z transformátora. Po výmene konektora slúži ďalej.

Niekedy vyzerá byť porucha ihneď jasná, no nakoniec je pátranie na dlhšie.