Pentesting y Lógica Booleana: Ejercicios Prácticos y Técnicas de Seguridad

Clasificado en Informática

Escrito el en español con un tamaño de 4,51 KB

Lógica Booleana

OR                                        AND                                        NOT

0/0 = 0                                 0/0 = 0                                    0 = 1

0/1 = 1                                 0/1 = 0                                    1 = 0

1/0 = 1                                 1/0 = 0

1/1 = 1                                 1/1 = 1

Ejercicios de Programación

Ejercicio Triángulo

n = int(input("Pon un número entero: "))

for i in range(1, n + 1):
    for j in range(i, 0, -1):
        print(j, end=" ")
    print()

Ejercicio Número Primo

def es_primo(numero):
    if numero <= 1:
        return False
    for i in range(2, int(numero ** 0.5) + 1):
        if numero % i == 0:
            return False
    return True

numero = int(input("Introduce un número entero: "))

if es_primo(numero):
    print(f"El número {numero} es primo.")
else:
    print(f"El número {numero} no es primo.")

Pentesting

Llamamos "pentest" o test de intrusión a una prueba de seguridad ofensiva que simula un ciber ataque real en un entorno controlado. El objetivo principal de este tipo de pruebas es identificar las posibles brechas en la seguridad de un sistema de manera que, al simular el comportamiento de los atacantes reales, podamos descubrir vulnerabilidades y agujeros de seguridad que necesiten ser corregidos para que no sean explotados por parte de atacantes reales.

Tipos de Ataques Comunes

  • Instalación de Malware, virus, troyanos o keyloggers
  • Explotación de bugs mediante exploits
  • Acceso a los sistemas aprovechando una mala configuración
  • Utilizar técnicas de ingeniería social para "colar" archivos no deseados o abrir puertas traseras

Fases del Pentesting

  1. Reconocimiento
  2. Análisis de vulnerabilidad
  3. Explotación
  4. Post explotación
  5. Informes

Ventajas y Desventajas de las Cajas

Caja BlancaCaja GrisCaja Negra

Ventajas:

  • Cobertura completa del código
  • Optimización del código
  • Detección de errores

Ventajas:

  • Balance entre caja blanca y negra
  • Detección de problemas de seguridad
  • Simulación realista

Ventajas:

  • Enfoque en la funcionalidad
  • Fácil implementación
  • Detección de errores de usabilidad

Desventajas:

  • Costo y tiempo
  • Especialización
  • Imposibilidad de simular el entorno real

Desventajas:

  • Complejidad
  • Requiere conocimientos mixtos

Desventajas:

  • Cobertura limitada del código
  • Pruebas repetitivas
  • Dificultad para diagnosticar errores

Escaneo de Puertos con Nmap

Escaneo de puertos abiertos en un host específico

nmap (IP)

Escaneo de todos los puertos TCP

nmap -p 0-65535 (IP)

Escaneo rápido

nmap -f (IP)

Detección de sistema operativo

nmap -O (IP)

Escaneo de versiones de servicios

nmap -sV (IP)

Escaneo de ping

nmap -sn

Escaneo sigiloso (SYN scan)

nmap -sS (IP)

Escaneo de una red completa

nmap 192.168.1.0/24

Entradas relacionadas: