Universidad Nacional Autónoma de México
Facultad de Contaduría y Administración
Diplomado Diseño y Administración de Base de Datos
Módulo 6. Seguridad de Bases de Datos
libro para colorear de Peppa pig, ideal para educación inicial
Actividad No. 1.14: Protección del servidor MySQL mediante filtrado de paquetes
1. Universidad
Nacional
Autónoma
de
México
Facultad
de
Contaduría
y
Administración
Diplomado
Diseño
y
Administración
de
Base
de
Datos
Módulo
6.
Seguridad
de
Bases
de
Datos
Elaboró:
Francisco
Medina
López
1
Actividad
No.
1.14:
Protección
del
servidor
MySQL
mediante
filtrado
de
paquetes
Antecedentes
MySQL
es
el
sistema
manejador
de
bases
de
datos
relacionales,
multihilos,
multiusuario
y
robusto
más
popular
hoy
en
día,
desarrollado
y
proporcionado
por
MySQL
AB.
Para
su
ejecución
MySQL
necesita
de
un
sistema
operativo.
CentOS
(Community
ENTerprise
Operating
System)
es
una
bifurcación
a
nivel
binario
de
la
distribución
Linux
Red
Hat
Enterprise
Linux
(RHEL),
compilado
por
voluntarios
a
partir
del
código
fuente
liberado
por
Red
Hat.
Es
un
sistema
operativo
de
código
abierto,
basado
en
la
distribución
Red
Hat
Enterprise
Linux,
operándose
de
manera
similar,
y
cuyo
objetivo
es
ofrecer
al
usuario
un
software
de
"clase
empresarial"
gratuito.
Se
define
como
robusto,
estable
y
fácil
de
instalar
y
utilizar.
Desde
la
versión
5,
cada
lanzamiento
recibe
soporte
durante
diez
años,
por
lo
que
la
actual
versión
7
recibirá
actualizaciones
de
seguridad
hasta
el
30
de
junio
de
2024.1
Dado
que
la
información
más
importante
de
una
organización
se
encuentra
almacenada
en
un
servidor
de
base
de
datos,
es
imperativo
acceder
a
el
de
forma
segura.
Un
firewall
es
software
o
hardware
que
comprueba
la
información
procedente
de
Internet
o
de
una
red
y,
a
continuación,
bloquea
o
permite
el
paso
de
ésta
al
equipo,
en
función
de
la
configuración
del
firewall.2
Puede
ayudar
a
impedir
que
hackers
o
software
malintencionado
(como
gusanos)
obtengan
acceso
al
equipo
a
través
de
una
red
o
de
Internet.
También
puede
ayudar
a
impedir
que
el
equipo
envíe
software
malintencionado
a
otros
equipos.
En
la
siguiente
ilustración
se
muestra
el
funcionamiento
de
un
firewall.
1
https://es.wikipedia.org/wiki/CentOS
2
http://windows.microsoft.com/es-‐mx/windows/what-‐is-‐firewall#1TC=windows-‐7
2. Universidad
Nacional
Autónoma
de
México
Facultad
de
Contaduría
y
Administración
Diplomado
Diseño
y
Administración
de
Base
de
Datos
Módulo
6.
Seguridad
de
Bases
de
Datos
Elaboró:
Francisco
Medina
López
2
Como
se
observa
en
la
ilustración,
un
firewall
crea
una
barrera
entre
Internet
y
el
equipo,
igual
que
la
barrera
física
que
constituiría
una
pared
de
ladrillos.
Hay
que
recordar
que
un
firewall
no
es
lo
mismo
que
un
programa
antivirus
Netfilter
es
la
implementación
de
un
firewall
en
GNU/Linux.
Es
un
componente
del
kernel
que
permite
interceptar
y
manipular
paquetes
de
red.
La
configuración
de
un
firewall
en
GNU/Linux
se
realiza
con
el
comando
iptables.
Objetivo
Configurar
el
acceso
seguro
al
servidor
de
base
de
datos
MySQL
mediante
filtrado
de
paquetes
del
sistema
operativo
CentOS
donde
se
ejecuta
el
manejador
de
base
de
datos
MySQL.
3. Universidad
Nacional
Autónoma
de
México
Facultad
de
Contaduría
y
Administración
Diplomado
Diseño
y
Administración
de
Base
de
Datos
Módulo
6.
Seguridad
de
Bases
de
Datos
Elaboró:
Francisco
Medina
López
3
Requerimientos
Para
la
ejecución
de
esta
actividad,
serán
necesarios
dos
equipos
de
cómputo
con
los
siguientes
roles:
• Equipo
No.
1:
Servidor
de
base
de
datos
(CentOS).
Configurar
este
equipo
de
acuerdo
a
la
Actividad
No.
1.4-‐
Instalación
y
Configuración
de
MySQL
en
CentOS
6
y
crear
una
la
base
de
datos
world
como
lo
indica
la
Actividad
No.
1.6-‐
Creación
de
bases
de
datos
en
MySQL.
• Equipo
No.
2:
Computadora
cliente
que
tiene
privilegios
de
conexión
al
servidor
de
base
de
datos.
(CentOS).
• Equipo
No.
3:
Computadora
atacante
que
NO
tiene
privilegios
de
conexión
al
servidor
de
base
de
datos
(Kali
Linux)
configurado
como
lo
indica
la
Actividad
No.
1.2:
Introducción
a
Kali
Linux.
La
siguiente
figura
muestra
la
topología
de
red
a
utilizar
en
esta
actividad:
4. Universidad
Nacional
Autónoma
de
México
Facultad
de
Contaduría
y
Administración
Diplomado
Diseño
y
Administración
de
Base
de
Datos
Módulo
6.
Seguridad
de
Bases
de
Datos
Elaboró:
Francisco
Medina
López
4
Instrucciones
1. En
el
servidor
de
base
de
datos,
valida
que
los
servicio
sshd
y
mysqld
se
encuentran
en
ejecución:
service
sshd
status
service
mysqld
status
En
caso
de
no
estar
en
ejecución
iniciarlos
con
los
siguientes
comandos:
service
sshd
start
service
mysqld
start
2. Asegúrate
que
el
firewall
se
encuentre
detenido:
service
iptables
stop
5. Universidad
Nacional
Autónoma
de
México
Facultad
de
Contaduría
y
Administración
Diplomado
Diseño
y
Administración
de
Base
de
Datos
Módulo
6.
Seguridad
de
Bases
de
Datos
Elaboró:
Francisco
Medina
López
5
3. En
el
equipo
No.
3
atacante,
realiza
un
barrido
de
puertos
al
servidor
de
base
de
datos
con
el
siguiente
comando:
nmap
-‐O
-‐v
-‐sS
10.211.55.12
¿Qué
puertos
se
encuentran
abiertos
en
el
servidor
de
base
de
datos?
4. En
el
servidor
de
base
datos
configura
el
firewall
con
los
siguientes
comandos:
iptables
-‐P
INPUT
DROP
iptables
-‐P
FORWARD
DROP
iptables
-‐P
OUTPUT
ACCEPT
iptables
-‐A
INPUT
-‐m
state
-‐-‐state
RELATED,ESTABLISHED
-‐j
ACCEPT
service
iptables
save
service
iptables
start
6. Universidad
Nacional
Autónoma
de
México
Facultad
de
Contaduría
y
Administración
Diplomado
Diseño
y
Administración
de
Base
de
Datos
Módulo
6.
Seguridad
de
Bases
de
Datos
Elaboró:
Francisco
Medina
López
6
5. En
el
equipo
No.
3
atacante,
realiza
de
nuevo
un
barrido
de
puertos
al
servidor
de
base
de
datos
con
el
siguiente
comando:
nmap
-‐O
-‐v
-‐sS
192.168.1.x
¿El
resultado
es
el
mismo
obtenido
en
el
paso
3?
6. En
el
equipo
No.
3
atacante,
realiza
un
ping
al
servidor
de
base
de
datos:
ping
–c3
192.168.1.x
7. Universidad
Nacional
Autónoma
de
México
Facultad
de
Contaduría
y
Administración
Diplomado
Diseño
y
Administración
de
Base
de
Datos
Módulo
6.
Seguridad
de
Bases
de
Datos
Elaboró:
Francisco
Medina
López
7
¿Qué
respuesta
obtienes?
7. En
el
servidor
de
base
datos
configura
el
firewall
para
permitir
conexiones
al
servico
ssh
(puerto
22),
mysql
(puerto
3306)
y
ping
(protocolo
icmp),
con
los
siguientes
comandos:
iptables
-‐A
INPUT
-‐i
eth0
-‐p
tcp
-‐-‐dport
22
-‐m
state
-‐-‐state
NEW,ESTABLISHED
-‐j
ACCEPT
iptables
-‐A
INPUT
-‐i
eth0
-‐p
tcp
-‐-‐dport
3306
-‐m
state
-‐-‐state
NEW,ESTABLISHED
-‐j
ACCEPT
iptables
-‐A
INPUT
-‐p
icmp
-‐j
ACCEPT
service
iptables
save
service
iptables
restart
8. Repite
el
paso
5,
en
el
equipo
No.
3
atacante
ejecuta
un
barrido
de
puertos:
nmap
-‐O
-‐v
-‐sS
10.211.55.12
8. Universidad
Nacional
Autónoma
de
México
Facultad
de
Contaduría
y
Administración
Diplomado
Diseño
y
Administración
de
Base
de
Datos
Módulo
6.
Seguridad
de
Bases
de
Datos
Elaboró:
Francisco
Medina
López
8
¿El
resultado
es
el
mismo
comparado
con
los
barridos
de
puertos
anteriores?