»

Najbolj nepregledna koda v C-ju spet nagrajena

Slo-Tech - Znani so rezultati letošnjega tekmovanja v prikriti in neprepoznavni (obfuscated) C-jevski kodi IOCCC, ko je potekalo že osemindvajsetič. Smoter tekmovanja je preprost, in sicer napisati čim bolj neprepoznavno kodo, ki pa je še vedno veljavna, se prevede in izvede ter stori nekaj nepričakovanega.

Kdor ima veliko potrpljenja ali močan interes, si lahko pogleda štiri ure in pol dolgo predstavitev dosežkov in podelitev nagrad. Vseh triindvajset nagrajencev in njihove kode so izpostavili tudi na spletni strani. Dosežki so res impresivni, saj segajo od emulatorja 32-bitnega OpenRISC do recepta za lososa. Koda je v vseh primerih silno zapletena in nepregledna, a nalogo opravi.



11 komentarjev

Mirai je dobil naslednika

Slo-Tech - Na internetu se je znašla nova zlobna koda, ki okuži pametne v internet povezane (IoT) naprave. Imenuje se Linux/IRCTelnet in uporablja kose kode iz različnih znanih zlonamernih aplikacij, da doseže največjo učinkovitost, zato se širi hitro. V samo petih dneh je prek telneta okužila 3500 naprav. Komentarji v C++jevski kodi dajejo slutiti, da gre za delo italijanskega avtorja.

V zadnjem času ugotavljamo, da so pametne naprave čedalje pogosteje tarča napadov, potem pa jih nepridipravi izkoriščajo za proženje napadov DDoS. Tak primer je bil napad na blog Briana Krebsa. Odkar je izvorna koda botneta Mirai prosto dostopna, je situacija še slabša. Linux/IRCTelnet...

6 komentarjev

Tekmovanje v pisanju na prvi pogled neškodljive, a zlonamerne kode

Slo-Tech - Začelo se je že 8. tekmovanje v pisanju pregledne, na prvi pogled neškodljive C-jevske kode, ki pa v resnici počne nečednosti. Underhanded C Contest je zanimivo tekmovanje, ki so se ga leta 2005 domislili na Univerzi Binghamton v zvezni državni New York in od udeležencev zahteva, da rešijo zastavljen problem čim bolj elegantno. Običajno morajo napisati kodo, ki pravilno počne kakšno legitimno funkcijo, v posebej določenih primerih pa se vede drugače. To drugo obnašanje mora biti ob pregledu kode kar najbolj neopazno, pri čemer mora biti sama koda pregledna in kratka. Za skrivanje pri belem dnevu gre torej.

Letošnje tekmovanje traja do 15. novembra, rezultati pa bodo objavljeni dva meseca pozneje. Letos morajo tekmovalci napisati C-jevski program, ki primerja radiogram vzorca s standardom in...

3 komentarji

Analiza kode: goto rabimo po pameti

xkcd.com

Slo-Tech - Eno izmed prvih in najgloblje vcepljenih pravil programiranja je izogibanje stavkov goto. Niso prepovedani, saj jih številni jeziki čisto lepo podpirajo, a sodijo v kategorijo grdega programiranja. Njihova uporaba je nezaželena, ker se ob nebrzdani uporabi program hitro zapaca v nerazumljivo kodo in ker je vzdrževanje takšne programske opreme bistveno težje. Dokazano je, da lahko vsak program napišemo brez stavka goto, če ga primerno strukturiramo.

Kljub temu so stavki goto trmasto ostali in v nekaterih primerih je njihova uporaba smiselna. Zasloveli so seveda v pismu nizozemskega velikana računalništva Edsgerja Dijkstre iz leta 1968, v katerem je stavke goto označil kot škodljive. Debata v naslednjih desetletjih je bila živahna, saj so nastopali argumenti za in proti, tabora pa sta še danes dva. Nekateri bi stavke goto prepovedali, drugi v njih načeloma ne vidijo nič...

29 komentarjev

Del OpenSSL bo postal LibreSSL

Napadu pravijo "heartbleed", po SSL razširitvi "heartbeat", ki ga tudi omogoča.

ZDNet - Ekipa, ki razvija operacijski sistem OpenBSD, je začel ločen razvoj razvejitve iz OpenSSL (fork), ki se bo imenoval LibreSSL. Že dlje časa je znano, da je OpenSSL dokaj okoren in da vsebuje precej kode, ki so jo razvijalci že dlje časa nameravali odstraniti, pa tega niso storili. Ranljivost heartbleed, ki so jo nedavno odkrili v OpenSSL, pa je pospešila načrte o temeljiti prenovi. To so razlogi, da dobivamo LibreSSL.

LibreSSL bo tako očiščen, popravljen in bolj vitek OpenSSL, pojasnjuje Theo de Raadt, vodja...

16 komentarjev

Začenja se pêti The Underhanded C Contest

Slashdot - Izšel je razpis za 5. The Underhanded C Contest, kjer vsako leto izbirajo najboljše napisano C-jevsko kodo, ki je videti nedolžno, a po potrebi izvede kakšno zlo dejanje. Pri tekmovanju ne gre za pisanje težko razumljive, kriptične kode, ki je ne razume niti sam pisec, marveč za lično oblikovano, lepo zakomentirano in karseda preprosto kodo, ki ne deluje, kakor bi pričakovali na prvi pogled.

Letošnji scenarij je takle. Letalska družba UCK Air želi program, ki sortira prtljago in jo razporeja na ustrezna letala. To mora početi tudi prijavljena koda, le da mora imeti v drobovju zamaskirano funkcijo, ki naključno izgubi kos prtljage, če uslužbenec pri oddaji vtipka ustrezno besedilo.

Lanski problem je bilo pisanje algoritma za počrnitev dela slike (redaction), pri čemer pa prekriti piksli niso bili izgubljeni, marveč se jih je dalo nekako oživiti. Rok za oddajo novega projekta se izteče 1. marca 2010, zmagovalec pa prejme bon v vrednosti 100 dolarjev. Slashdot.

2 komentarja