Вы находитесь на странице: 1из 56

SeguridadBsicadeLinux

Agenda
1. 2. 3. 4. 5. 6. 7. 8.

Sistemasdearchivos Auditoriadelsistema(syslogd) Controldeaccesodered Tcnicasdeautentificacin Cortafuegosdehost(basico) Proteccindeconexionesdered IDSdetarget Pruebasymonitoreodelsistema

05/10/06

PrincipiosdeseguridadenLinux

1 Sistemasdearchivos

Unanormabsicadeseguridadradicaenla asignacinacadausuarioslodelos permisosnecesariosparapodercubrirlas necesidadesdesutrabajosinponeren riesgoeltrabajodelosdems.

05/10/06

PrincipiosdeseguridadenLinux

1 Sistemasdearchivos

Riesgos

DentrodelsistemaLinuxtodosonarchivos:desdelamemoria fsicadelequipohastaelratn,pasandopormdems, teclado,impresorasetc. Estafilosofadediseoesunodelosfactoresquemasxito ypotenciaproporcionaaLinux,perotambinunodelosque maspeligros,debidoaqueunsimpleerrorenunpermiso puedepermitiraunusuariomodificartodoeldiscoduro,oleer losdatostecleadosdesdeunaTerminaletc.

05/10/06

PrincipiosdeseguridadenLinux

1 Sistemasdearchivos

Elsistemadearchivoseslapartedelncleo(Kernel) masvisibleporlosusuarios;seencargadeabstraer propiedadesfsicasdelosdiferentesdispositivospara proporcionarunainterfaznicadealmacenamiento:el archivo. CadasistemaLinuxtienesusistemadearchivos nativo.(ejemploext3)

05/10/06

PrincipiosdeseguridadenLinux

1 Sistemasde archivos

Unprimercriterioparamantenerunsistema seguroesunacorrectadistribucindel espaciodealmacenamiento. Estolimitaelriesgodequeeldeteriorode unaparticinafecteatodoelsistema.La prdidaselimitaraalcontenidodeesa particin.

05/10/06

PrincipiosdeseguridadenLinux

1 Sistemasde archivos

Tamaodelasparticiones Nohayunasnormasgeneralesaplicables;elusoalquevaya destinadoelsistemaylaexperienciasonlasbasesdela decisinadecuada,aunqueporlogeneralserecomienda:

Sielsistemavaadarservicioamltiplesusuarios querequierenalmacenamientoparasusdatoses convenientequeeldirectorio/hometengasupropia particin. Sielequipovaaserunservidoreldirectorio/varo incluso/var/spooldeberantenersupropiaparticin.

05/10/06

PrincipiosdeseguridadenLinux

1 Sistemasde archivos

Tamaodelasparticiones(continuacin)

Debedimensionarcuidadosamentelaparticinraz. Eldirectorio/usr/localcontienelosprogramas compiladoseinstaladosporeladministrador. Resultaconvenienteusarunaparticinpropiapara protegerestosprogramaspersonalizadosdefuturas actualizacionesdelsistema. Estecriteriotambinsepuedeaplicaraldirectorio /opt.

05/10/06

PrincipiosdeseguridadenLinux

1.1Proteccinde archivos

Permisosdeunarchivo

Lospermisosdecadaarchivosonlaproteccinmasbsica deestosobjetosdelsistemaoperativo;definenquienpuede accederacadaunodeellos,ydequeformapuedehacerlo. Cuandohacemosunlslpodemosversuspermisosjuntoal tipodearchivocorrespondiente, enlaprimeracolumnadecadalnea:

user:~#lsltexto.txt

rwrr1userelectric512Aug32003texto.txt

05/10/06

PrincipiosdeseguridadenLinux

1.1Proteccinde archivos

Permisosdeunarchivo(continuacin)
Propiedad:

Quusuarioygrupoposeeelcontroldelospermisosdelinodo. Sealmacenancomodosvaloresnumricos,eluid(userid)ygid (groupid). BitsindividualesquedefinenelaccesoaunArchivoodirectorio. Lospermisosparadirectoriotienenunsentidodiferentealos permisosparaArchivos.Msabajoseexplicanalgunas diferencias.

Permisos:

05/10/06

PrincipiosdeseguridadenLinux

10

1.1Proteccinde archivos

Permisosdeunarchivo(continuacin)
Lectura(r):

Archivo:PoderaccederaloscontenidosdeunArchivo Directorio:Poderleerundirectorio,verquArchivoscontiene Archivo:PodermodificaroaadircontenidoaunArchivo Directorio:PoderborraromoverArchivosenundirectorio

Escritura(w):

05/10/06

PrincipiosdeseguridadenLinux

11

1.1Proteccinde archivos

Permisosdeunarchivo(continuacin)
Ejecucin(x):

Archivo:Poderejecutarunprogramabinariooguinde shell Directorio:Poderentrarenundirectorio

05/10/06

PrincipiosdeseguridadenLinux

12

1.1Proteccinde archivos
Permisosdeunarchivo(continuacin) Atributosdeunarchivo

Enelsistemadearchivosext2(Second ExtendedFileSystem)deLinuxexistenciertos atributosparalosarchivosquepuedenayudar aincrementarlaseguridaddeunsistema.

05/10/06

PrincipiosdeseguridadenLinux

13

1.1Proteccinde archivos
Atributo A S Signicado DontupdateAtime Synchronousupdates

a c i d s u

Appendonly Compressedfile Immutablefile NoDump Securedeletion Undeletable

05/10/06

PrincipiosdeseguridadenLinux

14

1.2Listasdecontrolde acceso

Listasdecontroldeacceso(ACLsAccessControl Lists)
LasACLproveendeunniveladicionaldeseguridadalosarchivos extendiendoelclsicoesquemadepermisosenUnix:conlos permisossolopodemosespeciaropcionesparalostresgruposde usuarioshabituales(propietario,grupoyresto) LasACLspermienasignarpermisosausuariosogrupos concretos;porejemplo,sepuedenotorgarciertospermisosados usuariossobreunosarchivossinnecesidaddeincluirlosenelmismo grupo.

05/10/06

PrincipiosdeseguridadenLinux

15

ACL

#setfaclRm\ d:u:donkey:rwx,d:u:chirico:rwx,d:u:bozo2:rwx/fs $lsl/fs/one/stuff

rwrw+1chiricochirico0Sep317:48 /fs/one/stuff

ELKERNELTIENEQUEHABERSIDOCOMPILADOPARAPERMITIRALC!

05/10/06

PrincipiosdeseguridadenLinux

16

Aclcont...

$getfacl/fs/one/stuff

#file:fs/one/stuff #owner:chirico #group:chirico user::rw user:chirico:rwx#effective:rw user:donkey:rwx#effective:rw user:bozo2:rwx#effective:rw mask::rw other::


05/10/06

PrincipiosdeseguridadenLinux 17

1.3 Almacenamiento seguro

Cifradodearchivos:

PGP:PrettyGoodPrivacy GnuPG:GnuPrivacyGuard TCFS:TransparentCryptographicFileSystem (Posiblementeprontamenteabandonado) CryptographicFileSystemCFS


PrincipiosdeseguridadenLinux 18

05/10/06

Auditoriadel sistema

Casitodaslasactividadesrealizadasenunsistema Linuxsonsusceptiblesasermonitorizadas:desdelas horasdeaccesodecadausuarioalsistemahastalas paginaswebmasfrecuentementevisitadas,pasando porlosintentosfallidosdeconexin,losprogramas ejecutadosoinclusoeltiempodeCPUquecadausuario consume.

05/10/06

PrincipiosdeseguridadenLinux

19

Auditoriadelsistema

Esevidentequeestafacilidadpararecolectar informacintienegrandesventajasparala seguridad. Existentambinunagrandesventajas,yaque lagrancantidaddeinformacinque potencialmenteseregistrapuedeser aprovechadaparacrearataquesde negacionesdeservicio.


PrincipiosdeseguridadenLinux 20

05/10/06

Auditoriadel sistema
Eldemoniosyslogd

Eldemoniosyslogdeselencargadoderecolectarlosdatosdelos eventosdelsistemaydemsactividadesdependiendodesuarchivo deconfiguracin(/etc/syslogd.conf). LoslogscreadosporelsyslogdsoncomnmenteusadosporlosIDS Host Losarchivosdesalidadelsyslogdsonentextoplanolocualfacilitasu visualizacin Losarchivodelogsseencuentranporlogeneralen/var/logs/ Todaslasentradasquepresentasyslogdtienencomomnimouna fechayunahora,elnombredelamaquinaydelprogramaquegener elevento.

05/10/06

PrincipiosdeseguridadenLinux

21

Auditoriadel sistema
Existendiferentestiposdearchivosdelog dependiendodelainformacin. Loslogsdelsistemadebenserrotados peridicamenteparapoderdisminuirsu tamao Loslogspuedensercomprimidos

Losparametrosylacantidaddelogsquese guardanenelsistemadependernenparte delacapacidaddelosdiscosduros. 05/10/06 PrincipiosdeseguridadenLinux

22

Auditoriadel sistema
Archivosdelogsmascomunes:

05/10/06

/var/log/syslog:eselarchivodelogmas importantedelsistema;enelse guardanmensajesrelativosalaseguridaddela maquina,comolosaccesosolosintentosde accesoaciertosservicios.Noobstante,este archivoesescritoporsyslogd,porloque dependiendodenuestroarchivode configuracinencontraremosenelarchivounau otrainformacin.


PrincipiosdeseguridadenLinux

23

Auditoriadel sistema

Archivosdelogsmascomunes: (continuacion)

/var/log/messages:Enestearchivose almacenandatos`informativos'deciertos programas,mensajesdebajaomediaprioridad destinadosmasainformarqueaavisarde sucesosimportantes,comoinformacinrelativa alarranquedelamaquina.


PrincipiosdeseguridadenLinux 24

05/10/06

3 Controlde accesodered
Red Firewall

TCP wrappers

Xinetdo inetd

05/10/06

Serviciosde redTCP wrappers

Controlador deservicio deredxinitd PrincipiosdeseguridadenLinux

25

3 Controlde accesodered

Inetd

Alcrecerelnmerodeserviciosquesenecesitaban, seoptporunamejoridea,seempezautilizarun slodemoniollamado/etc/inetd(Eldaemonde Internet). Esteprogramaescuchabaenvariospuertosalavezy ejecutabalosservidoresquesenecesitaranenel momentoenqueserecibalapeticindeconexin.

Cuandoempiezasuejecucinrevisaelarchivode configuracion/etc/inetd.confparadeterminarqu serviciosdereddebecontrolar 05/10/06 PrincipiosdeseguridadenLinux

26

3 Controlde accesodered
Inetdcomofunciona Cuandounhostclienteintentaconectarseaun servicioderedcontroladoporinetd,elsperservicio recibelapeticinyverificaporcualquierreglade controldeaccesowrappersTCP. Sisepermiteelacceso,inetdverificaquela conexinseapermitidabajosuspropiasreglaspara eseservicioyqueelservicionoestconsumiendo msdelacantidadderecursososiestrompiendo algunaregla.Luegocomienzaunainstanciadel serviciosolicitadoypasaelcontroldelaconexinal 05/10/06 PrincipiosdeseguridadenLinux 27 mismo.

Controldeacceso dered
TCPwrappers

ElwrappersTCPproporcionacontroldeacceso basadoenhostalosserviciosdered. Elcomponentemsimportantedentrodelpaquete eslalibrera/usr/lib/libwrap.a. Cuandounintentodeconexineshechoaun serviciowrappedTCP,elservicioprimero referencialosarchivosdeaccesodehost (/etc/hosts.allowy/etc/hosts.deny)paradeterminar sielclientetienepermitidoconectarse. Luegoutilizaeldemoniosyslog(syslogd)para escribirelnombredelhostsolicitanteyelservicio 05/10/06solicitadoa/var/log/secureo/var/log/messages. PrincipiosdeseguridadenLinux 28

3 Controlde accesodered

TCPwrappers Siaunclienteselepermiteconectarse,losTCP wrappersliberanelcontroldelaconexinalservicio solicitadoynointerfierenmsconlacomunicacin entreelclienteyelservidor. AlgunasdelosdemonioqueutilizanTCPwrappers son/usr/sbin/sshd,/usr/sbin/sendmail,y /usr/sbin/xinetd.

05/10/06

PrincipiosdeseguridadenLinux

29

4 Tcnicasde autentificacin

Mtodoclsico

Usodelarchivo/etc/passwd
Unpodratratarderomperlacontrasea,aunqueestoes pocoprobable,elatacantecifraraunapalabrajuntoaun determinadosalt,ycompararelresultadoconlacadena almacenadaenelarchivodeclaves.

05/10/06

PrincipiosdeseguridadenLinux

30

4 Tcnicasde autentificacin

Mtodoclsico

Deestaforma,unatacanteleerelarchivo/etc/passwdy medianteunprogramaadivinador(ocrackeador)comoCrack oJohntheRippercifrartodaslaspalabrasdeunarchivo denominadodiccionario,comparandoelresultadoobtenidoen esteprocesoconlaclavecifradadelarchivodecontraseas; siamboscoinciden,yahaobtenidounaclaveparaaccederal sistemadeformanoautorizada

05/10/06

PrincipiosdeseguridadenLinux

31

4 Tcnicasde autentificacin

ShadowPassword
Laideabsicadeestemecanismoesimpedirquelosusuariossin privilegiospuedanleerelarchivodondesealmacenanlasclaves cifradas.Enequiposcon/etc/shadowelarchivo/etc/passwdsigue siendolegibleparatodoslosusuarios,peroadiferenciadel mecanismotradicional,lasclavescifradasnoseguardanenl,sino enelarchivo/etc/shadow,quesloelrootpuedeleer.

05/10/06

PrincipiosdeseguridadenLinux

32

4 Tcnicasde autentificacin

ShadowPassword
Elaspectode/etc/shadowesenciertaformasimilaralde /etc/passwdqueyahemoscomentado:existeunalneaporcada usuariodelsistema,enlaquesealmacenasuloginysuclave cifrada. Sinembargo,elrestodecamposdeestearchivosondiferentes; correspondenainformacinquepermiteimplementarotro mecanismoparaprotegerlasclavesdelosusuarios.

05/10/06

PrincipiosdeseguridadenLinux

33

4 Tcnicasde autentificacin

Clavesdeunsolouso(onetimepassword)

Existendosmtodosparaimplementaresta tcnica:

Tokensdehardware Codebooks

05/10/06

PrincipiosdeseguridadenLinux

34

4 Tcnicasde autentificacin

Sistemasdeautentificacindered

NisyNis+ Kerberos Radius LDAP

05/10/06

PrincipiosdeseguridadenLinux

35

Tcnicasdeautentificacin
Otrasmtodosdeautentificacin PAM(PluggableAuthenticationModule)

PAMnoesunmodelodeautenticacinens,sinounmecanismo queproporcionaunainterfazentrelasaplicacionesdeusuarioy diferentesmtodosdeautenticacin,trantadodeestaformade solucionarunodelosproblemasclsicosdelaautenticacinde usuarios:elhechodequeunavezquesehadefinidoe implantadociertomecanismoenunentorno,esdifcilcambiarlo.

05/10/06

PrincipiosdeseguridadenLinux

36

Tcnicasdeautentificacin
Otrasmtodosdeautentificacin PAM(PluggableAuthenticationModule)

MediantePAMpodemoscomunicaranuestraaplicacionesconlos mtodosdeautenticacinquedeseemosdeunaforma transparente,loquepermiteintegrarlasutilidadesdeunsistema Unixclsico(login,ftp,telnet...)conesquemasdiferentesdel habitualpassword:clavesdeunsolouso,biomtricos,tarjetas inteligentes...

05/10/06

PrincipiosdeseguridadenLinux

37

5 Proteccinde conexionesdered

ParaprotegerlasconexionesderedLinux puedeusarherramientasyprotocolostales comotalescomo: Ssh Ipsec CIPE Vtun PKI


PrincipiosdeseguridadenLinux 38

05/10/06

6 Cortafuegosdehost (basico)

Utilicepolticasporomisintalescomo:

Paraiptables:

iptablesPINPUTDROP iptablesPOUTPUTACCEPT iptablesPFORWARDDROP ipchainsPinputDENY ipchainsPoutputACCEPT ipchainsPforwardDENY

Paraipchains:

05/10/06

PrincipiosdeseguridadenLinux

39

6 Cortafuegosdehost (basico)

Tambinpuedeutilizarpaquetestalescomo: Firestarter Shorewall TuxFrw TurtleFirewall

05/10/06

PrincipiosdeseguridadenLinux

40

IDSde target

Tripwire:

Elsoftwaredeaseguramientodeintegridaddelosdatos Tripwire,monitorealaconsistenciadearchivosydirectorios desistemacrticosidentificandotodosloscambioshechosa ellos. Estolohacemedianteunmtodoautomatizadode verificacinqueseejecutaaintervalosregulares. SiTripwiredetectaqueunodelosarchivosmonitoreados hasidocambiado,lonotificaaladministradordelsistema vaemail.DebidoaqueTripwirepuedefcilmenteidentificar losarchivosquesonmodificados,agregadosoeliminados, seagilizaelprocesoderecuperacinluegodeunaentrada 05/10/06forzadapuesmantieneelnmerodearchivosquedeben PrincipiosdeseguridadenLinux 41 serrestauradosaunmnimo.

IDSdetarget

Tripwire:
EstashabilidadeshacendeTripwireunaherramientaexcelenteparalos administradoresdesistemasquerequierentantodefacilidadespara deteccindeintrusoscomodecontroldedaosparasusservidores. Tripwirecomparalosarchivosydirectoriosconunabasededatosdela ubicacindearchivos,lasfechasenquehansidomodificadosyotrosdatos. Tripwiregeneralabasetomandounainstantnea.Estabasededatos contienehash .Loscontenidosdelabasededatosdehashdeberansergeneradosantes dequeelsistemaestenriesgo,estoesantesdequeseconectealared.

05/10/06

PrincipiosdeseguridadenLinux

42

IDSdetarget

Tripwire:
Despusdecrearlabasededatosdefundamentos,Tripwirecomparala basededatosactualconlabasededatosdefundamentoseinformade cualquiermodificacin,adicinoeliminacin.

Otraalternativa

aide

05/10/06

PrincipiosdeseguridadenLinux

43

IDSdetarget

AIDE

AIDE(EntornoAvanzadodeDeteccindeIntrusiones). Generaunabasededatosquepuedeserusadaparaverificar laintegridaddelosarchivosenelservidor.Usaexpresiones regularesparadeterminarquearchivossontomadospara aadirlosalabasededatos.Puedeusarunagrancantidad dealgoritmosdeverificacinparaasegurarquelosarchivos nohansidoalterados

05/10/06

PrincipiosdeseguridadenLinux

44

IDSdetarget

AIDE

Secreaunabasededatosapartirdeunaseriedereglasy expresionesregularesdesdeunarchivodeconfiguracin.Unavez queestabasededatoshasidoinicializadaestapuedeserusada paraverificarlaintegridaddelosarchivos.Usaungrannumerode algoritmosdeverificacin(md5,sha1,rmd160,tiger,haval,etc.)que sonusadosparaverificaralintegridaddelosarchivos.Todoslos atributosusualestambinpuedenserverificadoscontra inconsistencias.Tambinpuedeleerarchivosdebasesdedatos deversionesmasantiguasynuevas

05/10/06

PrincipiosdeseguridadenLinux

45

8Pruebasymonitoreodelsistema

Laspruebasymonitoreodelsistemadebe centrarseel:

Loginsypasswords Sistemasdearchivos Red Logsdelsistema

05/10/06

PrincipiosdeseguridadenLinux

46

8Pruebasymonitoreodelsistema

Pruebasdefortalezadepasswords

JohntheRipper Cracklib

05/10/06

PrincipiosdeseguridadenLinux

47

8Pruebasymonitoreodelsistema

Cuentassinpassword

Paraellorevisarelarchivo/etc/shadow Ejemplo #awkF:'$2==""{print$1sinpassword"}'/etc/shadow #pedrosinpassword

Cuentasdesuperusuario

Paraellorevisarelarchivo/etc/pasword Ejemplo #awkF:'$3==0{print$1"essuperuser"}'/etc/passwd #rootessuperuser

05/10/06

PrincipiosdeseguridadenLinux

48

8Pruebasymonitoreodelsistema

Usuariosquesehanentradoalsistema

Paraestousarelcomando:

#Lastlog

Tambinsepuederevisarlosltimosaccesode redmedianteelcomando:

#tail/var/log/secure

05/10/06

PrincipiosdeseguridadenLinux

49

8Pruebasymonitoreodelsistema

Sistemasdearchivos

EstandarizarelusodelosIDSdetargettales comolosyamencionados Paraencontrararchivosconpermisosde escrituraparatodos:

#find/xdevperm+o=w!\(typedperm+o=t\)!typel print

05/10/06

PrincipiosdeseguridadenLinux

50

8Pruebasymonitoreodelsistema

Sistemasdearchivos

Bsquedaderootkits Paraestosepuedeutilizarherramientastalescomo Chkrootkit

Chkrootkit:esunshellscriptquebuscaennuestrosistemabinarios modificadosporesosrootkitsusadosporloshakersparacomprometer sistemas.

05/10/06

PrincipiosdeseguridadenLinux

51

8Pruebasymonitoreodelsistema

Red

Bsquedadepuertosenescucha:

Usarelnetstat Usarherramientastalescomonmap Ejemplo nmapvsVlocalhost

05/10/06

PrincipiosdeseguridadenLinux

52

8Pruebasymonitoreodelsistema

Red

Utilizarherramientasobservarlasconexionesderedtales como: Tcpdump Ethereal Revisarperidicamentesialgunodelosserviciosdered aceptacontraseasplanas: Paracapturarlasmismaspodemosusardsniff

05/10/06

PrincipiosdeseguridadenLinux

53

8Pruebasymonitoreodelsistema

Red

Utiliceundetectordeintrusoderedtalcomo SNORT UtiliceherramientastalescomoNessuspararevisarsus serviciosderedenbsquedadevulnerabilidades.

05/10/06

PrincipiosdeseguridadenLinux

54

8Pruebasymonitoreodelsistema

Logsdelsistema

Reviseperidicamenteelfuncionamientodeloslogsdel sistema,yelsistemaderotadodelosmismos. Parafaciltarlavizalisuaciondelosmismopuedeusar herramientastalescomologwatch. Ejemplo: #logwatchrangeallprint|less

05/10/06

PrincipiosdeseguridadenLinux

55

FIN

Estoessolounavisonbsica!!

05/10/06

PrincipiosdeseguridadenLinux

56

Вам также может понравиться