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

Ejercicio triangulo

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 más comunes

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 Blanca                          Caja Gris                             Caja Negra

Ventajas:                              Ventajas:                             Ventajas:

Cobertura                            Balance entre                      Enfoque

completa                              caja blanca y                          en la

del código                            negra                             funcionalidad

Optimización                       Detección                               Fácil

del código                         de problemas             implementación

                                            de seguridad

Detección                                                                     Detección de

de errores                           Simulación                         errores de

                                                 realista                            usabilidad

Desventajas:                    Desventajas:                      Desventajas:

Costo y tiempo               Complejidad                        Cobertura

                                                                                       limitada del

Especialización                   Requiere                              código

                                         conocimientos

Imposibilidad                        mixtos                              Pruebas

de simular el                                                                 repetitivas

entorno real

                                                                                    Dificultad para

                                                                                      diagnosticar

                                                                                          errores



Escaneo de puertos abiertos en un host específico

nmap (IP)

Escaneo de todos los puertos TCP

nmap -p 0-65535 (IP)

Escaneo rapido

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