Občas je třeba si vzpomenout na nějaké to heslo, které jste zadávali do systému, mailu, při registraci webu a nyní ne a ne si vzpomenout jaké heslo bylo zadáno aby se otevřel Sez(n)am. Tento článek by měl být takovým malým zamyšlením jaké heslo si nastavit či nenastavit a jak relativně je pak snadné se k dané službě dostat. Možno použít sofistikovanější metody než jen Brutus AET2, či WWWHack 🙂 (tím ovšem nehaním tyto nástroje, občas jsou vhodné, ale jsou již překonané a je spousty lepších náhražek, které nejsou s tak cool GUI)
Webová stránka / Webmail / Profil / Forum
Minimální délka hesla 6 znaků, toto si vyžaduje při registraci Seznam mail a k tomu vázané služby Lide.cz , Spoluzaci.cz pro spousty lidí je toto hranice internetu. Server libimseti.cz vyžaduje dokonce znaků 5
- Tyto pravidla jsou všeobecná, platí i pro ostatní odstavce, jen je nebudu uvádět.
- Minimální délka znaků by měla bý opravdu 6, čím více tím lépe
- Nepoužívat hesla spjatá s blízkým okolím, jména, roky narození
- Nepoužívat „slovníková“ hesla např. „průvodce“ ač je to slovo dlouhé, nic nevypovídající o vašem okolí, je nalezitelné ve slovníku češtiny a tím lehce uhodnutelné.
Nástroje na hádání hesel jsou různé, s GUI, v příkazové řádce, jako skripty. Všeobecný nástroj pro louskání WWW se jeví jako THC Hydra , která zvládá i spousty dalších protokolů
Operační systém
Windows
Hesla pro windows jsou uložena v souboru SAM ( %systemroot%\system32\config ). Ten je bohužel při zapnutém OS nemožno číst. Pokud máte k PC fyzický přístup pomůže vám Live CD distibuce OphCrack – Tímto cd načtete Slax Linux + Program ophcrack a můžete vesele louskat hesla. Ovšem mnohem lepší způsob jak hesla rozlousknout je uložit si je na pozdější analýzu.
Hesla pro Windows jsou uložena v LM / NTLM Hashich, forma takoveho hesla pak vypadá třeba
Administrator:500:B1823E182D74254CC147BA085FA1D9DF:E81F8B8AE1A3EE35D9E392D7F6A0E93E:::
Administrator je uživatelské jméno, 500 je SID ( Security ID ) pak LM hash, NT Hash
Vzdálený operační systém
Jak zjistit heslo vzdáleného PC, právě přihlášeného uživatele ? Opět univerzálním nástrojem pro audit Cain&Abel a vlastností SMB z OS Windows 🙂
Client->Server
Session request, workstation service requests connection to server
service.
Server->Client
Session response, yes that NetBIOS name is connectable here.
Client->Server
Negotiation, which dialect do you want to speak with me?
Server->Client
Dialect selection, let's speak this dialect. Here's the challenge data to
encrypt with your password.
Client->Server
Session setup, here's my username and your challenge encrypted
with the password hash I want to logon as.
Server->Client
Session setup response, yes ok you are connected as that user.
Takto komunikuje server s klientem protokolem SMB, Cain tuto komunikaci umí odchytit a následně poslat do Crackeru, kde se heslo podrobí zkoušce své tvrdosti.
FTP, ICQ, POP3, SMTP, TELNET
- Hesla posílaná, přes tyto protokoly jsou v plaintextu, čisté formě, nijak nešifrovány, pokud jste odposloucháváni na vaší síti, ihned jsou vaše hesla čitelná.
Pokud chcete aktivně zjiťovat hesla k výše psaným protokolům můžete zkusit Brutus AET2, THC Hydra, na pasivná sběr opět vystačí Cain&Abel
Co všechno zvládne Hydra
Hydra v5.4 [http://www.thc.org] (c) 2006 by van Hauser / THC <vh@thc.org>
Syntax: hydra [[[-l LOGIN|-L FILE] [-p PASS|-P FILE]] | [-C FILE]] [-e ns]
[-o FILE] [-t TASKS] [-M FILE [-T TASKS]] [-w TIME] [-f] [-s PORT] [-S] [-vV]
server service [OPT]
Options:
-R restore a previous aborted/crashed session
-S connect via SSL
-s PORT if the service is on a different default port, define it here
-l LOGIN or -L FILE login with LOGIN name, or load several logins from FILE
-p PASS or -P FILE try password PASS, or load several passwords from FILE
-e ns additional checks, „n“ for null password, „s“ try login as pass
-C FILE colon seperated „login:pass“ format, instead of -L/-P options
-M FILE server list for parallel attacks, one entry per line
-o FILE write found login/password pairs to FILE instead of stdout
-f exit after the first found login/password pair (per host if -M)
-t TASKS run TASKS number of connects in parallel (default: 16)
-w TIME defines the max wait time in seconds for responses (default: 30)
-v / -V verbose mode / show login+pass combination for each attempt
server the target server (use either this OR the -M option)
service the service to crack. Supported protocols: telnet ftp pop3[-ntlm]
imap[-ntlm] smb smbnt http[s]-{head|get} http-{get|post}-form http-proxy cisco
cisco-enable vnc ldap2 ldap3 mssql mysql oracle-listener postgres nntp socks5
rexec rlogin pcnfs snmp rsh cvs svn icq sapr3 ssh2 smtp-auth[-ntlm] pcanywhere
teamspeak sip vmauthd
OPT some service modules need special input (see README!)
Use HYDRA_PROXY_HTTP/HYDRA_PROXY_CONNECT and HYDRA_PROXY_AUTH env for a proxy.
Hydra is a tool to guess/crack valid login/password pairs – use allowed only
for legal purposes! If used commercially, tool name, version and web address
must be mentioned in the report. Find the newest version at http://www.thc.org
Výstup pak může být následující
C:\hydra.exe -l admin -P ceskajmena981.txt nejaky.server.cz telnet
[DATA] 16 tasks, 1 servers, 980 login tries (l:1/p:980), ~61 tries per task
[DATA] attacking service telnet on port 23
[STATUS] 590.00 tries/min, 590 tries in 00:01h, 390 todo in 00:01h
[23][telnet] host: najaky.server.cz login: admin password: Veronika
[STATUS] attack finished for nejaky.server.cz (waiting for childs to finish)