Restez à l'affût des dernières nouveautés en matière de codage sécurisé.
Le paysage des cybermenaces est en constante évolution et il est plus important que jamais de garder une longueur d'avance. Grâce à une série de vidéos, de blogs et de lignes directrices pratiques en matière de codage sécurisé, nous pouvons vous aider à vous tenir au courant et à être prêt pour l'avenir.
Nos dernières lignes directrices en matière de codage sécurisé.
{
"dependencies": {
"foo": "1.0.0 - 2.9999.9999",
"bar": ">=1.0.2 <2.1.2"
}
}
Utilisation de composants dont les vulnérabilités sont connues
{
"dependencies": {
"foo": "1.0.0 - 2.9999.9999",
"bar": ">=1.0.2 <2.1.2"
}
}
La plupart des applications utilisent un grand nombre de composants tiers. Ces composants fournissent tout ce dont vous avez besoin, depuis la journalisation jusqu'à l'accès aux bases de données, en passant par la création de modèles et bien d'autres choses encore. Cela facilite grandement le développement de logiciels et permet de gagner beaucoup de temps. Mais ces composants sont également créés par des personnes, ce qui signifie que certains d'entre eux contiennent inévitablement des vulnérabilités. Lisez les lignes directrices pour en savoir plus.
import mysql.connector
db = mysql.connector.connect
#Mauvaise pratique. Evitez ceci ! C'est juste pour apprendre.
(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()
Injection SQL
import mysql.connector
db = mysql.connector.connect
#Mauvaise pratique. Evitez ceci ! C'est juste pour apprendre.
(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()
L'injection SQL (SQLi) consiste à injecter du code dans les instructions SQL afin d'attaquer une application et d'en recueillir des informations importantes. Il s'agit d'une vulnérabilité de la sécurité web. C'est la technique de piratage la plus courante qui manipule la base de données et en extrait des informations cruciales.
ts
let url = request.params.url ;
let response = http.get(url) ;
let render = response.render() ;
return render.export() ;
Falsification de requête côté serveur
ts
let url = request.params.url ;
let response = http.get(url) ;
let render = response.render() ;
return render.export() ;
Les vulnérabilités liées à la falsification des requêtes côté serveur se produisent lorsqu'un utilisateur est en mesure d'amener une application à effectuer des requêtes HTTP vers un domaine déterminé par l'attaquant. Si une application a accès à des réseaux privés/internes, un attaquant peut également amener l'application à envoyer des requêtes à des serveurs internes. Dans cette ligne directrice, nous examinerons de plus près ce phénomène à l'aide de quelques exemples afin de mieux comprendre ce qu'il représente en action.
De nombreux frameworks disposent également d'un ensemble de points d'extrémité qui peuvent être activés pour permettre la surveillance de l'application, que ce soit dans un environnement de production ou de test/développement. Il peut s'agir de :
Metrics (Prometheus)
Logs
Environment information
Path/Url Mappings
Mauvaise configuration de la sécurité
De nombreux frameworks disposent également d'un ensemble de points d'extrémité qui peuvent être activés pour permettre la surveillance de l'application, que ce soit dans un environnement de production ou de test/développement. Il peut s'agir de :
Metrics (Prometheus)
Logs
Environment information
Path/Url Mappings
La mauvaise configuration de la sécurité est en quelque sorte un terme générique qui couvre les vulnérabilités communes qui entrent en jeu à cause des paramètres de configuration d'une application, plutôt qu'à cause d'un mauvais code. Il s'agit d'un sujet très vaste qui dépend fortement de facteurs tels que votre pile technologique. Souvent, la résolution de ces problèmes semble simple, comme la modification d'un fichier de configuration ou même d'une seule ligne de code, mais l'impact et les conséquences de ces vulnérabilités peuvent être graves. Lisez notre ligne directrice pour en savoir plus sur cette vulnérabilité et sur la manière de l'atténuer.
Codage sécurisé dans le monde réel missions.
Explorez notre bibliothèque d'exercices de formation publics. Ces exemples de SCW Missions vous permettent d'acquérir une expérience pratique guidée de certaines pratiques de codage sécurisé offensives dans le cadre d'une simulation d'application réelle.