PYTHON Course For CyberSec
PYTHON Course For CyberSec
Teoría:
● print("Niño")
● Bucles: for es más parecido al for...of de JS:
● python
● Copy
Ejercicio 1:
javascript
Copy
// JS
function esSegura(password) {
if (password.length >= 8 && password.includes("!")) {
return true;
} else {
return false;
}
}
console.log(esSegura("pass!123"));
Copy
def es_segura(password):
if len(password) >= 8 and "!" in password:
return True
else:
return False
</details>
Teoría:
usuario = {
"nombre": "Alice",
"ip": "192.168.1.1",
"intentos_fallidos": 3
}
python
Copy
<details> <summary>**Solución**</summary>
python
Copy
ips_privadas = []
for ip in ips:
if ip.startswith("10.") or ip.startswith("192.168.") or
ip.startswith("172.") and 16 <= int(ip.split(".")[1]) <= 31:
ips_privadas.append(ip)
print(ips_privadas) # Output: ['10.0.0.1', '172.16.0.1', '192.168.1.1']
</details>
Teoría:
python
Copy
import socket
Ejercicio 3:
Modifica el script para escanear los puertos del 1 al 1024 y guardar los resultados
en un diccionario:
python
Copy
<details> <summary>**Solución**</summary>
python
Copy
escanear_rango("127.0.0.1", 1, 1024)
print(resultados)
</details>
Teoría:
python
Copy
import requests
from bs4 import BeautifulSoup
url = "https://ejemplo.com"
response = requests.get(url)
soup = BeautifulSoup(response.text, "html.parser")
Ejercicio 4:
Crea un script que extraiga todos los correos electrónicos de una página web.
Pista: Usa expresiones regulares (re module) para buscar patrones como
<details> <summary>**Solución**</summary>
python
Copy
import re
</details>
archivos.
python
Copy
import hashlib
print(calcular_hash("documento.txt"))
Ejercicio 5:
python
Copy
hash_original = "a591a6d40bf420404a011733..."
hash_actual = calcular_hash("documento.txt")
# Compara y muestra "Archivo modificado" o "Integridad verificada"
<details> <summary>**Solución**</summary>
python
Copy
if hash_actual == hash_original:
print("Integridad verificada")
else:
print("¡Archivo modificado!")
</details>
gratuita):
python
Copy
import requests
api_key = "TU_API_KEY"
dominio = "google.com"
url = f"https://api.securitytrails.com/v1/domain/{dominio}/subdomains"
headers = {"APIKEY": api_key}
response = requests.get(url, headers=headers)
subdominios = response.json().get("subdomains", [])
print(f"Subdominios de {dominio}:")
for sub in subdominios:
print(f"{sub}.{dominio}")
Siguientes Pasos: