Wednesday, July 16, 2008

rkunter&chkrootkit


Korisnici Debian-a (a i drugih Linux distro-a) koji su zainteresovani da sačuvaju svoje računare od rootkit programa će, u najvećem broju slučajeva, pretraživanjem interneta i konsultovanjem odgovarajućih foruma doći do zaključka da su rkhunter i chkrootkit programi koji će izaći u susret njihovim potrebama (govorim o "običnim" korisnicima).
Ovi programi se nalaze na zvaničnim Debian riznicama i mogu se lako preuzeti uz pomoć Synaptic-a/Adept-a, ne napuštajući sigurnost KDE okruženja. Kako se radi o programima koji služe zaštiti sistema od raznih malicioznih programa kreiranih da preuzmu kontrolu nad računarom bez dozvole korisnika istog, nije loše imati najnovije verzije ovakvih programa. Ne treba biti mnogo pametan i zaključiti da se u Debian stable riznicama ne nalaze najnovije verzije ovih programa.
Tada treba preuzeti najnovije .tar.gz pakete i instalirati ih iz terminala, što je nama početnicima neretko jako stresno iskustvo (bezuspešni pokušaji instalacije FF-a 3.0 na Etch me još peku :) ). Ipak, u slučaju ova dva programčića situacija i nije tako strašna...


RKHUNTER



Ovaj programčić za hvatanje "uljeza" u sistemima se može preuzeti sa download stranice Rootkit sajta. Po preuzimanju, arhiva se raspakuje uz pomoć programa Ark (ja više volim PeaZip) ili još lakše iz Konsole:

$ tar -xzvf
rkhunter-1.3.2.tar.gz

Treba preći u raspakovani direktorijum rkhunter-1.3.2 komandom cd:

$ cd rkhunter-1.3.2

... a zatim pokrenuti instalacioni script, kada nastaje problem ukoliko niste pročitali README fajl koji dolazi uz rkhunter. Naime, korisnici koji su čitali neko od online uputstava sa raznih blogova biće pomalo iznenađeni kad otkriju da ta uputstva nisu tačna kada je u pitanju 1.3.2 verzija rkhunter-a. Problem je u tome što su uputstva za starije verzije ovog programa, a način instalacije je u međuvremenu promenjen. Dakle, rkhunter se umesto komandom ./installer.sh instalira sa:


# ./installer.sh --layout default --install


Radi ilustracije svega što sam pomenuo daću izlaz komande ./installer.sh:


debian:/home/stesha/Desktop/rkhunter-1.3.2# ./installer.sh

Rootkit Hunter installer 1.2.7

Usage: ./installer.sh

Ordered valid parameters:

--help (-h) : Show this help.

--examples : Show layout examples.

--layout : Choose installation template (mandatory switch).

The templates are:

- default: (FHS compliant),

- /usr,

- /usr/local,

- oldschool: previous version file locations,

- custom: supply your own prefix,

- RPM: for building RPM's. Requires $RPM_BUILD_ROOT.

--striproot : Strip path from custom layout (for package maintainers).

--install : Install according to chosen layout.

--show : Show chosen layout.

--remove : Uninstall according to chosen layout.

--version : Show the installer version.


I izlaz komande kojom sam ja uspeo da instaliram rkhunter, a koja je pomenuta u README fajlu:


debian:/home/stesha/Desktop/rkhunter-1.3.2# ./installer.sh --layout default --install

Checking system for:

Rootkit Hunter installer files: found. OK

Available file retrieval tools:

wget: found. OK

Starting installation/update

Checking PREFIX /usr/local: exists, and is writable. OK

Checking installation directories:

Directory /usr/local/share/doc/rkhunter-1.3.2: creating: OK.

Directory /usr/local/share/man/man8: creating: OK.

Directory /etc: exists, and is writable. OK

Directory /usr/local/bin: exists, and is writable. OK

Directory /usr/local/lib: exists, and is writable. OK

Directory /var/lib: exists, and is writable. OK

Directory /usr/local/lib/rkhunter/scripts: creating: OK.

Directory /var/lib/rkhunter/db: creating: OK.

Directory /var/lib/rkhunter/tmp: exists, and is writable. OK

Directory /var/lib/rkhunter/db/i18n: creating: OK.

Installing check_modules.pl: OK.

Installing check_update.sh: OK.

Installing check_port.pl: OK.

Installing filehashmd5.pl: OK.

Installing filehashsha1.pl: OK.

Installing showfiles.pl: OK.

Installing stat.pl: OK.

Installing readlink.sh: OK.

Installing backdoorports.dat: OK.

Installing mirrors.dat: OK.

Installing os.dat: OK.

Installing programs_bad.dat: OK.

Installing programs_good.dat: OK.

Installing defaulthashes.dat: OK.

Installing md5blacklist.dat: OK.

Installing suspscan.dat: OK.

Installing rkhunter.8: OK.

Installing ACKNOWLEDGMENTS: OK.

Installing CHANGELOG: OK.

Installing FAQ: OK.

Installing LICENSE: OK.

Installing README: OK.

Installing WISHLIST: OK.

Installing language support files: OK.

Installing rkhunter: OK.

Installing rkhunter.conf: OK.

Installation finished.


Što se tiče opcije layout njoj se može dodeliti i neki drugi parametar umesto parametra default, tako da se ovaj program može instalirati i na neku drugu lokaciju u okviru aktivnog direktorijumskog stabla - na primer u /opt direktorijum:

# ./installer.sh --layout custom /opt --install

Ne moram da napominjem da je za instalaciju programa potrebno biti prijavljen na administratorski (root) nalog...

Po instalaciji nije loše obnoviti bazu rootkit programa komandom:

# rkhunter --update

... a zatim i skenirati sistem:

# rkhunter --check

Rkhunter se može i deinstalirati što je čak i dokumentovano u gore navedenom README fajlu. Kažem "čak" jer je nama početnicima čest problem nedostatak uputstva za deinstalaciju/reinstalaciju/upgrade programa u dokumentaciji za kompajliranje, što mi nikada neće biti jasno, ali ne vredi kukati za nečim čega nema. Elem, program se uklanja komandom:

# ./installer.sh --layout default --remove

I to je sve što se tiče rkhunter programčića...

CHKROOTKIT




Što se tiče programa chkrootkit, najnovija verzija je 0.48 i može se preuzeti odavde. Instalacija je jednostavna i svodi se na raspakivanje preuzete arhive, prelazak u direktorijum chkrootkit-0.48 i pokretanje installacione skripte:

# tar -xzfv chkrootkit.tar.gz
# cd
chkrootkit-0.48
# make sense

Sistem se, iz direktorijuma koji je formiran nakon raspakivanja (chkrootkit-0.48), skenira komandom:

# ./chkrootkit

U koliko se ne nalazite u dotičnom direktorijumu, potrebno je naznačiti putanju do ovog programa, inače se neće izvršavati. Ukoliko je chkrootkit instaliran sa riznica (verzija 0.47), pokretaće se sa bilo koje lokacije u aktivnom stablu istoimenom komandim:

# chkrootkit

Postoje i načini da se pokretanje ovih programa i njihov update automatizuje, ali o tome drugom prilikom, kada (i ako) budem tako nešto radio, jer ne pišem o onim stvarima koje nisam probao...