Nejen při zapomenutí vlastního hesla, ale i v případě, že z firmy odejde pracovník a po čase je nutné na jeho projektu něco opravit a PLC vyžaduje heslo, nastane problém co s tím. Nemělo by se to stávat, ale dá se s takovým jednáním setkat. Vyzkoušeli jsme nějaké možnosti, které by mohli v takovém případě pomoci.
Pozor, autorství PLC software je chráněno zákonem, proto je nezbytné takové věci zkoušet jen na programu ke kterému vlastníte autorská práva, v opačném případě porušujete zákon, ale to všichni profesionálové dobře znají.
Do našeho dílenského PLC vrazíme heslo nejvyšší úrovně a hardwarovou konfiguraci přeneseme do PLC Simatic S7.
Heslo jsme stanovili na "blaja". Běžné jednoduché prográmky, které místo hvězdiček ukážou, co se za nimi skrývá, tady samozřejmě nefungují.
|
|
Tohle je jednodušší varianta, když potřebujeme poznat heslo z projektu Step7. Stačí vybrat patřičný projekt, pokud ten obsahuje ve své hardwarové konfiguraci nějaké heslo, objeví se v patřičném rámečku.
V této složce projektu S7_315_1 evidentně žádné heslo není.
|
|
Tady ale už máme náš zkušební projekt s uvedeným heslem.
Jak jednoduché, když se ví čím na to.
|
|
Ovšem podstatně horší situace nastává, pokud je potřeba připojit se k PLC a to vyžaduje heslo. Bez něj ani nestáhneme surový program do Step7 pro případnou zálohu.
Nebudeme se bavit o situaci, kdy stačí PLC totálně smazat a uvést do továrního nastavení. To je pro většinu případů nepoužitelné, neboť přijdeme o celý PLC program, což si ve většině případů nikdo nedovolí.
|
|
Tentokrát bude i použitý nástroj trochu jiný, nejdůležitější je nastavit PG-PC interface. Software podporuje pouze Siemens připojení, nelze jej používat například s NETLink převodníky a podobně.
|
|
Takže pouze CP5512 a některé další možnosti jsou podporovány pro připojení k PLC. Detailně je vše popsáno v "Helpu" programu. MPI port má ale každé CPU, takže jsme vše zkoušeli právě pro MPI připojení.
|
|
Sestavené spojení nabídne adresu PLC a po jejím potvrzení můžeme jít na to.
|
|
První verze jak zkusit najít heslo přímo v PLC je tzv. slovníková metoda. Program zkouší hesla podle obsahu hesel ve slovníku, což je vlastně textový soubor, kde je na každém řádku jiné heslo. Tlačítkem "Dictionary" připojíme k programu patřičný soubor.
Slovníková metoda bývá velmi často úspěšná, pokud si hesla ve slovníku prohlédnete, zcela jistě najdete spoustu používaných hesel. My jsme do slovníku samozřejmě naše heslo "blaja" přidali až na konec.
|
|
Stačilo stisknout start a nástroj poctivě zkouší zadat do PLC jedno heslo po druhém přesně podle obsahu slovníku. Vše je celkem rychlé i při MPI připojení, vyzkoušení přibližně dvou a půl tisíce hesel trvalo necelé 2 minuty. Software heslo spolehlivě našel.
Průměrná rychlost zkoušení je 1386 hesel za minutu.
|
|
Další metoda je ruční zkoušení. Je to totiž mnohem rychlejší než zkoušet hesla přímo ze Step7. Taky zde při souhlasném heslu byl nástroj úspěšný.
|
|
Na závět to nejzajímavější, a sice útok brutální silou, který zkouší všechny možné varianty písmen a číslic podle zadání.
Heslo blaja by ale software hledal hodiny, proto jsme heslo v PLC změnili na kratší "blj".
|
|
Hotovo, brutální silou odhalil nástroj jednoduché třímístné heslo za minutu. Jak je ale vidět na screenu, podmínky jsme mu značně ulehčili, zaznačeno bylo použití jen malých písmen abecedy. Vše jen proto, abychom zjistili, jestli při shodě hesla software správně zareaguje.
V případě zadání pro vyhledávání použití velkých písmen a číslic, počítejte s velmi dlouhou dobou chodu programu.
|
|
Závěr:
Právě v možné situaci, kdy je potřeba realizovat servisní zásah na stroji a systém tvrdošíjně vyžaduje heslo, které do systému zadal třeba právě bývalý kolega, je každá rada drahá. A nebo jsme jen po létech zapomněli, jaké to heslo už v systému máme.
Jaroslav Blažek
Doplňující odkazy k článku:
Systémy Simatic: http://www1.siemens.cz/ad/current/index.php?ctxnh=1d37de2332&ctxp=home