pratiques sécurité

2021-04-01 | #sécurité

Headers Http sur toutes les pages délivrées resp.addHeader("X-Frame-Options", "DENY"); resp.addHeader("X-XSS-Protection", "1; mode=block"); resp.addHeader("X-Content-Type-Options", "nosniff"); Header Http positionné lors de la création d’un HttpSession response.setHeader("Set-Cookie", "JSESSIONID=" + session.getId() + "; Path=/; HttpOnly"); Injection SQL Ne pas créer les requêtes SQL par concaténation / formatage de chaîne (%s) => N’utiliser que des PreparedStatement (les paramètres sont échappés automatiquement) Sortie page HTML Ne pas renvoyer de code HTML : si une donnée de la BDD contient un code JS injecté, il peut se retrouver exécuté lors de l’affichage

Continuer la lecture 


grep, extraire des données

2021-03-04 | #awk #grep #sed

Il est possible d’utiliser grep pour extraire des données. Dans l’exemple qui suit, on récupère le nom des compagnies dans un fichier json. s='[{"_id":"6040e2f5ed4a6976ab0e8719","index":0,"guid":"5b71d966-1df3-4f22-8941-27d83e0181f2","isActive":true,"balance":"$2,464.05","picture":"http://placehold.it/32x32","age":36,"eyeColor":"brown","name":"House Hays","gender":"male","company":"WEBIOTIC","email":"househays@webiotic.com","phone":"+1 (921) 461-3048","address":"246 Butler Street, Lydia, Federated States Of Micronesia, 8224","about":"Labore proident eu non dolor reprehenderit et qui et pariatur. Consectetur quis incididunt aliqua cupidatat exercitation ex nulla ullamco reprehenderit deserunt. Velit cillum elit esse eu eiusmod cupidatat in fugiat ullamco. Labore labore officia minim sunt do.

Continuer la lecture 


ftpd, ouvrir le port 21

2021-01-06 | #firewall #ftp

En installant mon nouveau poste, j’ai eu un souci lors de la reconfiguration de mon scanner. La résolution de nom se faisait mais le scanner n’arrivait pas à se connecter au serveur ftp fraichement installé. Le telnet sur le port 21 bloquait… La solution était d’ouvrir le port 21 avec la commande suivante : $ sudo ufw allow in ftp La règle a été ajoutée La règle a été ajoutée (v6)

Continuer la lecture 


docker, alpine, python, mariadb : Modifications pour faire tourner les tests avec python / mariadb en utilisant MySQL-python

2020-12-02 | #alpine #docker #mariadb

Erreurs vues et paquets installés : apk add python3 python3-dev py3-virtualenv apk add python2 python2-dev apk add mariadb-dev #error: command 'gcc' failed with exit status 1 # ---------------------------------------- # ERROR: Failed building wheel for MySQL-python apk add gcc #19 | #include <limits.h> # | ^~~~~~~~~~ # compilation terminated. # error: command 'gcc' failed with exit status 1 apk add libc-dev #_mysql.c: In function '_mysql_ConnectionObject_ping': #_mysql.c:1804:41: error: 'MYSQL' {aka 'struct st_mysql'} has no member named 'reconnect' #1804 | if ( reconnect !

Continuer la lecture 


docker / alpine / mariadb : ce que j'en pense....

2020-12-02 | #alpine #docker #mariadb

J’ai voulu passer à alpine à cause de la taille de l’image produite et parce qu’elle boote vite. Je voulais améliorer les performances du pipeline de mon projet. J’ai eu beaucoup de déboires pour : comprendre et réussir à faire tourner le service MariaDB dans docker (je voulais une image généraliste qui ne fasse pas que MariaDB mais aussi du java/maven & du python2.7) contourner des problèmes pour réussir à configurer mariadb convenablement (actuellement les postes de dévs et le gitlab sont en mysql alors que nos serveurs d’intégration/préproduction/production sont passés en MariaDB).

Continuer la lecture 