Manténgase al día con lo último en codificación segura.
El panorama de las amenazas cibernéticas cambia constantemente y es más importante que nunca estar un paso por delante. Con una serie de vídeos, blogs y directrices prácticas sobre codificación segura, podemos ayudarle a mantenerse al día y estar preparado para los próximos avances.


Nuestras últimas directrices para una codificación segura.
{
"dependencies": {
"foo": "1.0.0 - 2.9999.9999",
"bar": ">=1.0.2 <2.1.2"
}
}
Uso de componentes con vulnerabilidades conocidas
{
"dependencies": {
"foo": "1.0.0 - 2.9999.9999",
"bar": ">=1.0.2 <2.1.2"
}
}
La mayoría de las aplicaciones hacen uso de grandes cantidades de componentes de terceros. Estos componentes proporcionan de todo, desde registro, plantillas, acceso a bases de datos y mucho más. Esto facilita mucho el desarrollo de software y ahorra mucho tiempo. Pero también están hechos por personas, lo que significa que algunos contendrán inevitablemente vulnerabilidades. Lee las directrices para saber más.
import mysql.connector
db = mysql.connector.connect
#Mala práctica. ¡Evita esto! Esto es sólo para aprender.
(host="localhost", user="newuser", passwd="pass", db="sample")
cur = db.cursor()
name = raw_input('Enter Name: ')
cur.execute("SELECT * FROM sample_data WHERE Name = '%s';" % name) for row in cur.fetchall(): print(row)
db.close()
Inyección SQL
import mysql.connector
db = mysql.connector.connect
#Mala práctica. ¡Evita esto! Esto es sólo para aprender.
(host="localhost", user="newuser", passwd="pass", db="sample")
cur = db.cursor()
name = raw_input('Enter Name: ')
cur.execute("SELECT * FROM sample_data WHERE Name = '%s';" % name) for row in cur.fetchall(): print(row)
db.close()
La inyección SQL (SQLi) inyecta código en sentencias SQL para atacar y obtener información importante de una aplicación. Es una vulnerabilidad de seguridad web. Es la técnica más común de hacking que manipula la base de datos y extrae información crucial de ella.

Muchos frameworks también tienen un conjunto de endpoints que se pueden habilitar y que permiten monitorizar la aplicación, ya sea en un entorno de producción o de pruebas/desarrollo. Estos pueden incluir:
Métricas (Prometheus)
Registros
Información del entorno
Asignaciones de ruta/Url
Desconfiguración de la seguridad
Muchos frameworks también tienen un conjunto de endpoints que se pueden habilitar y que permiten monitorizar la aplicación, ya sea en un entorno de producción o de pruebas/desarrollo. Estos pueden incluir:
Métricas (Prometheus)
Registros
Información del entorno
Asignaciones de ruta/Url
La desconfiguración de la seguridad es una especie de término general que abarca vulnerabilidades comunes que entran en juego debido a los ajustes de configuración de una aplicación, más que a un código defectuoso. Es un tema muy amplio y depende en gran medida de factores como la pila tecnológica. A menudo, solucionar estos problemas es algo que parece sencillo, como cambiar un archivo de configuración o incluso una sola línea de código, pero el impacto y las consecuencias de estas vulnerabilidades pueden ser graves. Lea nuestra guía para saber más sobre esta vulnerabilidad y cómo mitigarla.
ts
let url = request.params.url;
let response = http.get(url);
let render = response.render();
return render.export();
Falsificación de peticiones del lado del servidor
ts
let url = request.params.url;
let response = http.get(url);
let render = response.render();
return render.export();
Las vulnerabilidades de Falsificación de Peticiones del Lado del Servidor ocurren cuando un usuario es capaz de hacer que una aplicación haga peticiones HTTP a un dominio determinado por el atacante. Si una aplicación tiene acceso a redes privadas/internas, un atacante también podría hacer que la aplicación hiciera peticiones a servidores internos. Veremos esto más de cerca con algunos ejemplos para entender mejor cómo se ve en acción en esta guía.
Misiones de codificación seguras en el mundo real.
Explore nuestra biblioteca con ejercicios de formación públicos. En estas misiones SCW, por ejemplo, obtendrá experiencia práctica con algunos métodos controvertidos para la codificación segura en una simulación de aplicación real.