<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Level sony M.]]></title><description><![CDATA[Blog personnel de Level Sony M.
Étudiant en cybersécurité &amp; DevSecOps.
Je partage mes projets, outils, et réflexions autour du code, de la sécurité et de l’]]></description><link>https://articles.level-sony.fr</link><image><url>https://cdn.hashnode.com/res/hashnode/image/upload/v1747714725533/227c19e5-f401-4026-9d48-354d0fbd2a29.png</url><title>Level sony M.</title><link>https://articles.level-sony.fr</link></image><generator>RSS for Node</generator><lastBuildDate>Wed, 15 Apr 2026 18:24:49 GMT</lastBuildDate><atom:link href="https://articles.level-sony.fr/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[Mise en œuvre d'un SDLC sécurisé : Un guide débutant]]></title><description><![CDATA[Le Cycle de Vie du Développement Logiciel Sécurisé (SSDLC) fournit un cadre pour développer des logiciels sécurisés en intégrant des pratiques de sécurité dès le début du projet ou du SDLC. Il permet d'identifier les problèmes de sécurité plus tôt da...]]></description><link>https://articles.level-sony.fr/mise-en-oeuvre-dun-sdlc-securise-un-guide-debutant</link><guid isPermaLink="true">https://articles.level-sony.fr/mise-en-oeuvre-dun-sdlc-securise-un-guide-debutant</guid><category><![CDATA[SDLC Methodlogies]]></category><dc:creator><![CDATA[level sony M.]]></dc:creator><pubDate>Tue, 20 May 2025 17:04:21 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1747760130756/40a527bb-4cfe-4641-a1d7-a8777dd3cd9d.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<blockquote>
<p>Le <strong>Cycle de Vie du Développement Logiciel Sécurisé</strong> (<strong>SSDLC</strong>) fournit un cadre pour développer des logiciels <strong>sécurisés</strong> en intégrant des pratiques de <strong>sécurité</strong> dès le début du projet ou du <strong>SDLC</strong>. Il permet d'identifier les problèmes de <strong>sécurité</strong> plus tôt dans le <strong>cycle de développement</strong>, ce qui peut réduire le coût total des applications. Les activités impliquées dans chaque phase du <strong>SSDLC</strong> incluent la <strong>collecte des exigences</strong>, la <strong>conception</strong>, l'<strong>implémentation</strong>, les <strong>tests</strong> et le <strong>déploiement</strong>.</p>
</blockquote>
<p><img src="https://level-sony.fr/_next/image?url=%2Fimages%2Fsdlc%2F1.png&amp;w=1920&amp;q=75" alt="Comparaisons" /></p>
<h1 id="heading-quest-ce-que-le-sdlc">Qu'est-ce que le <strong>SDLC</strong> ?</h1>
<p>Le <strong>Cycle de Vie du Développement Logiciel</strong> (<strong>SDLC</strong>) est un concept qui décrit les éléments du développement d'applications et la séquence dans laquelle ils doivent être accomplis. Il se compose de plusieurs phases offrant une méthode étape par étape pour recueillir les <strong>exigences</strong>, concevoir, implémenter, tester et livrer des logiciels. Chaque composant du <strong>SDLC</strong> génère des résultats nécessaires pour la phase suivante du cycle de vie. L'objectif principal du <strong>SDLC</strong> est de réguler le processus de développement et de produire des logiciels de haute qualité qui répondent aux exigences du client, tout en respectant les contraintes de temps et de budget.</p>
<p>Au fil des ans, une large gamme de modèles a émergé basée sur ce cadre, chacun avec ses propres avantages et inconvénients. Certains de ces modèles incluent le modèle en <strong>cascade</strong> (<em>Waterfall</em>), le modèle en spirale, le modèle en <strong>V</strong>, le modèle <strong>incrémental</strong> et le modèle <strong>Agile</strong>. La norme de l'Organisation internationale de normalisation (ISO), <strong>ISO/IEC 12207</strong>, définit la procédure de développement logiciel comme un ensemble structuré d'activités nécessaires pour construire un produit logiciel.</p>
<h1 id="heading-quest-ce-que-le-sdlc-securise">Qu'est-ce que le <strong>SDLC sécurisé</strong> ?</h1>
<p>Le <strong>SDLC sécurisé</strong> est une approche qui intègre la <strong>sécurité</strong> à chaque étape du cycle de vie du développement logiciel. Plutôt que de traiter la <strong>sécurité</strong> comme une phase distincte, le <strong>SDLC sécurisé</strong> intègre des pratiques de <strong>sécurité</strong> tout au long du processus de développement, de la planification à la maintenance. Cette approche proactive permet d'identifier et de corriger les <strong>vulnérabilités</strong> dès les premières étapes, réduisant ainsi les risques et les coûts associés aux correctifs tardifs.</p>
<h1 id="heading-importance-du-sdlc-securise">Importance du <strong>SDLC sécurisé</strong></h1>
<p>Traditionnellement, les projets logiciels, y compris ceux réalisés dans un cadre académique, effectuaient souvent des <strong>évaluations de sécurité</strong> après que le produit était déjà terminé. Cela signifie que les <strong>vulnérabilités</strong> n'étaient identifiées qu'à la fin du processus de développement. Corriger ces problèmes après coup peut nécessiter plusieurs itérations de tests et de corrections, ce qui peut être coûteux en termes de temps et d'efforts.</p>
<p>En tant qu'étudiant, adopter une approche proactive en intégrant la sécurité dès le début du SDLC peut éviter ces problèmes. Cela signifie penser à la sécurité dès la phase de conception, en identifiant les risques potentiels et en mettant en place des mesures pour les atténuer. Par exemple, en utilisant des pratiques de codage sécurisé et en effectuant des tests de sécurité réguliers, on peut détecter et corriger les vulnérabilités plus tôt, réduisant ainsi le coût global du projet.</p>
<p><img src="https://level-sony.fr/_next/image?url=%2Fimages%2Fsdlc%2F2.png&amp;w=1920&amp;q=75" alt="Comparaisons" /></p>
<h4 id="heading-avantages-du-sdlc-securise">Avantages du SDLC sécurisé</h4>
<ul>
<li><p><strong>Réduction des Coûts et des Efforts</strong> : En identifiant et en corrigeant les problèmes de sécurité tôt dans le cycle de développement, les étudiants peuvent éviter des corrections coûteuses et chronophages à la fin du projet</p>
</li>
<li><p><strong>Amélioration des Compétences</strong> : Intégrer la sécurité dès le début permet aux étudiants de développer des compétences précieuses en cybersécurité, ce qui est de plus en plus demandé sur le marché du travail.</p>
</li>
<li><p><strong>Meilleure Qualité des Projets</strong> : Les projets développés avec une approche sécurisée sont plus robustes et fiables, ce qui peut impressionner les professeurs et les futurs employeurs.</p>
</li>
</ul>
<h1 id="heading-perspective-etudiante">Perspective Étudiante</h1>
<p>En tant qu'étudiant, cet article est particulièrement pertinent. Comprendre l'importance de la sécurité dès le début du processus de développement logiciel est crucial, une methodologie dite <code>Cyber By Design</code> . L'article détaille une pratiques à adopter pour chaque étape du développement logiciel, ce qui est essentiel pour mes projets académiques et personnels. En appliquant les principes du SDLC sécurisé, je peux améliorer la qualité et la fiabilité de mes applications, me préparant ainsi mieux aux exigences du marché du travail.</p>
<blockquote>
<p>En adoptant un SDLC sécurisé, permet non seulement de produire des projets de meilleure qualité, mais aussi de se préparer aux exigences du monde professionnel en matière de sécurité informatique.</p>
</blockquote>
]]></content:encoded></item><item><title><![CDATA[Comment utiliser les certificats Let's Encrypt avec Keycloak ?]]></title><description><![CDATA[Keycloak est un outil open-source de gestion des identités et des accès, développé par Red Hat. Il offre des fonctionnalités telles que l'authentification unique (SSO), la gestion des utilisateurs et des rôles, ainsi que le support de protocoles stan...]]></description><link>https://articles.level-sony.fr/comment-utiliser-les-certificats-lets-encrypt-avec-keycloak</link><guid isPermaLink="true">https://articles.level-sony.fr/comment-utiliser-les-certificats-lets-encrypt-avec-keycloak</guid><category><![CDATA[keycloak]]></category><dc:creator><![CDATA[level sony M.]]></dc:creator><pubDate>Tue, 04 Mar 2025 23:00:00 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1747762792992/b4d92fe9-92bf-4727-970a-832f61e67e45.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<blockquote>
<p>Keycloak est un outil open-source de gestion des identités et des accès, développé par Red Hat. Il offre des fonctionnalités telles que l'authentification unique (SSO), la gestion des utilisateurs et des rôles, ainsi que le support de protocoles standardisés comme OpenID Connect, OAuth 2.0 et SAML.<a target="_blank" href="https://developers.redhat.com">Redhat</a></p>
<p>Une anecdote intéressante concernant Keycloak est son adoption par Red Hat pour gérer l'authentification et l'autorisation de ses propres systèmes. Red Hat utilise Keycloak comme base pour son produit Red Hat SSO, démontrant ainsi la confiance de l'entreprise dans cet outil pour sécuriser ses applications internes.</p>
<p>Cette intégration interne souligne la fiabilité et la robustesse de Keycloak en tant que solution de gestion des identités et des accès.</p>
</blockquote>
<hr />
<h1 id="heading-introduction">Introduction</h1>
<p><a target="_blank" href="https://www.keycloak.org/">Keycloak</a> fournit une fédération utilisateur, une authentification forte, une gestion des utilisateurs, une autorisation fine, et plus encore.</p>
<p>Voici un guide pour permettre l'accès HTTPS à votre serveur Keycloak à l'aide d'un certificat gratuit Let’s Encrypt SSL. La beauté de Let’s Encrypt est sa facilité d’utilisation et le fait qu’elle soit gratuite.</p>
<p>Ce guide suppose que vous avez déjà installé Keycloak à <code>/opt/keycloak/</code> en utilisant le <a target="_blank" href="https://www.keycloak.org/getting-started/getting-started-zip">guide officiel</a> pour les installations sur serveur, et que vous souhaitez maintenant activer l'accès HTTPS. Vous devez avoir la version 'keycloak-26.1.1' ou plus.</p>
<p>Dans toutes les instructions ci-dessous, assurez-vous de remplacer <code>&lt;DOMAIN&gt;</code> avec le domaine réel que vous utiliserez. Toutes les commandes de ce guide doivent être exécutées en tant que super-utilisateur.</p>
<p><img src="https://level-sony.fr/_next/image?url=%2Fimages%2Ffunction_keyclook.png&amp;w=1920&amp;q=75" alt="Carto" /></p>
<hr />
<h2 id="heading-1-installer-certbot">1. Installer Certbot</h2>
<p>Vous devrez d'abord installer Certbot. Cela dépend de la distribution Linux que vous utilisez.</p>
<p>Par exemple, pour des distributions basées sur <code>apt</code> comme Debian ou Ubuntu, vous pouvez simplement exécuter :</p>
<pre><code class="lang-plaintext">$ apt install certbot
</code></pre>
<h2 id="heading-2-creer-des-certificats-https">2. Créer des certificats HTTPS</h2>
<ul>
<li>Générer les certificats</li>
</ul>
<pre><code class="lang-plaintext">$ certbot certonly --standalone --preferred-challenges http -d &lt;DOMAIN&gt;
</code></pre>
<h2 id="heading-3-configurer-keycloak">3. Configurer Keycloak</h2>
<ul>
<li>Modifier la configuration en ouvrant le fichier de 😽 configuration de Keycloak :</li>
</ul>
<pre><code class="lang-plaintext">$ vi /opt/keycloak/conf/keycloak.conf
</code></pre>
<p>Ajoutez ou mettez à jour les lignes suivantes :</p>
<pre><code class="lang-plaintext">https-certificate-file=/etc/letsencrypt/live/&lt;DOMAIN&gt;/cert.pem
https-certificate-key-file=/etc/letsencrypt/live/&lt;DOMAIN&gt;/privkey.pem
hostname=&lt;DOMAIN&gt;
https-port=443
http-port=80
</code></pre>
<ul>
<li>Appliquez les modifications en reconstruisant Keycloak :</li>
</ul>
<pre><code class="lang-plaintext">$ /opt/keycloak/bin/kc.sh build
</code></pre>
<ul>
<li>Démarrez ensuite Keycloak avec la commande :</li>
</ul>
<pre><code class="lang-plaintext">$ /opt/keycloak/bin/kc.sh start
</code></pre>
<p>Votre serveur Keycloak devrait maintenant être accessible via HTTPS.</p>
<h2 id="heading-4-facultatif-configurer-keycloak-en-tant-que-service-systeme">4. Facultatif : Configurer Keycloak en tant que service système</h2>
<h3 id="heading-41-mise-en-place-dun-service-systeme">4.1. Mise en place d'un service système</h3>
<ul>
<li>Créer un utilisateur et un groupe</li>
</ul>
<pre><code class="lang-plaintext">$ useradd -g keycloak keycloak
</code></pre>
<ul>
<li>Donner accès aux certificats</li>
</ul>
<pre><code class="lang-plaintext">$ chmod 0755 /etc/letsencrypt/{live,archive}
$ chgrp keycloak /etc/letsencrypt/{live,archive}
$ chgrp -h keycloak /etc/letsencrypt/live/&lt;DOMAIN&gt;/privkey.pem
</code></pre>
<ul>
<li>Modifier les permissions du dossier Keycloak</li>
</ul>
<pre><code class="lang-plaintext">$ chown -R keycloak:keycloak /opt/keycloak/
</code></pre>
<ul>
<li>Créer un service systemd</li>
</ul>
<pre><code class="lang-plaintext">$ vi /etc/systemd/system/keycloak.service
</code></pre>
<p>Ajoutez le contenu suivant :</p>
<pre><code class="lang-plaintext">[Unit]
Description=Keycloak Application Server
After=syslog.target network.target

[Service]
Type=idle
User=keycloak
Group=keycloak
LimitNOFILE=102642
ExecStart=/opt/keycloak/bin/kc.sh start --optimized
StandardOutput=append:/var/log/keycloak.log
StandardError=inherit
RestartSec=2s
Restart=always
AmbientCapabilities=CAP_NET_BIND_SERVICE

[Install]
WantedBy=multi-user.target
</code></pre>
<p>Rechargez systemd et démarrez Keycloak :</p>
<pre><code class="lang-plaintext">$ systemctl daemon-reload
$ systemctl start keycloak.service
</code></pre>
<h2 id="heading-42-redemarrer-automatiquement-keycloak-apres-le-renouvellement-des-certificats">4.2. Redémarrer automatiquement Keycloak après le renouvellement des certificats</h2>
<p>Ajoutez un script de post-renouvellement pour redémarrer Keycloak après l'expiration des certificats :</p>
<pre><code class="lang-plaintext">$ cd /etc/letsencrypt/renewal-hooks/deploy
$ vi restart-keycloak.sh
</code></pre>
<p>Ajoutez ce contenu :</p>
<pre><code class="lang-plaintext">#!/bin/sh
systemctl restart keycloak
</code></pre>
<p>Rendez le script exécutable :</p>
<pre><code class="lang-plaintext">$ chmod +x restart-keycloak.sh
</code></pre>
<h2 id="heading-conclusion">Conclusion</h2>
<p>C'est fini. Maintenant, Keycloak est configuré comme un service système et démarrera automatiquement avec votre machine. De plus, il redémarrera automatiquement après chaque renouvellement de certificat Let's Encrypt.</p>
]]></content:encoded></item><item><title><![CDATA[Comment Installer Oh My Zsh : Mon Shell Préféré]]></title><description><![CDATA[Nous allons donc voir comment améliorer les fonctionnalités du terminal et lui donner un look beaucoup plus convivial. Le but de cet article tout comme le reste est personnel pour moi car je me retrouve souvent à oublier certaines pratiques, d'où l'i...]]></description><link>https://articles.level-sony.fr/comment-installer-oh-my-zsh-mon-shell-prefere</link><guid isPermaLink="true">https://articles.level-sony.fr/comment-installer-oh-my-zsh-mon-shell-prefere</guid><category><![CDATA[oh-my-zsh]]></category><category><![CDATA[zsh]]></category><category><![CDATA[Linux]]></category><category><![CDATA[ZSH Themes]]></category><dc:creator><![CDATA[level sony M.]]></dc:creator><pubDate>Thu, 13 Feb 2025 23:00:00 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1747762889772/c0ef5896-9088-4c85-8a8b-1b553f194b83.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<blockquote>
<p>Nous allons donc voir comment améliorer les fonctionnalités du terminal et lui donner un look beaucoup plus convivial. Le but de cet article tout comme le reste est personnel pour moi car je me retrouve souvent à oublier certaines pratiques, d'où l'idée de noter et conserver mes apprentissages.</p>
</blockquote>
<hr />
<h1 id="heading-introduction">Introduction</h1>
<p>En tant qu'utilisateur passionné de Linux, l'une des premières configurations que j'effectue sur chaque nouveau PC ou système Linux est l'installation de <a target="_blank" href="https://ohmyz.sh/">Oh My Zsh</a>. Ce shell interactif et personnalisable a transformé mon expérience de ligne de commande, et je vais vous expliquer pourquoi je l'adore et comment vous pouvez l'installer facilement.</p>
<blockquote>
<p>l y a quelques années , alors que je travaillais sur un projet avec un camarade, j'ai découvert Oh My Zsh. Nous étions en train de configurer un serveur partagé sous <a target="_blank" href="https://www.debian.org/index.fr.html">Debian</a>, et je l'ai vu utiliser un terminal qui semblait bien plus avancé que mon Bash habituel. Intrigué, je lui ai demandé ce qu'il utilisait, et c'est ainsi qu'il m'a présenté Oh My Zsh. Depuis ce jour, je ne peux plus me passer de ce shell incroyablement puissant et personnalisable.</p>
</blockquote>
<h1 id="heading-quest-ce-que-zsh">Qu’est-ce que ZSH ?</h1>
<p>Tout d'abord qu'est ce que <strong>Zsh</strong> ?. <strong>Zsh</strong> (Z Shell) est un interpréteur de commandes pour les systèmes de type Unix, comme macOS et Linux. Il est conçu pour être une amélioration de <strong>Bash</strong> (Bourne-Again SHell) et propose de nombreuses fonctionnalités avancées pour faciliter l’écriture de commandes en ligne de commande.</p>
<p>Parmi ses fonctionnalités, Zsh propose :</p>
<ul>
<li><p>L'auto-complétion des commandes et des noms de fichiers.</p>
</li>
<li><p>La correction automatique des erreurs de frappe.</p>
</li>
<li><p>Des alias et des fonctions plus puissants.</p>
</li>
<li><p>Des options de personnalisation avancées.</p>
</li>
</ul>
<p>Zsh est très apprécié par les développeurs et les administrateurs système car il simplifie le travail en ligne de commande, surtout pour ceux qui utilisent souvent des scripts et des commandes complexes. Étant open-source, Zsh est gratuit et peut être personnalisé selon les besoins de chacun.</p>
<h1 id="heading-quest-ce-que-oh-my-zsh">Qu’est-ce que Oh My Zsh ?</h1>
<p><a target="_blank" href="https://ohmyz.sh/">Oh My Zsh</a> est un framework open-source qui simplifie la configuration et la personnalisation de Zsh (Z Shell) Il permet d'ajouter facilement des fonctionnalités supplémentaires à l'interpréteur de commandes Zsh</p>
<p>Oh My Zsh propose un ensemble de plugins et de thèmes préconfigurés pour personnaliser l'apparence et le comportement de Zsh ainsi qu'une gestion simple des plugins et des thèmes permettant aux utilisateurs de créer leur propre configuration Il offre également une documentation complète et une communauté active pour aider les utilisateurs à optimiser leur expérience avec Zsh</p>
<h1 id="heading-comment-installer-zsh">Comment installer Zsh ?</h1>
<p>Pour installer le document sur Ubuntu/debian, suivez les étapes ci-dessous:</p>
<h4 id="heading-etape-1-mettre-a-jour-les-referentiels-ubuntu-apt">Étape 1: Mettre à jour les référentiels Ubuntu Apt</h4>
<p>Ouvrez votre terminal et exécutez la commande suivante :</p>
<pre><code class="lang-plaintext">$ sudo apt-get update
</code></pre>
<p><img src="https://level-sony.fr/_next/image?url=%2Fimages%2Fzsh%2F1.png&amp;w=1920&amp;q=75" alt="Comparaisons" /></p>
<p>Après avoir installé les mises à jour, mettre en place les dépendances ou les paquets requis pour l'installation d'Ubuntu</p>
<pre><code class="lang-plaintext">$ Sudo apt install build-essential curl file git
</code></pre>
<p><img src="https://level-sony.fr/_next/image?url=%2Fimages%2Fzsh%2F2.png&amp;w=1920&amp;q=75" alt="Comparaisons" /></p>
<h4 id="heading-etape-2-installer-zsh">Étape 2: Installer Zsh</h4>
<p>Pour l'installer avec apt:</p>
<pre><code class="lang-plaintext">~$ sudo apt-get install -y Zsh
</code></pre>
<h4 id="heading-etape-3-verifier-linstallation-zsh">Étape 3: Verifier l'installation Zsh</h4>
<p>Avec ZSH installé avec succès, vous pouvez vérifier l'installation ZSH en affichant la version installée et en utilisant la commande suivante:</p>
<pre><code class="lang-plaintext">~$ zsh --version
</code></pre>
<p><img src="https://level-sony.fr/_next/image?url=%2Fimages%2Fzsh%2F5.png&amp;w=1920&amp;q=75" alt="Comparaisons" /></p>
<h4 id="heading-etape-4-definissez-zsh-comme-shell-par-defaut">Étape 4: Définissez Zsh comme shell par défaut</h4>
<p>Maintenant que <strong>Zsh</strong> est installé, vous pouvez définir Zsh comme shell par défaut à l'aide de la commande <code>Chsh</code>. Spécifiez l'option <code>-s</code> :</p>
<pre><code class="lang-plaintext">~$ chsh -s  $(which zsh)
</code></pre>
<p>Cette commande modifie le fichier de l'utilisateur <code>/etc/passwd</code> pour charger Zsh comme shell par défaut pour votre nom d'utilisateur pendant les sessions du terminal.Après avoir redémarré votre terminal, confirmez la modification en affichant le shell actuel à l'aide de la variable d'environnement <code>$</code> Shell:</p>
<pre><code class="lang-plaintext">~$ echo $SHELL
</code></pre>
<h1 id="heading-installer-oh-my-zsh-on-ubuntu">Installer Oh My Zsh on Ubuntu</h1>
<p>{Oh mon Zsh} est un cadre open source conçu pour élever les fonctionnalités et les caractéristiques du shell Z, visant à améliorer la productivité et la jouissance dans l'environnement de la ligne de commande. Ce cadre fournit un processus d'installation sans tracas et une gestion efficace d'un éventail étendu de thèmes, plugins et scripts.</p>
<p>Bien que vous ayez passé à Zsh en tant que shell par défaut, l'expérience peut ne pas être significativement différente de Bash à ce stade. Plutôt que de construire ZSH à partir de zéro indépendamment, une approche plus efficace consiste à tirer parti de l'écosystème OH My Zsh.</p>
<p>Cela vous permet d'explorer et d'expérimenter la richesse d'outils et de configurations déjà développés par la communauté, offrant une expérience de ligne de commande plus rationalisée et enrichie.</p>
<p>Vous pouvez installer oh mon zsh sur Ubuntu/debian en utilisant la commande suivante:</p>
<ul>
<li>via cURL</li>
</ul>
<pre><code class="lang-plaintext">~$ sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
</code></pre>
<ul>
<li>via Wget</li>
</ul>
<pre><code class="lang-plaintext">~$ sh -c "$(wget https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"
</code></pre>
<p>Une fois la commandes executé , si toutes les etapes d'installation precedentes ont ete respecter , vous aurez un nouveau shell stylé et convivial avec place à une configuration snas limite</p>
<p><img src="https://level-sony.fr/_next/image?url=%2Fimages%2Fzsh%2F10.png&amp;w=1920&amp;q=75" alt="Comparaisons" /></p>
]]></content:encoded></item><item><title><![CDATA[Les essentiels en DevSecOps]]></title><description><![CDATA[DevOps a longtemps permis d’accélérer le déploiement des logiciels en brisant les silos entre développement et opérations.
Toutefois, face à l’évolution des cybermenaces, il est devenu indispensable d’intégrer la sécurité dès la conception.C’est ains...]]></description><link>https://articles.level-sony.fr/les-essentiels-en-devsecops</link><guid isPermaLink="true">https://articles.level-sony.fr/les-essentiels-en-devsecops</guid><category><![CDATA[DevSecOps]]></category><category><![CDATA[#DevSecOps #CICD #Pipeline #SonarQube #Trivy #OWASP #Jenkins #Security #ContinuousIntegration #ContinuousDeployment #Automation #CodeQuality #ContainerSecurity #VulnerabilityScanning #SecureCoding #SoftwareDevelopment #DevOps #CyberSecurity #ApplicationSecurity #SoftwareSecurity #TechBlog #ITSecurity #CodeAnalysis #SecurityTools]]></category><dc:creator><![CDATA[level sony M.]]></dc:creator><pubDate>Wed, 12 Feb 2025 23:00:00 GMT</pubDate><content:encoded><![CDATA[<p><img src="https://level-sony.fr/_next/image?url=%2Fimages%2Fles-essentiels-devsecops-v1.png&amp;w=1920&amp;q=75" alt="Les essentiels en DevSecOps" /></p>
<blockquote>
<p><strong>DevOps</strong> a longtemps permis d’accélérer le déploiement des logiciels en brisant les silos entre développement et opérations.</p>
<p>Toutefois, face à l’évolution des cybermenaces, il est devenu indispensable d’intégrer la sécurité dès la conception.<br />C’est ainsi qu’est né <strong>DevSecOps</strong>, qui combine la rapidité de DevOps avec une vigilance accrue en matière de sécurité.</p>
</blockquote>
<h2 id="heading-introduction">Introduction</h2>
<p>L’histoire du développement logiciel est jalonnée d’innovations majeures. Au début des années 2000, l’adoption d’<strong>Agile</strong> a ouvert la voie à une collaboration renforcée entre les équipes, donnant naissance au mouvement <strong>DevOps</strong>. Une anecdote célèbre raconte comment une entreprise, auparavant soumise à des délais de déploiement de plusieurs jours, a réussi à réduire ces temps à quelques heures grâce à l’automatisation de son pipeline CI/CD.</p>
<p>Cependant, cette accélération est rapidement apparue insuffisante face à la multiplication des cybermenaces. La sécurité, trop souvent ajoutée en fin de processus, exposait les applications à des vulnérabilités. <strong>DevSecOps</strong> est ainsi apparu comme la solution idéale : intégrer dès le départ des contrôles de sécurité (comme les tests de <em>non‑régression</em><a target="_blank" href="https://level-sony.fr/blog/les-essentiels-devsecops-v1#user-content-fn-1"><sup>1</sup></a>) pour garantir un produit fiable et sécurisé.</p>
<hr />
<p><img src="https://level-sony.fr/_next/image?url=%2Fimages%2Fcompareison.png&amp;w=1920&amp;q=75" alt="Comparaisons" /></p>
<div class="hn-table">
<table>
<thead>
<tr>
<td><strong>Aspect</strong></td><td><strong>DevSecOps</strong></td><td><strong>DevOps</strong></td></tr>
</thead>
<tbody>
<tr>
<td><strong>Tests de sécurité automatisés</strong></td><td>Mise en place de tests de non‑régression*<a target="_blank" href="https://level-sony.fr/blog/les-essentiels-devsecops-v1#user-content-fn-1"><sup>1</sup></a>*, analyses statique et dynamique, et vérification de conformité de l’IaC.</td><td>Focus sur les tests fonctionnels et de performance, sans vérifications approfondies de sécurité.</td></tr>
<tr>
<td><strong>Sécurisation du déploiement</strong></td><td>Signature et vérification des tags de version des artefacts pour garantir l’intégrité du code source.</td><td>Déploiement continu avec un contrôle de sécurité souvent moins poussé.</td></tr>
<tr>
<td><strong>Authentification multifacteur</strong></td><td>Implémentation obligatoire d’une authentification multifacteur pour l’accès aux dépôts et pour la signature des commits.</td><td>Utilisation d’authentifications standards, parfois sans MFA.</td></tr>
<tr>
<td><strong>Séparation des infrastructures</strong></td><td>Environnements CI/CD de développement et de production strictement séparés et non exposés directement sur Internet.</td><td>Environnements parfois partagés pour favoriser l’agilité et la rapidité de déploiement.</td></tr>
<tr>
<td><strong>Réinstanciation régulière</strong></td><td>Réinitialisation fréquente de l’infrastructure CI/CD pour limiter la persistance de vulnérabilités.</td><td>Infrastructure maintenue sur le long terme pour assurer la continuité opérationnelle.</td></tr>
<tr>
<td><strong>Confidentialité et vigilance</strong></td><td>Vigilance accrue quant à la confidentialité, avec gestion stricte des accès et surveillance des données sensibles.</td><td>Moins d’accent mis sur la confidentialité spécifique au sein de la chaîne CI/CD.</td></tr>
<tr>
<td><strong>Règles de développement sécurisé</strong></td><td>Imposition de règles et standards de codage sécurisés auprès des équipes de développement.</td><td>Priorisation de l’agilité et de la rapidité de livraison, avec des standards de sécurité parfois moins stricts.</td></tr>
<tr>
<td><strong>Durcissement des systèmes</strong></td><td>Application de règles de durcissement sur les OS hébergeant les applications (cf. <a target="_blank" href="https://cyber.gouv.fr/guide-linux">Guide Linux</a>).</td><td>Accent mis sur la flexibilité et la performance, avec un durcissement moins poussé.</td></tr>
</tbody>
</table>
</div><hr />
<h2 id="heading-securiser-la-cicd-les-fondamentaux">Sécuriser la CI/CD : Les Fondamentaux</h2>
<p><img src="https://level-sony.fr/_next/image?url=%2Fimages%2Fpratic.png&amp;w=1920&amp;q=75" alt="Carto" /></p>
<blockquote>
<p>(*) La chaîne CI/CD comprend plusieurs outils, par exemple : orchestrateur, dépôts de code source, tests automatisés, gestionnaire de secrets, outils de déploiement, artefacts.</p>
</blockquote>
<hr />
<h2 id="heading-cartographie-et-analyse-des-risques">Cartographie et analyse des risques</h2>
<h4 id="heading-cartographie-des-applications">Cartographie des applications</h4>
<ul>
<li>Réaliser et maintenir à jour une cartographie incluant les droits système, les secrets d’installation et de fonctionnement, les matrices de flux, les rôles des développeurs (relecture, validation, droits sur les environnements, etc.) et les référents avec une connaissance globale (technique et métier).</li>
</ul>
<h4 id="heading-analyse-de-risque-globale">Analyse de risque globale</h4>
<ul>
<li>Prendre en compte les chemins de compromission liés aux postes des développeurs, à la sous-traitance, à la chaîne CI/CD (Continuous Integration/Continuous Deployment) et aux technologies utilisées (ex. : cloud).</li>
</ul>
<p><img src="https://level-sony.fr/_next/image?url=%2Fimages%2Fcarto.png&amp;w=1920&amp;q=75" alt="Carto" /></p>
<hr />
<h2 id="heading-administration-et-gestion-des-secrets">Administration et gestion des secrets</h2>
<h4 id="heading-actions-dadministration-en-cicd">Actions d’administration en CI/CD</h4>
<ul>
<li>Considérer les actions réalisées par la CI/CD de production comme des actions d’administration. Dédier un poste d’administration pour la CI/CD de production, appliquer le principe de moindre privilège, générer les jetons (tokens) à la demande et assurer leur journalisation et supervision.</li>
</ul>
<h4 id="heading-gestion-securisee-des-secrets">Gestion sécurisée des secrets</h4>
<ul>
<li>Utiliser un gestionnaire de secrets distinct par environnement (ex. : hors production et production) et veiller à l’absence de secrets en dur dans le code source, dans les journaux d’événements des tâches ou dans les dépôts de code.</li>
</ul>
<h2 id="heading-gestion-des-dependances">Gestion des dépendances</h2>
<h4 id="heading-rigueur-dans-la-gestion-des-dependances">Rigueur dans la gestion des dépendances</h4>
<ul>
<li>Minimiser, évaluer et appliquer les correctifs de sécurité aux dépendances avant leur déploiement.</li>
</ul>
<p><strong>Références :</strong></p>
<ul>
<li><a target="_blank" href="https://www.cyber.gouv.fr">www.cyber.gouv.fr</a></li>
</ul>
<hr />
<h2 id="heading-footnotes">Footnotes</h2>
<ol>
<li><em>Non‑régression : Ensemble de tests automatisés permettant de vérifier qu'une modification du code n'introduit pas de nouvelles vulnérabilités, garantissant ainsi que les fonctionnalités existantes continuent de fonctionner correctement.</em> <a target="_blank" href="https://level-sony.fr/blog/les-essentiels-devsecops-v1#user-content-fnref-1">↩</a> <a target="_blank" href="https://level-sony.fr/blog/les-essentiels-devsecops-v1#user-content-fnref-1-2">↩<sup>2</sup></a></li>
</ol>
]]></content:encoded></item></channel></rss>