31.08.2014 Views

2005 / 1 leden - stulik.cz

2005 / 1 leden - stulik.cz

2005 / 1 leden - stulik.cz

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

HACKERSKÁ ZPRÁVA <strong>2005</strong><br />

23<br />

KNOW-HOW<br />

JAK HACKEŘI HLEDAJÍ<br />

BEZPEČNOSTNÍ MEZERY<br />

<br />

může být vyslána v podstatě jakýmkoliv subjektem.<br />

Hacker může takovou zprávou modifikovat<br />

rutinu pro ošetření výjimečných situací<br />

a do paměti programu tak propašovat<br />

např. trojského koně. Potom záměrně vyvolá<br />

havárii programu. Nyní ovšem namísto<br />

korektního systémového ošetření výjimečného<br />

stavu dojde k odstartování podvrženého<br />

trojského koně. To mimo jiné také znamená,<br />

že i uživatel s pouhými hostovacími právy<br />

může zavírat aplikace, vkládat libovolné<br />

informace, v horším případě dokonce získat<br />

vyšší přístupová práva.<br />

SETKÁNÍ HACKERŮ<br />

Seznam účastníků vypadá<br />

jako oborové „Who's who“.<br />

Na DefCon, největší hackerské<br />

konferenci na světě, se<br />

setkávají programátorští koryfejové,<br />

zástupci bezpečnostních firem a administrativy.<br />

Většinou na přednáškách,<br />

mnohdy však také jen šeptem si vyměňují<br />

poznatky o bezpečnostních mezerách<br />

v softwaru a o metodách jeho<br />

napadení. Není divu, že sem své pracovníky<br />

vysílají i tajné služby, jako například<br />

NSA, a firmy, jako je Microsoft...<br />

Chceme to vyzkoušet a od jednoho z hackerů<br />

dostáváme doporučení, abychom<br />

napadli „Správce nástrojů“. Tento nástroj je<br />

nainstalován v každém počítači s Windows<br />

XP/2000 a má systémová práva. Program<br />

vlastně slouží k tomu, aby na požádání<br />

dával k dispozici obrazovkovou lupu a další<br />

pomůcky. Náš „Shatter Attack“ startujeme<br />

WINDOWS MAJÍ VELKÝ PROBLÉM VE SVÉ<br />

ARCHITEKTUŘE. BRETT MOORE, BEZPEČNOSTNÍ EXPERT<br />

tak, že programu posíláme kód stisku funkční<br />

klávesy F1. Poněvadž z toho není jasné,<br />

pro který prvek nápovědu požadujeme, program<br />

žádný soubor nápovědy nenajde<br />

a vyzve nás, abychom jej určili sami. Software<br />

však nijak nekontroluje, zda se pak skutečně<br />

jedná o soubor nápovědy (s příponou<br />

.HLP), takže si můžeme vybrat libovolný program.<br />

A tak namísto očekávaného souboru<br />

„UManDlg.HLP“ otvíráme příkazovou řádku<br />

DOS „cmd.exe“. Pod Windows XP Professional<br />

se pak prostřednictvím příkazu whoami<br />

dozvídáme, že jsme nyní vedeni jako uživatel<br />

„SYSTEM“ – a že jsme tedy obdrželi vyšší<br />

přístupová práva.<br />

Cílem každého hackera je vždy dosáhnout<br />

podle možností co nejvyšších přístupových<br />

práv (administrátorských, systémových,<br />

v Unixu ROOT atd.). Pak už má volnou ruku<br />

a může instalovat trojské koně či viry, krást<br />

data nebo třeba mazat libovolné soubory<br />

v počítači.<br />

<br />

Uživatelé denně narážejí na problémy,<br />

které se při podrobnějším zkoumání<br />

ukáží jako bezpečnostní mezery. Jasným<br />

příznakem toho je, když například Internet<br />

Explorer při návštěvě určité webové<br />

stránky havaruje pokaždé stejným způsobem.<br />

Kdo se problém snaží vypátrat,<br />

chybovou zprávu "neodklikne", ale<br />

nechá si vypsat detaily, studuje obsah<br />

webové stránky a všemožně se pokouší<br />

přijít věci na kloub. Pokud má hacker<br />

štěstí, dá se chyba využít (anglicky<br />

exploit, viz též glosář 25).<br />

Nutnou podmínkou úspěšného "hacku"<br />

je dokonalá znalost systému, který má<br />

být napaden. Ve většině případů to znamená<br />

také zvládnutí programovacích<br />

jazyků Assembler a C. Jen ten, kdo je<br />

schopen číst a psát programový kód,<br />

dokáže najít nesrovnalosti.<br />

"Snídám diffy a spím na definici céčka,"<br />

zažertoval si na konferenci Halvar Flake,<br />

mladík známý v branži svými dobrými<br />

nápady. Prohlédne si v opensourcových<br />

projektech zdrojové kódy oprav chyb<br />

a hned přesně ví, kde v C číhají záludnosti.<br />

"Kreknout" se dají i programy, od<br />

nichž není k dispozici zdrojový kód. Pod<br />

Windows se nejprve soubor se strojovým<br />

kódem zpětně přeloží tzv. disassemblerem<br />

(např. IDA) a pak se pod<br />

nějakým ladicím programem (např. Olly-<br />

Dbg, viz rámeček na 28) sleduje průběh<br />

programu. Pokud se v programu<br />

podaří objevit nějakou slabinu, napíše<br />

hacker zpravidla v assembleru kousek<br />

kódu, který mezeru (např. v souvislosti<br />

s Buffer Overflow), využije ke svému prospěchu.<br />

Elementární částice: Disassembler IDA<br />

rozloží program na jednotlivé strojové<br />

instrukce a vyjádří je symbolicky podle<br />

konvencí assembleru.<br />

C H I P L E D E N 2 0 0 5

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!