Foros ZackYFileS

Foros ZackYFileS (http://foros.zackyfiles.com/index.php)
-   RECEPTORES - GENERAL (http://foros.zackyfiles.com/forumdisplay.php?f=21)
-   -   seguridad en receptores linux (http://foros.zackyfiles.com/showthread.php?t=661181)

††LUCIFER†† 13/03/2013 11:29

seguridad en receptores linux
 
Creo que una parte importante cuando adquirimos un deco en este caso linux, es la SEGURIDAD, para evitar o por lo menos intentar ponerlo lo mas dificil posible, el acceso a nuestro receptor, o en caso que hubieran podido entrar, pues poder ver que lo hallan hecho, es una cosa que esta un poco olvidada, pero tambien es importante tenerla en cuenta, realmente con estos consejos no vas a evitar al 100% esto, pero por lo menos reduciras el numero de porcentaje de riesgo, ya que esta a la orden del dia, el robar lineas de sharing, etc.. etc..

Para ello voy a dar unos consejillos practicos que como dije no lo van a evitar 100% pero por lo menos reduciremos algo el riesgo:

1) Cambiar todas las pass por defecto que lleve el receptor

2) En caso de sharing limitar una linea a una ip o a un host

3) Si hacemos sharing externo no poner los puertos mas usuales o que vienen por defecto en las emus, y limitar el puerto que pongamos por ejemplo utilizando iptables-netfilter a las ip y host con quien estemos haciendo sharing.

MANUAL IPTABLES RECEPTORES SH4

Pues cuando intercambiamos nuestras lineas..., pues a veces la persona con la que hemos compartido, pues resulta que pueda ser de dudosa reputacion, o que cuando terminamos de compartir con el y borramos su linea, pues el sigue manteniendola etc....saliendonos intento de conexiones, etc...

Una manera de bloquear la ip, host, de esas personas es utilizando como ya es sabido con iptables y netfilter, aunque muchas imagenes actuales para nuestros decos sh4 y en concreto gm990, no llevan iptables, y ya no compilan con netfilter.....

Pues en este post vamos a tratar de ponerlo todo nosotros de una manera manual, para ello vamos a realizar lo siguiente:

a) introducir iptables y crear enlaces:

DESCARGA IPTABLES

una vez descargado lo vamos a introducir en la carpeta que deseemos de nuestro receptor y le damos permiso 755..

En mi caso lo introduzco en:

root/spark/etc/var/sbin

A continuacion vamos a crear enlaces simbolicos necesarios en el autorun.sh para el funcionamiento correcto de iptables al reiniciar y que luego nos funcionen sus comandos:

Para ello vamos a modificar el autorun.sh de nuestro receptor:

a.1) Lo abrimos y observamos en su cabezera:

Código:

#!/bin/sh# prepare lib
Código:

#############################GROUPNAME=sparkAPPBASEDIR=/root/$GROUPNAMEHALMODULESDIR=$APPBASEDIR/modulesAPPMODULESDIR=$APPBASEDIRUSRLIBDIR=$APPBASEDIR/libUSRSCRIPTDIR=$APPBASEDIR/etc

Esto nos viene a decir que:

[COLOR=#000000][FONT=Verdana]la direccion de nuestro deco /root/spark/etc es igual a si ponemos USRSCRPTDIR, por lo tanto como vimos que habiamos introducido los iptables en /root/spark/etc/var/sbin pues nosotros añadiriamos en el autorun.sh lo siguiente:[/FONT][/COLOR]


[COLOR=#000000][FONT=Verdana]ln -s $USRSCRIPTDIR/var/sbin/iptables-multi /bin/iptables[/FONT][/COLOR]
[COLOR=#000000][FONT=Verdana]ln -s $USRSCRIPTDIR/var/sbin/iptables-multi /bin/iptables-restore[/FONT][/COLOR]
[COLOR=#000000][FONT=Verdana]ln -s $USRSCRIPTDIR/var/sbin/iptables-multi /bin/iptables-save[/FONT][/COLOR]
[COLOR=#000000][FONT=Verdana]ln -s $USRSCRIPTDIR/var/sbin/iptables-multi /bin/iptables-xml[/FONT][/COLOR]

[COLOR=#000000][FONT=Verdana]Con esto ya habriamos creado los enlaces simbolicos al binario iptables-multi, para asi nos funcionen todas sus funciones...[/FONT][/COLOR]

[COLOR=#000000][FONT=Verdana]a.2) A continuacion queremos que al reiniciar se nos cree un archivo relaciondo con iptables, por si queremos guardar reglas del iptables, y lo vamos a llamar firewall.conf, pues para ello en el archivo autorun.sh añadiremos esta linea:[/FONT][/COLOR]

[COLOR=#000000][FONT=Verdana]ln -sf $USRSCRIPTDIR/var/sbin/iptables /etc/init.d/iptables[/FONT][/COLOR]


[COLOR=#000000][FONT=Verdana]esto nos crea un enlace simbolico en etc/init.d del script llamado iptables, para que funcione en el reinicio, el script es el siguiente, y esta añadido en el archivo que os puse en descarga:[/FONT][/COLOR]

[COLOR=#000000][FONT=Verdana][CODE]#!/bin/sh## chkconfig: 2345 20 20#[/CODE][/FONT][/COLOR][CODE]
[COLOR=#000000][FONT=Verdana]start() { echo Starting firewall: iptables. iptables-restore < /etc/firewall.conf}save() { iptables-save > /etc/firewall.conf}[/FONT][/COLOR]
[COLOR=#000000][FONT=Verdana]stop() { echo Stopping firewall: iptables. save}[/FONT][/COLOR]
[COLOR=#000000][FONT=Verdana]case "$1" in start) start RETVAL=$? ;; stop) stop RETVAL=$? ;; save) save RETVAL=$? ;; *) echo $"Usage: $0 {start|save|stop}" exit 1 ;;esac[/FONT][/COLOR][/CODE]


[COLOR=#000000][FONT=Verdana]b) Una vez hemos ya introducido el iptables, necesitaremos netfilter, que en muchas imagenes ya no viene compilado con el kernel, asi que vamos a meterlo manualmente, en primer lugar vamos a descargar los modulos netfilter:[/FONT][/COLOR]

[COLOR=#000000][FONT=Verdana][URL="http://www.mediafire.com/file/7ceq6yg26mt9f3n/kernel.rar"]DESCARGA NETFILTER KERNEL SH4[/URL] [/FONT][/COLOR]

[COLOR=#000000][FONT=Verdana]y lo introducimos en: root/spark/modules y le damos permisos 755[/FONT][/COLOR]

[COLOR=#000000][FONT=Verdana]c) A continuacion reiniciamos el receptor.[/FONT][/COLOR]

[COLOR=#000000][FONT=Verdana]d) vamos a utilizar dos comandos basicos para bloquear el host maldito ;)[/FONT][/COLOR]

[COLOR=#000000][FONT=Verdana]e) Comprobamos por ejemplo, para ver que el funcionamiento es correcto, podemos poner, por consola:[/FONT][/COLOR]

[COLOR=#000000][FONT=Verdana]iptables -L y si todo esta bien saldra lo siguiente:[/FONT][/COLOR]


[COLOR=#000000][FONT=Verdana][URL="http://imageshack.us/photo/my-images/40/19377869.png/"]http://img40.imageshack.us/img40/4589/19377869.png[/URL][/FONT][/COLOR]

[COLOR=#000000][FONT=Verdana]f) A continuacion vamos a bloquear el host maldito que es: lucifer69.zapto.org[/FONT][/COLOR]

[COLOR=#000000][FONT=Verdana]Para ello por consola ponemos:[/FONT][/COLOR]

[COLOR=#000000][FONT=Verdana]iptables -A INPUT -s lucifer69.zapto.org -j DROP[/FONT][/COLOR]

[COLOR=#000000][FONT=Verdana]Que hacemos con esto:[/FONT][/COLOR]

[COLOR=#000000][FONT=Verdana]-A----> creamos la regla[/FONT][/COLOR]

[COLOR=#000000][FONT=Verdana]que regla:[/FONT][/COLOR]

[COLOR=#000000][FONT=Verdana]Descartamos (para ello se utiliza DROP al final), todo el trafico que nos entra, -s -->para indicar de donde nos entra-->nos entra de lucifer69.zapto.org[/FONT][/COLOR]

[COLOR=#000000][FONT=Verdana]De esta manera todas las peticiones de ese host pues las descartariamos y ya podriamos estar tranquilos;)[/FONT][/COLOR]

[COLOR=#000000][FONT=Verdana]En caso que quisieramos guardar esta regla ya que al reinciar pues se pierde, pues utilizariamos:[/FONT][/COLOR]

[COLOR=#000000][FONT=Verdana]iptables-save >/etc/firewall.conf [/FONT][/COLOR]

[COLOR=#000000][FONT=Verdana]firewall.conf-->seria el archivo que se nos crea en el script que pusimos en etc/init.d[/FONT][/COLOR]

[COLOR=#000000][FONT=Verdana]y para restaurar las reglas:[/FONT][/COLOR]

[COLOR=#000000][FONT=Verdana]iptables-restor < /etc/firewall.conf[/FONT][/COLOR]

4) Cuando compartimos por sharing no hacerlo con cualquiera, ser un poco cuidadosos y solo compartir con gente fiable.

5) Ver que puertos tenemos abiertos en nuestro receptor para asi saber nuestra vulnerabilidad, por ejemplo lo podemos saber poniendo por telnet el comando:

[CODE]netstat -tul[/CODE]

6) hacer una copia del archivo[LEFT][COLOR=#000000][FONT=Verdana]/etc/password que es donde se guardan las contraseñas del receptor y comprobar cada cierto tiempo que sigue siendo el mismo.

[SIZE="4"][COLOR="Red"]7) Activar en el vsftpd la creacion del vsftpd.log, para ello vamos a /etc/vsftpd.config y poneis:[/COLOR][/SIZE]

[/FONT][/COLOR][/LEFT]
# Activate logging of uploads/downloads.
[B]xferlog_enable=YES[/B]
#
# You may override where the log file goes if you like. The default is shown
# below.
[B]xferlog_file=/var/log/vsftpd.log--->o la carpeta donde queramos que se cree[/B]
#

Asi de vez en cuando podeis ver el log y ver que ips se estan conectando:

[CODE]Mon Oct 8 10:03:18 2012 [pid 1386] CONNECT: Client "192.168.1.34"
Mon Oct 8 10:03:18 2012 [pid 1385] [root] OK LOGIN: Client "192.168.1.34"
Mon Oct 8 10:04:01 2012 [pid 1387] [root] OK DOWNLOAD: Client "192.168.1.34", "/var/log/vsftpd.log", 142 bytes, 3.44Kbyte/sec
Mon Oct 8 10:30:25 2012 [pid 1387] [root] OK DOWNLOAD: Client "192.168.1.34", "/etc/vsftpd.conf", 4116 bytes, 174.16Kbyte/sec[/CODE]

8) Comprobar nuestras vulnerabilidades en nuestros puertos:

en este caso con nmap en ubuntu escaneado con el comando:


[code]nmap -sSU -O -p- -v --osscan-guess host_amigo[/code]




de esta manera me aseguro de escanear todos los puertos y no solo los de por defecto y me arroja este log:




root@gogy-Aspire-5920G:~# nmap -sSU -O -p- -v --osscan-guess host_amigo


Starting Nmap 5.21 ( [URL="http://nmap.org/"]http://nmap.org[/URL] ) at 2012-09-13 16:27 CEST
Initiating Ping Scan at 16:27
Scanning xxxxxxxxxxx [4 ports]
Completed Ping Scan at 16:27, 0.06s elapsed (1 total hosts)
Initiating Parallel DNS resolution of 1 host. at 16:27
Completed Parallel DNS resolution of 1 host. at 16:27, 0.08s elapsed
Initiating SYN Stealth Scan at 16:27
Scanning xxxxxxxx) [65535 ports]
Discovered open port 23/tcp on xxxxxxxxxxxx
Discovered open port 21/tcp on xxxxxxxxxxxx
Discovered open port 80/tcp on xxxxxxxxxxx
Discovered open port 22/tcp on xxxxxxxxxxxxx
Increasing send delay for xxxxxxxx from 0 to 5 due to 449 out of 1495 dropped probes since last increase.
SYN Stealth Scan Timing: About 3.09% done; ETC: 16:44 (0:16:12 remaining)
SYN Stealth Scan Timing: About 11.58% done; ETC: 16:36 (0:07:46 remaining)
SYN Stealth Scan Timing: About 17.57% done; ETC: 16:36 (0:07:07 remaining)
[B]Discovered open port 14015/tcp[/B] on xxxxxxxxxxx
SYN Stealth Scan Timing: About 25.78% done; ETC: 16:35 (0:05:48 remaining)
SYN Stealth Scan Timing: About 34.26% done; ETC: 16:34 (0:04:50 remaining)
[B]Discovered open port 30005/tcp[/B] on xxxxxxxxxxx
SYN Stealth Scan Timing: About 42.76% done; ETC: 16:34 (0:04:02 remaining)
SYN Stealth Scan Timing: About 48.94% done; ETC: 16:34 (0:03:40 remaining)
[B]Discovered open port 34000/tcp[/B] on xxxxxxxxx
SYN Stealth Scan Timing: About 57.44% done; ETC: 16:34 (0:02:59 remaining)
SYN Stealth Scan Timing: About 65.92% done; ETC: 16:34 (0:02:20 remaining)
SYN Stealth Scan Timing: About 74.43% done; ETC: 16:34 (0:01:43 remaining)
SYN Stealth Scan Timing: About 80.60% done; ETC: 16:34 (0:01:20 remaining)
[B]Discovered open port 34001/tcp[/B] on xxxxxxxxxxx
[B]Discovered open port 44401/tcp[/B] on xxxxxxxx
SYN Stealth Scan Timing: About 89.10% done; ETC: 16:34 (0:00:44 remaining)
Completed SYN Stealth Scan at 16:34, 400.40s elapsed (65535 total ports)


aparecen los puertos abiertos y señalados en negritas puertos seguramente utilizados para sharing..


a partir de ahi pues seria comprobar vulnerabilidades para esos puertos....o limitarlos a una ip o un host como dijimos en el punto 3 con iptables.

Pues estos 8 puntos serian unas nociones basicas por lo menos para ponerlo algo mas dificil..


[B][SIZE="4"]ANEXO[/SIZE][/B]

En receptores que su kernel no lleven iptables y no sea posible añadirlo:

Bueno haciendo pruebas para seguridad en la imagen Lonas 1.5:

Exite un plugin firewall descargable desde plugin...problema que necesita iptables para hacerlo correctamente....

Me descargo iptables:

opkg install iptables

Problema: No existen en la imagen los modulos netfilter, que estarian en lib/modules/3.1.1/kernel/net/ipv4

[COLOR=#ff0000]Por lo tanto no se realiza correctamente tanto si utilizamos iptables o el firewall.....[/COLOR]

Os dejo otra manera para que cuando borremos un peer pues no nos de mucho por saco tiene menos opciones de configuracion que iptables/netfilter pero es igual de efectiva si queremos seguridad:

Entramos por consola terminal y ponemos:

[CODE]route add zackyfiles.no-ip.info reject[/CODE]

[B]zackyfiles.no-ip.info=host del peer que deseamos rechazar[/B]

Y observaremos por ejemplo en oscam tras lanzar el comando que nos rechaza la conexion a ese host ;)

[LEFT][COLOR=#666666][FONT=Courier New]2012/12/07 11:01:06 5E2108 p lonas [cccam] connecting to host:puerto[/FONT][/COLOR]
[COLOR=#666666][FONT=Courier New]2012/12/07 11:01:06 5E2108 p lonas [cccam] connect failed: Network is unreachable [/FONT][/COLOR][/LEFT]

Si queremos nuevamente darle acceso a ese host, pues pondriamos:

[CODE]route del zackyfiles.no-ip.info reject[/CODE]

Es decir:

en el primer caso add=añadimos en la tabla rechazar la conexion a ese host
en el segundo caso del=borramos en la tabla rechazar la conexion a ese host


La franja horaria es GMT +2. Ahora son las 21:49.

Powered por vBulletin™ Version 3.8.10
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.
Traducido por vBsoporte - vBulletin en español
ZackYFileS - Foros de Debate