Linux: Inetd – Super Daemonul (#25)

Bine ați revenit, dragii mei greenhorn hackers!

În încercările mele de a familiariza hackerii aspiranți cu Linux (aproape toate hack-urile sunt făcute cu Linux, și de aceea fiecare hacker trebuie să-l cunoască și să-l folosească), vreau să abordez un proces destul de obscur, dar puternic. Există un proces super care se numește inetd, xinetd, rlinetd sau openbsd-inetd. Știu, știu … este confuz, dar rămâneți alături de mine. Înainte de a discuta despre procesul inetd, vreau să explic că în Linux și Unix, procesele care rulează în fundal sunt numite daemoni sau demoni. Consider incorect termenul de demon, chiar dacă și eu îl mai folosesc uneori. Un daemon este un spirit care influențează personajul sau personalitatea. Ei nu sunt reprezentanți ai binelui sau răului, ci mai degrabă încurajează gândirea și voința independentă. Acest lucru este în contrast cu un ,,demon”, despre care știm că este ceva diferit.

Revenim la inetd. La început – ei bine, cel puțin la începutul Unixului – toți daemonii au început la momentul încărcării și au rulat continuu. Așa cum ați putea să vă imaginați, acest lucru înseamnă că procesele ce nu au fost folosite au folosit resurse și au epuizat performanța. Acest lucru a fost, evident, un lucru ineficient pentru afaceri.



Pe măsură ce sistemele au acumulat tot mai multe servicii, a devenit evident că trebuia făcut ceva diferit. Ca rezultat, un programator de la Berkeley a decis că ar fi mai bine să creeze un daemon care să controleze toți ceilalți daemoni, un fel de super daemon. Astfel, a început inetd, sau internet daemon.

Inetd rulează întotdeauna în fundal și apoi decide când să înceapă și să oprească alți daemoni. Deci, dacă un apel intră pe portul 21 pentru serviciile FTP, inetd pornește daemonul FTP. Când un apel intră pe portul 80 pentru serviciile HTTP, inetd pornește serviciile HTTP și așa mai departe. În acest fel, inetd conservă resursele și îmbunătățește performanța generală a sistemului.

În cele din urmă, acest super daemon a fost exploatat de hackeri în mai multe moduri. Să ne gândim puțin. Dacă se poate exploata super daemonul care controlează toți ceilalți daemoni, atunci se poate controla întregul sistem. Cel puțin, dacă putem controla super-daemonul, cu siguranță oprim sistemul. Asta este exact ceea ce s-a și întâmplat, iar ca rezultat, s-a obținut un nou și îmbunătățit super daemon numit xinetd.



Xinetd a fost dezvoltat pentru a aborda unele dintre vulnerabilitățile de securitate din inetd și a fost adoptat destul de repede de către distribuțiile comerciale Linux, Red Hat și SUSE. Debian și Ubuntu, care sunt distribuțiile de bază pentru Kali și BackTrack, au rămas inițial cu inetd-ul mai vechi. Dar acum Kali a trecut la o versiune mai nouă a inetd-ului, denumită openbsd-inetd.

Găsim openbsd-inetd

Putem găsi openbsd-inetd în sistemul nostru Kali tastând următoarea comandă:

kali > locate openbsd-inetd

Putem vedea în partea de sus a listei, fișierul de configurare pentru openbsd-inetd și fișierul daemon în sine.

Manualul inetd

După cum am menționat în articolele anterioare, ori de câte ori dorim să știm ceva despre o anumită comandă în Linux, putem, desigur, să o căutăm pe Google. Alternativ, putem folosi și fișierul man sau manual. Pur și simplu tastăm “man” înainte de comandă și sistemul ne va afișa fișierul manual pentru acea comandă. Să verificăm manualul pentru inetd.

kali > man inetd

Aruncăm o privire pe openbsd-inetd.conf

Aruncăm o privire și asupra fișierului de configurare pentru openbsd-inetd. Să-l deschidem cu Leafpad sau cu orice editor de text.



kali > leafpad openbsd-inetd

Putem face sistemul nostru Linux mai sigur prin setarea unor valori implicite în fișierul openbsd-inetd.conf. De exemplu, dacă sistemul ar fi folosit numai pentru serviciile FTP, nu numai că ar fi ineficient să se execute orice alt serviciu, ci și mai puțin sigur. Să presupunem că un atacator încearcă să exploateze HTTP, iar HTTP a fost dezactivat în openbsd-inetd.conf, nu ar avea prea mult noroc.

De asemenea, am putea schimba openbsd-inetd.conf pentru a porni numai serviciile FTP după cum este necesar și nimic altceva. Dacă dorim doar ca acest sistem să fie accesibil unei liste de adrese IP sau doar unei rețele interne, putem configura acel acces în openbsd-inetd.conf.

Dacă sunteți începători în Linux, recomand să nu faceți vreo modificare în openbsd-inetd, deoarece este cel mai probabil să vă sabotați și să dezactivați sistemul decât să îl faceți mai sigur sau mai eficient. Cum obțineți mai multă experiență în administrarea sistemului, puteți gestiona acest super daemon pentru a vă face sistemul mai sigur și mai eficient.

Nu confundați Inetd cu Init.d

Începătorii în Linux confundă adesea init.d și inetd. Init.d este un daemon de inițializare ce rulează când sistemul pornește. Acesta determină nivelul de rulare și daemonii care se activează la pornire. Când un computer este pornit, kernelul pornește sistemele init.d, care are întotdeauna un ID de proces (PID) de 1.

Procesul de inițializare pornește o serie de scripturi care pregătesc sistemul pentru utilizare. Acestea sunt scripturi ce au ca scop verificarea sistemului de fișiere și apoi montarea și pornirea oricăror daemoni de sistem ce sunt necesari. Aceste scripturi sunt adesea denumite fișiere rc, deoarece toate încep cu rc (comanda de rulare). Voi explica mai multe despre init.d într-un tutorial ulterior, dar am dorit să mă asigur că această distincție a fost clară.

Continuați să reveniți pe Blackweb, dragii mei greenhorn hackers, pentru mai multe tutoriale despre hacking și despre elementele de bază ale Linux-ului, ce ar fi bine să le cunoașteți, în drumul vostru de a deveni niște hackeri talentați.

Până data viitoare, să ne citim cu bine! 🙂

 



0 0 vote
Article Rating
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments