<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>curiosité | Nino Sochet</title><link>https://portfolio.nino.sochet.fr/tag/curiosite/</link><atom:link href="https://portfolio.nino.sochet.fr/tag/curiosite/index.xml" rel="self" type="application/rss+xml"/><description>curiosité</description><generator>Wowchemy (https://wowchemy.com)</generator><language>en-us</language><copyright>© 2022 Nino Sochet</copyright><lastBuildDate>Wed, 29 Sep 2021 00:00:00 +0000</lastBuildDate><image><url>https://portfolio.nino.sochet.fr/media/icon_hu0b7a4cb9992c9ac0e91bd28ffd38dd00_9727_512x512_fill_lanczos_center_3.png</url><title>curiosité</title><link>https://portfolio.nino.sochet.fr/tag/curiosite/</link></image><item><title>Pentesting</title><link>https://portfolio.nino.sochet.fr/competence/techniques/pentesting/</link><pubDate>Wed, 29 Sep 2021 00:00:00 +0000</pubDate><guid>https://portfolio.nino.sochet.fr/competence/techniques/pentesting/</guid><description>&lt;p>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img src="https://portfolio.nino.sochet.fr/img/pentesting/illustration.svg" alt="" loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;p>Ou &lt;strong>test d’intrusion&lt;/strong> en Français est un &lt;strong>audit de sécurit&lt;/strong>é d’un système d’information ou d’un réseau informatique qui est réalisé par une &lt;strong>personne physique&lt;/strong>. Bien qu’il puisse comprendre des parties automatisées, il y aura toujours un testeur qui fera des &lt;strong>tâches manuelles&lt;/strong>.&lt;/p>
&lt;h2 id="les-méthodes">Les méthodes&lt;/h2>
&lt;p>Il y a plusieurs méthodes d’audit, la première est en &lt;strong>black-box&lt;/strong> (en boîte noire) qui met le testeur dans la position d’un &lt;strong>attaquant potentiel&lt;/strong> qui n’a pas de connaissance en amont de l’architecture du système et de ce qui le compose. Mais il a un point faible, le fait que le testeur a un temps &lt;strong>limité&lt;/strong> pour réaliser les tests alors qu’un attaquant n’a pas de limite ce qui entraîne souvent qu’un test en black-box peut passer à côté de failles évidentes à la lecture du code, mais qui ne seront jamais connues lors du test étant donné que le testeur n’y a pas accès. La deuxième technique dite de la &lt;strong>gray-box&lt;/strong> (boîte grise) permet au testeur d’avoir des &lt;strong>connaissances sur le réseau interne&lt;/strong> du système ainsi que des a&lt;strong>ccès utilisateur&lt;/strong> plus ou moins élevés en fonction du périmètre accordé au testeur, mais il n’a pas accès à toutes les documentations techniques ni au code source. La troisième est le &lt;strong>white-box&lt;/strong> (boîte blanche) dans ce cas-là le testeur à accès à &lt;strong>toutes les documentations&lt;/strong> techniques ainsi que l’accès au code source. Cela permet au testeur de pouvoir pratiquer des &lt;strong>analyses statiques&lt;/strong> du code et ainsi pouvoir voir de potentielles &lt;strong>failles&lt;/strong> qui sont difficilement visibles sans le code source. Il existe une dernière méthode qui permet de tester le niveau de sécurité d’une entreprise. Contrairement aux autres méthodes qui durent en moyenne une ou deux semaines, une &lt;strong>red team&lt;/strong> va passer &lt;strong>plusieurs mois&lt;/strong> sur un test en commençant avec seulement un nom d’entreprise et en ayant peu, voire, aucun périmètre. C’est la plus complète de toutes, mais elle a un &lt;strong>coût&lt;/strong> temporel et monétaire &lt;strong>considérable&lt;/strong> qui n’est pas accessible à toutes les entreprises.&lt;/p>
&lt;h2 id="durant-alternance">Durant alternance&lt;/h2>
&lt;p>Durant mon alternance j’ai pu pratiquer des &lt;strong>pentest&lt;/strong> en &lt;strong>black-box&lt;/strong> et &lt;strong>white-box&lt;/strong> pour des projets &lt;strong>internes&lt;/strong>, mais aussi pour des projets &lt;strong>clients&lt;/strong>. Je suis reconnaissant d’avoir pu faire des missions alors que je n’étais qu’alternant et j’ai conscience de ma &lt;strong>chance&lt;/strong>. Mais ça ne suffit pas pour que je puisse me qualifier comme &lt;strong>pentesteur&lt;/strong> il me reste beaucoup de choses à apprendre et des logiques à prendre. Mais je continue de m'&lt;strong>entraîner quotidiennement&lt;/strong> afin de toujours apprendre et &lt;strong>découvrir&lt;/strong> de nouvelles méthodes que ce soit sur Hack the box, Vuln Hub, Pentester Academy ou encore root-me.&lt;/p>
&lt;h2 id="auourdhui">Auourd&amp;rsquo;hui&lt;/h2>
&lt;p>J&amp;rsquo;ai pu passer la certification &lt;strong>Offensive Security Certified Professional&lt;/strong> (OSCP), durant 24h j&amp;rsquo;ai dû prouver mes compétences en prenant le contrôle de 5 machines afin d&amp;rsquo;en faire un rapport professionnel en anglais. Mais je ne compte pas en rester à l&amp;rsquo;OSCP, la prochaine est l'&lt;strong>Offensive Security Web Expert&lt;/strong> (OSWE) afin de pouvoir lier deux de mes centres d&amp;rsquo;intérêt, la programmation et l&amp;rsquo;exploitation de failles de sécurité.&lt;/p>
&lt;h3 id="voir-aussi">Voir aussi&lt;/h3>
&lt;ul>
&lt;li>&lt;a href="https://portfolio.nino.sochet.fr/realisation/road-oscp-pt1">Road to OSCP&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://portfolio.nino.sochet.fr/competence/transverses/resolution-problemes">Résolution de problèmes&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://portfolio.nino.sochet.fr/competence/transverses/curiosite">Curiosité&lt;/a>&lt;/li>
&lt;/ul></description></item><item><title>DevSecOps</title><link>https://portfolio.nino.sochet.fr/competence/techniques/devsecops/</link><pubDate>Sat, 10 Jul 2021 00:00:00 +0000</pubDate><guid>https://portfolio.nino.sochet.fr/competence/techniques/devsecops/</guid><description>&lt;p>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img src="https://portfolio.nino.sochet.fr/img/devsecops/illustration.svg" alt="" loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;p>Avant de définir le DevSecOps, il faut définir le devops. Le &lt;strong>devops&lt;/strong> est l’unification du développement logiciel (dev) et de l’administration des infrastructures informatiques (ops). C’est l’&lt;strong>automatisation&lt;/strong> et le &lt;strong>monitoring&lt;/strong> de toutes les étapes de la création d’un logiciel: depuis le développement et l’intégration, les tests, la livraison jusqu’au déploiement, l’exploitation et la maintenance des infrastructures. Le &lt;strong>DevSecOps&lt;/strong> est l’intégration de la &lt;strong>sécurité&lt;/strong> dans le cycle devops. La sécurité est donc un enjeu du projet au même titre que le développement et cela dès le début du cycle de vie d’un projet.&lt;/p>
&lt;h2 id="quel-est-son-rôle-au-sein-dun-projet">Quel est son rôle au sein d’un projet ?&lt;/h2>
&lt;p>C’est lui qui va être &lt;strong>responsable&lt;/strong> de la &lt;strong>sécurité&lt;/strong> de l’environnement et des données, mais aussi de celle des pipelines continuous integration ou des continuous Delivery. Les CI/CD sont des chaînes de tâches automatisées comme l’exécution de test, le build d’une application ou encore la mise en production de l’application. Il va donc pouvoir mettre en place l’intégration d’analyseurs de sécurité comme l’analyse statique du code ou encore celle des dépendances. Il va aussi automatiser les mises à jour de sécurité, mais aussi la recherche de nouvelles failles avec des scanneurs de vulnérabilité pour trouver les plus flagrantes. Ainsi la sécurité de tout le projet est &lt;strong>poussée par le haut&lt;/strong> tout le temps afin d’avoir un niveau de sécurité correct.&lt;/p>
&lt;h2 id="en-entreprise">En entreprise&lt;/h2>
&lt;p>Durant mon alternance, j’ai eu l’occasion de découvrir le monde du devops et me former à celui du DevSecOps. J’ai accompagné un projet &lt;strong>depuis sa naissance&lt;/strong> et ainsi pu mettre en place dès le début de celui-ci de bonnes pratiques. Mais j’ai aussi eu la chance de rentrer en cours de route dans des projets de plusieurs années et voir la &lt;strong>dette technique&lt;/strong> accumulée et les pratiques à éviter. Je vais continuer à travailler en tant que DevSecOps et ainsi rechercher les derniers moyens afin d’avoir le meilleur niveau de sécurité de la manière la plus simple possible. Depuis la fin de mon alternance j&amp;rsquo;ai eu l&amp;rsquo;occasion d&amp;rsquo;accompagner les différentes équipes qu&amp;rsquo;elles soit techniques ou non pour l&amp;rsquo;amélioration de la sécurité à leurs niveaux.&lt;/p>
&lt;h3 id="voir-aussi">Voir aussi&lt;/h3>
&lt;ul>
&lt;li>&lt;a href="https://portfolio.nino.sochet.fr/realisation/stal-k">Stal-k&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://portfolio.nino.sochet.fr/competence/transverses/curiosite">Curiosité&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://portfolio.nino.sochet.fr/competence/transverses/resolution-problemes">Résolution de problèmes&lt;/a>&lt;/li>
&lt;/ul></description></item><item><title>Angular</title><link>https://portfolio.nino.sochet.fr/competence/techniques/angular/</link><pubDate>Sun, 07 Jun 2020 00:00:00 +0000</pubDate><guid>https://portfolio.nino.sochet.fr/competence/techniques/angular/</guid><description>&lt;p>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img src="https://portfolio.nino.sochet.fr/img/angular/logo.png" alt="" loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;p>Angular est un framework client basé sur &lt;strong>Typescript&lt;/strong>. Originellement, AngularJS Google a entrepris une refonte totale de son framework en 2016 afin de faire la transition vers Typescript. Aujourd’hui, Angular est un des grands frameworks client à côté de &lt;strong>Vue.js&lt;/strong> et &lt;strong>React&lt;/strong>. Avec les années qui passent, on reproche de plus en plus le côté lourd et lent face à ses frères de lance.&lt;/p>
&lt;h2 id="angular-et-moi">Angular et moi&lt;/h2>
&lt;p>Je ne réalise que rarement des interfaces utilisateur, mais durant mes différentes missions il m’est arrivé de devoir en réaliser. Je connais les grands aspects d’Angular et ne suis pas du tout expert en la matière. Mais quand je réalise des applications web, j’aime le fait qu’elles soient bien faites. Bien que le côté client ne soit pas mon premier amour, je trouve que c’est un savoir-faire &lt;strong>nécessaire&lt;/strong> qui permet de mieux comprendre comment tout s’articule.&lt;/p>
&lt;h2 id="la-rupture">La rupture&lt;/h2>
&lt;p>Je ne pense pas travailler spécifiquement mes compétences sur Angular, mais plutôt reconvertir mon savoir dans un autre framework client. Ma première cible sera, je pense, &lt;strong>React&lt;/strong> sans raison particulière à part la curiosité et le bouche-à-oreille.&lt;/p>
&lt;h3 id="voir-aussi">Voir aussi&lt;/h3>
&lt;ul>
&lt;li>&lt;a href="https://portfolio.nino.sochet.fr/realisation/item-manager">Item-Manager&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://portfolio.nino.sochet.fr/competence/transverses/creativite">Créativité&lt;/a>&lt;/li>
&lt;/ul></description></item><item><title>cowsay linux</title><link>https://portfolio.nino.sochet.fr/competence/techniques/linux/</link><pubDate>Mon, 23 Mar 2020 00:00:00 +0000</pubDate><guid>https://portfolio.nino.sochet.fr/competence/techniques/linux/</guid><description>&lt;pre>&lt;code> _____
&amp;lt; linux &amp;gt;
-----
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||
&lt;/code>&lt;/pre>
&lt;p>Je me revois sur les tutoriels de Bjornulf Frode en train de faire mes &lt;strong>cd&lt;/strong> et &lt;strong>ls&lt;/strong>, de découvrir ce qui sera plus tard comme une &lt;strong>deuxième maison&lt;/strong>. Quand on commence à utiliser Linux, ça peut être &lt;strong>déroutant&lt;/strong>. Tout change, que ce soit l’interface graphique ou l’organisation des fichiers pour une personne venant de Windows. Aujourd’hui les choses ont beaucoup changé sur cet aspect et la transition des nouveaux utilisateurs est &lt;strong>beaucoup plus facile&lt;/strong>.&lt;/p>
&lt;h2 id="ping--c-1-127001">ping -c 1 127.0.0.1&lt;/h2>
&lt;p>Linux est devenu mon système d’exploitation du &lt;strong>quotidien&lt;/strong>. Au fil des années, j’ai installé, testé et cassé de nombreuses distributions comme CentOS, Arch Linux, Ubuntu, mais je me suis naturellement sédentarisé sur &lt;strong>Debian&lt;/strong>.&lt;/p>
&lt;p>Mais peu importe la distribution, Linux apporte un vent de &lt;strong>liberté&lt;/strong>. Liberté du code, chose qui depuis quelques années me tient de plus en plus à cœur. Mais surtout, liberté de faire tout ce dont on a envie avec, tant pour le personnaliser que pour supprimer le bootloader. Une fois que l’on y a goûté, utiliser un autre système d’exploitation nous paraît &lt;strong>complètement aberrant&lt;/strong>.&lt;/p>
&lt;h2 id="usage-et-évolution">Usage et évolution&lt;/h2>
&lt;p>J’ai passé de nombreuses heures à dompter &lt;strong>tmux&lt;/strong>, &lt;strong>zsh&lt;/strong> ou encore &lt;strong>vim&lt;/strong>, enchaîné les &lt;strong>awk&lt;/strong> et &lt;strong>sed&lt;/strong>, le tout en domestiquant &lt;strong>apt&lt;/strong> ou pacman. J’ai suivi la &lt;strong>formation PWK&lt;/strong> afin de passer l’&lt;strong>OSCP&lt;/strong> et ce fut un bon en avant dans ma maîtrise et utilisation de &lt;strong>Linux&lt;/strong>. Même si la formation était centrée sur Kali Linux, une distribution qui regroupe des outils liés à la sécurité informatique, elle m’a apporté &lt;strong>beaucoup de connaissances&lt;/strong>. Que ce soit une basique redirection de port avec SSH ou encore des exploits kernel afin de passer outre des groupes et utilisateurs du système. Grâce à cela je pense pouvoir dire que j’ai une connaissance plus qu’honorable sur Linux et que je ne compte pas en rester là. Il y a encore beaucoup de choses à apprendre et cela fait partie de mes buts d’en apprendre le plus possible. Je sais que je manque en connaissance en scripting avec &lt;strong>bash&lt;/strong> et je pense que c’est la première lacune à laquelle je dois remédier afin de &lt;strong>m’améliorer&lt;/strong>.&lt;/p>
&lt;h3 id="voir-aussi">Voir aussi&lt;/h3>
&lt;ul>
&lt;li>&lt;a href="https://portfolio.nino.sochet.fr/realisation/road-oscp-pt1">Road to OSCP&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://portfolio.nino.sochet.fr/competence/transverses/curiosite">Curiosité&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://portfolio.nino.sochet.fr/competence/transverses/autonomie">Autonomie&lt;/a>&lt;/li>
&lt;/ul></description></item><item><title>Stal-k</title><link>https://portfolio.nino.sochet.fr/realisation/stal-k/</link><pubDate>Sun, 01 Mar 2020 00:00:00 +0000</pubDate><guid>https://portfolio.nino.sochet.fr/realisation/stal-k/</guid><description>&lt;p>Durant mes &lt;strong>longues heures&lt;/strong> à faire des challenges sur des sites comme Root-me ou encore Hack the Box, je me suis retrouvé sur une catégorie très particulière, l’&lt;strong>OSINT&lt;/strong>. Il n’y a pas vraiment de compétences techniques à avoir pour les réussir.&lt;/p>
&lt;blockquote>
&lt;p>OSINT&lt;/p>
&lt;p>Pour Open Source Intelligence, c’est le concept de renseignement en source ouverte. Pour simplifier tout ce qui est accessible depuis les moteurs de recherche et sans infiltration dans un système.&lt;/p>
&lt;/blockquote>
&lt;h2 id="social-mapper">Social mapper&lt;/h2>
&lt;p>Pour &lt;strong>automatiser&lt;/strong> et &lt;strong>simplifier&lt;/strong> mes recherches durant celles-ci, j’ai découvert un projet de Greenwolf appeler &lt;strong>social_mapper&lt;/strong>. Le but du projet ? On lui donne un &lt;strong>nom&lt;/strong> et des &lt;strong>images&lt;/strong> de la &lt;strong>personne&lt;/strong> et il cherche sur les différents &lt;strong>réseaux sociaux&lt;/strong> les personnes qui correspondent. Mais pourquoi lui donner des images ? Parce que ce qui démarque le projet c’est l’inclusion de la &lt;strong>reconnaissance faciale&lt;/strong> pour trouver les bonnes personnes parmi tous les &lt;strong>homonymes&lt;/strong>. En trouvant ce projet, j&amp;rsquo;étais vraiment content, tout ce que je cherchais. Mais c&amp;rsquo;était avant que ma &lt;strong>curiosité&lt;/strong> ne prenne le dessus.&lt;/p>
&lt;h3 id="installation-et-code-review">Installation et code review&lt;/h3>
&lt;p>Il n’y a pas d’exécutable tout prêt, c’est à nous de l’installer avec nos petites mains sur différents systèmes, dont les dépendances. Il faut donc installer Firefox, mais pas la version installer de base, sur tous les système linux, Selenium, Geckodriver, libgtk-3-dev et libboost-all-dev. Ce n’est pas impossible, mais si l’on n’est pas sur la même distribution Linux que Greenwolf c’est le début du bricolage. Étant &lt;strong>surpris&lt;/strong> de cette installation et des fonctionnalités, je me suis &lt;strong>plongé&lt;/strong> dans le code par &lt;strong>curiosité&lt;/strong> de comprendre comment un social_mapper avait été développé. Beaucoup de &lt;strong>mauvaises pratiques&lt;/strong> de développement comme du code &lt;strong>dupliqué&lt;/strong> sont utilisées, il n’y a aucun modèle objet, un &lt;strong>monolithe&lt;/strong> de 1500 lignes, très peu de &lt;strong>gestion d’erreur&lt;/strong> et du code pour débugger partout en commentaire. À ce moment-là, le projet &lt;strong>stal-k&lt;/strong> s’est créé dans ma tête.&lt;/p>
&lt;h2 id="stal-k">Stal-k&lt;/h2>
&lt;p>Mon principal objectif était de faire une &lt;strong>copie&lt;/strong> des fonctionnalités qu’on trouve avec social_mapper, mais codées cette fois en &lt;a href="https://portfolio.nino.sochet.fr/competence/techniques/go">Go&lt;/a> avec en objectif premier les performances, la &lt;strong>simplicité&lt;/strong> d’utilisation et la &lt;strong>clarté&lt;/strong> du code. Mais pour cela il fallait rechercher des technologies qui correspondent aux fonctionnalités de social_mapper en Go. J’ai fini par choisir &lt;a href="https://github.com/chromedp/chromedp" target="_blank" rel="noopener">chromedp&lt;/a> pour l’émulation d’un utilisateur sur internet afin de récupérer les données et &lt;a href="https://github.com/Kagami/go-face" target="_blank" rel="noopener">go-face&lt;/a> pour la &lt;strong>reconnaissance faciale&lt;/strong>. Je suis arrivé à la fin de mon &lt;strong>Proof Of Concept&lt;/strong> (POC) en pouvant &lt;strong>scanner&lt;/strong> le LinkedIn d’une entreprise et essayer de relier la personne à ses &lt;strong>réseaux sociaux&lt;/strong> (Instagram, Twitter…) en ayant la possibilité de rajouter de nouveau site très facilement. Voici ici la &lt;strong>configuration&lt;/strong> utilisée pour récupérer un compte facebook :&lt;/p>
&lt;pre>&lt;code class="language-yaml">option:
name: Search on facebook
site: www.facebook.com
auth: true
search: true
viewport:
x: 1924
y: 1080
do:
- type: do
actions:
- type: navigate
value: https://www.facebook.com/login
- type: waitvisible
selector: '#email'
- type: sendkeys
selector: '#email'
value: '{{username}}'
- type: sendkeys
selector: '#pass'
value: '{{password}}'
- type: click
selector: '#loginbutton'
- type: waitvisible
selector: '#mainContainer'
- type: screenshot
- type: navigate
value: 'https://www.facebook.com/search/people/?q={{search}}&amp;amp;epa=SERP_TAB'
- type: waitvisible
selector: '#BrowseResultsContainer'
- type: while
selector: '!#browse_end_of_results_footer &amp;gt; div &amp;gt; div &amp;gt; div'
max: 10
actions:
- type: scrollbottom
- type: sleep
value: 1
- type: screenshot
- type: do
actions:
- type: sleep
value: 5
- type: sniffuser
value: &amp;gt;-
// some js code
&lt;/code>&lt;/pre>
&lt;p>J’ai pu rajouter des &lt;strong>fonctionnalités&lt;/strong> sur la correspondance des profils, il y a la possibilité de &lt;strong>vérifier&lt;/strong> si les images ne sont pas identiques et ce malgré les différentes, définitions. J’ai pensé le système le plus &lt;strong>modulaire&lt;/strong> possible pour pouvoir ajouter des tests en fonction des idées qui me viennent.&lt;/p>
&lt;h3 id="ça-bloque">Ça bloque&lt;/h3>
&lt;p>En poussant le &lt;strong>POC&lt;/strong> je me suis rendu compte des &lt;strong>limitations&lt;/strong> qui bloquaient l’efficacité de mon &lt;strong>stal-k&lt;/strong>. Le premier, c’est le &lt;strong>bannissement&lt;/strong> de mes comptes &lt;strong>fake&lt;/strong> créés pour récupérer les informations étant donné que c’est un processus qui ne répond pas à la &lt;strong>charte d’utilisation&lt;/strong> des différents sites. Il faut réfléchir différemment afin de contourner les systèmes pour ne pas faire sonner l’alarme des &lt;strong>traqueurs de bots&lt;/strong>. Le deuxième est « seulement » lié à la résolution des images trouvées automatiquement. L’atout principal d’un outil comme stal-k c’est la &lt;strong>reconnaissance faciale&lt;/strong>, mais celle-ci demande une &lt;strong>résolution importante&lt;/strong> afin de fonctionner correctement. Pour certain site il est &lt;strong>impossible&lt;/strong> de pouvoir trouver une &lt;strong>photo en HD&lt;/strong> ce qui implique une nouvelle &lt;strong>problématique&lt;/strong>, comment classer les comptes en évitant les &lt;strong>faux négatifs&lt;/strong> ? Il n’y a pas de réponse toute faite et la solution que j’ai trouvée n’est surement pas la meilleure… Mon plan est assez simple, mettre un &lt;strong>poids&lt;/strong> pour &lt;strong>chaque vérification&lt;/strong>. Par exemple, homonyme 10 points, reconnaissance faciale a 70% positif 70 points, image similaire 100 points et ainsi mettre en place une échelle de sûreté du résultat par exemple entre 0 et 50 négatifs, 50 et 80 à vérifier et 100+ un résultat positif. Cette échelle est un simple exemple et il y a surement des modifications qui vont arriver pour l’&lt;strong>équilibrer&lt;/strong>.&lt;/p>
&lt;h2 id="v1">V1&lt;/h2>
&lt;p>Le projet a encore besoin de &lt;strong>maturation&lt;/strong> et c’est pour cela qu’à l’écriture de cet article, le projet n’est pas encore disponible sur mon compte &lt;strong>Github&lt;/strong>. Mais ça ne saurait tarder il faut juste trouver la bonne &lt;strong>solution&lt;/strong> pour chaque limitation trouvée. Mais aussi faire en sorte que stal-k soit le plus &lt;strong>facilement installable&lt;/strong> et cela grâce à un container. Ce dernier se voudra simple et efficace et pourra répondre à tous les problèmes de dépendance et de plateformes (Windows, OS X, Linux …). Il reste de nombreuses choses à faire sur stal-k et de nombreuses idées à trouver. Et je suis sûr qu’avec le temps stal-k saura émerger tel le &lt;strong>Cthulhu&lt;/strong> de la mer.&lt;/p>
&lt;h3 id="voir-aussi">Voir aussi&lt;/h3>
&lt;ul>
&lt;li>&lt;a href="https://portfolio.nino.sochet.fr/competence/techniques/go">Go&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://portfolio.nino.sochet.fr/competence/techniques/devsecops">DevSecOps&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://portfolio.nino.sochet.fr/competence/transverses/autonomie">Autonomie&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://portfolio.nino.sochet.fr/competence/transverses/curiosite">Curiosité&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://portfolio.nino.sochet.fr/competence/transverses/resolution-problemes">Résolution de problèmes&lt;/a>&lt;/li>
&lt;/ul></description></item><item><title>Un clavier ?</title><link>https://portfolio.nino.sochet.fr/realisation/keyboard/</link><pubDate>Sat, 22 Feb 2020 00:00:00 +0000</pubDate><guid>https://portfolio.nino.sochet.fr/realisation/keyboard/</guid><description>&lt;p>Si vous lisez cet article, vous savez probablement ce qu’est un &lt;strong>clavier&lt;/strong> et en avez surement un &lt;strong>devant vous&lt;/strong>. Qu’il soit virtuel, sur votre smartphone ou physique, devant votre écran, il est là. J’ai toujours fait attention mon clavier, avec les jeux vidéos j’en avais choisi un &lt;strong>mécanique&lt;/strong>. Mais quand celui-ci a &lt;strong>cessé de fonctionner&lt;/strong>, je me suis retrouvé face à un dilemme. Lequel choisir ? Il existe une &lt;strong>grande&lt;/strong> gamme de produits disponible avec tout un tas de &lt;strong>spécificités&lt;/strong> qui sont propres à chacun. Plus je cherchais, moins je trouvais un clavier à mon goût. Les claviers gamer avec des LED à n’en plus finir, des claviers avec le double de touches, des claviers trop petits. Trop de choix tue le choix. Je me suis alors posé une question : pourquoi ne pas assembler mon &lt;strong>propre clavier&lt;/strong> ?&lt;/p>
&lt;h2 id="do-it-yourself">Do it yourself&lt;/h2>
&lt;p>J’avais déjà vu des vidéos de personnes qui &lt;strong>assemblent&lt;/strong> des claviers mécaniques et je savais qu’il était largement &lt;strong>possible&lt;/strong> de le faire. J’ai donc fait le tour du web pour me renseigner sur ce qu’il fallait comme &lt;strong>savoir-faire&lt;/strong> et les différents &lt;strong>composants&lt;/strong> dont j’aurais besoin. En savoir-faire, c’est plutôt simple : il faut de la &lt;strong>minutie&lt;/strong> et savoir prendre son temps, notamment lors du &lt;strong>soudage&lt;/strong>. Je n’en avais jamais fait, impossible pour moi de dire si j’allais réussir, si c’était &lt;strong>simple&lt;/strong> ou &lt;strong>compliqué&lt;/strong>. C’était mon point noir et à part regarder des tutoriels vidéos, impossible de savoir comment j’allais m’en sortir. Malgré le &lt;strong>doute&lt;/strong> en moi, j’ai décidé de &lt;strong>prendre le risque&lt;/strong> et je me suis lancé : je vais faire mon clavier ! Après cette décision, de &lt;strong>nombreuses&lt;/strong> interrogations se sont imposées à moi comme : quel PCB choisir ? qu’est-ce qu’un PCB ? Qu’est-ce qu&amp;rsquo;un clavier 60%, TKL, Full-size ? Quel switch choisir ? Quel boitier prendre ? AZERTY ou QWERTY ? Comment utilise-t-on les touches fonction sur un clavier 60% ? Et &lt;strong>beaucoup&lt;/strong> d’autres questions, trop de questions. À de nombreuses reprises, je me suis dit que j’allais tout arrêter et juste en acheter un tout fait comme tout le monde. Mais l’idée me revenait continuellement en tête et je m’y replongeais. J’ai fini par trouver une réponse à toutes mes questions. Pour faire court et répondre à toutes ces questions mon clavier sera donc un : Clavier mécanique 60% avec switchs Box Red dans un boîtier en bois.&lt;/p>
&lt;h2 id="daccord">D’accord…&lt;/h2>
&lt;p>Pour ne perdre personne, je vais donc reprendre quelques points. Tout d’abord, qu’est-ce qu’un &lt;strong>clavier mécanique&lt;/strong> ? Il existe plusieurs &lt;strong>technologies&lt;/strong> de clavier, la première est le clavier à &lt;strong>membranes&lt;/strong>. On les retrouve le plus souvent sur les claviers des o&lt;strong>rdinateurs portables&lt;/strong> ainsi que les &lt;strong>claviers premier prix&lt;/strong>, ils ont l’avantage d’être peu bruyant et compact. La deuxième est le clavier à &lt;strong>interrupteurs mécaniques&lt;/strong>, dit &lt;strong>clavier mécanique&lt;/strong>, qui fait partie des premiers claviers sortis. Vous avez surement déjà eu un jour. Ils ont l’avantage d’avoir une meilleure durée de vie, d’être plus &lt;strong>agréable&lt;/strong> d’utilisation, mais ont pour inconvénient d’être &lt;strong>plus chers&lt;/strong> et de faire du &lt;strong>bruit&lt;/strong> à chaque frappe. Pourquoi on dit qu’un clavier est mécanique ? Comme énoncé plus haut, on les nomme d’après leurs interrupteurs mécaniques, switch en anglais, c’est une pièce plastique sur un ressort. Quand on appuie sur cette pièce on fait toucher les deux branches métalliques et ainsi l’information que la touche a été appuyée est transmise.&lt;/p>
&lt;p>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img src="https://portfolio.nino.sochet.fr/img/keyboard/schema.gif" alt="" loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;p>Il existe plusieurs types de &lt;strong>switchs&lt;/strong> en fonction de la &lt;strong>sensation&lt;/strong> que l’on veut avoir quand on appuie sur une touche. Chaque personne a sa &lt;strong>préférence&lt;/strong> et pour trouver la sienne il vaut mieux les tester avant de les choisir. Pour ce qui est du &lt;strong>PCB&lt;/strong>, finalement c’est tout simple : c’est le &lt;strong>circuit imprimé&lt;/strong> qui permet d&amp;rsquo;envoyer les informations à l’ordinateur. 60%, TKL et full-size est la &lt;strong>taille du clavier&lt;/strong> il existe des variantes qui sont nommées en fonction du pourcentage de touche présente par rapport à un clavier full-size.&lt;/p>
&lt;p>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img src="https://portfolio.nino.sochet.fr/img/keyboard/60-comparison.jpg" alt="" loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;h2 id="la-construction">La construction&lt;/h2>
&lt;p>J’ai donc commandé toutes mes pièces, mon soudeur et ma pompe à dessouder. Et dès que tout était complet, je me suis mis à l’œuvre. Dans un premier temps j’ai décidé de &lt;strong>lubrifier&lt;/strong> tous mes &lt;strong>switchs&lt;/strong> pour être sûr que ce soit plus &lt;strong>agréable&lt;/strong>, et cela en les démontant un par un avec un pinceau. On graisse alors au silicone toutes les pièces qui composent le switch. 68 switchs c’est &lt;strong>long&lt;/strong> et &lt;strong>fastidieux&lt;/strong>, mais le résultat est là et le son en est changé. Autant faire les &lt;strong>choses bien&lt;/strong> !&lt;/p>
&lt;p>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img src="https://portfolio.nino.sochet.fr/img/keyboard/switch.jpg" alt="" loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;p>L’étape d’après est &lt;strong>le test&lt;/strong> pour savoir si le PCB fonctionne bien. Une fois testé, on peut disposer les switchs sur le PCB grâce à une plaque en métal qui va plus tard permettre de le &lt;strong>protéger&lt;/strong>.&lt;/p>
&lt;p>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img src="https://portfolio.nino.sochet.fr/img/keyboard/pcb&amp;#43;switch.jpg" alt="" loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;p>La dernière étape avant le soudage est l’&lt;strong>application&lt;/strong> des &lt;strong>touches&lt;/strong> sur les &lt;strong>switchs&lt;/strong> afin de tester que ceux-ci sont bien mis à leur place sur le PCB.&lt;/p>
&lt;p>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img src="https://portfolio.nino.sochet.fr/img/keyboard/switch&amp;#43;keycaps.jpg" alt="" loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;p>C’est l’heure du tant attendu &lt;strong>soudage&lt;/strong>, celui qui apeure et donne envie. On prépare le poste de soudage, fils à souder et &lt;strong>protections&lt;/strong> et on est parti. À l’instant T, j’ai vraiment apprécié et ne voulais pas à me résoudre à arrêter, la fonte du fil devant nos yeux, le contact fait… c’est &lt;strong>addictif&lt;/strong>. À la forme on voit si la soudure est propre ou si on doit la refaire. J’ai souvent dû la &lt;strong>refaire&lt;/strong>, mais toujours avec &lt;strong>plaisir&lt;/strong>.&lt;/p>
&lt;p>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img src="https://portfolio.nino.sochet.fr/img/keyboard/solder.jpg" alt="" loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;p>Il ne reste plus qu’à mettre le clavier dans son boitier et &lt;strong>profiter&lt;/strong>. Une fois branché, on peut &lt;strong>configurer&lt;/strong> les touches afin que celles-ci correspondent à nos envies. La configuration est totale, on peut l’arranger à notre &lt;strong>convenance&lt;/strong> et à volonté via le langage C afin de créer nos propres &lt;strong>raccourcis clavier&lt;/strong> par exemple.&lt;/p>
&lt;h2 id="enfin-fini">Enfin fini&lt;/h2>
&lt;p>Après plus de &lt;strong>6h d’assemblage&lt;/strong>, je peux enfin &lt;em>profiter&lt;/em> de mon clavier. Assembler mon clavier est le &lt;strong>meilleur&lt;/strong> choix que je pouvais faire. Il n’est pas le plus économique certes, mais il correspond à ce dont j’avais envie et m’a permis une parfaite &lt;strong>modulabilité&lt;/strong>. On peut dire que c’est un objet de &lt;strong>luxe&lt;/strong> assemblé par ma personne, &lt;strong>made in France&lt;/strong> !&lt;/p>
&lt;p>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img src="https://portfolio.nino.sochet.fr/img/keyboard/keyboard.jpg" alt="" loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;h3 id="voir-aussi">Voir aussi&lt;/h3>
&lt;ul>
&lt;li>&lt;a href="https://portfolio.nino.sochet.fr/competence/transverses/autonomie">Autonomie&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://portfolio.nino.sochet.fr/competence/transverses/creativite">Créativité&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://portfolio.nino.sochet.fr/competence/transverses/curiosite">Curiosité&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://portfolio.nino.sochet.fr/competence/transverses/resolution-problemes">Résolution de problèmes&lt;/a>&lt;/li>
&lt;/ul></description></item><item><title>La curiosité</title><link>https://portfolio.nino.sochet.fr/competence/transverses/curiosite/</link><pubDate>Fri, 27 Sep 2019 00:00:00 +0000</pubDate><guid>https://portfolio.nino.sochet.fr/competence/transverses/curiosite/</guid><description>&lt;p>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img src="https://portfolio.nino.sochet.fr/img/curiosite/tree_swing.svg" alt="" loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;p>Compétence &lt;strong>précieuse&lt;/strong> en informatique, c&amp;rsquo;est ce qui nous &lt;strong>pousse&lt;/strong> à toujours chercher les dernières technologies. On regarde comment les autres font, comment les choses &lt;strong>fonctionnent&lt;/strong>, cela nous permet de nous &lt;strong>tenir à jour&lt;/strong> sur nos compétences techniques et de &lt;strong>toujours apprendre&lt;/strong>.&lt;/p>
&lt;h2 id="au-quotidien">Au quotidien&lt;/h2>
&lt;p>Je &lt;strong>me forme&lt;/strong> au fil de mes recherches à toujours découvrir de &lt;strong>nouveaux domaines&lt;/strong> et intérêts. C’est grâce à cela que je &lt;strong>m’instruis au quotidien&lt;/strong>, et cela fait partie de mes atouts. Durant les différents challenge de hacking ou encore de mes projets personnels comme stal-k je me plonge dans des domaines divers et variés.&lt;/p>
&lt;p>Quand on est curieux ce n’est pas seulement en informatique. C’est &lt;strong>une façon de réfléchir&lt;/strong>, d’essayer de comprendre comment ce qui nous entoure fonctionne, comment fonctionne la moto que je conduis, comment réparer mon évier. Être curieux de l&amp;rsquo;autre ou simplement se demander ce que fait mon chat quand il est dehors.&lt;/p>
&lt;h2 id="le-retour-de-bâton">Le retour de bâton&lt;/h2>
&lt;p>Mais il faut faire &lt;strong>attention&lt;/strong>, on peut facilement s’engouffrer dans des &lt;strong>recherches chronophages&lt;/strong> qui au fur et à mesure n&amp;rsquo;ont plus rien à voir et qui finissent par &lt;strong>influencer&lt;/strong> notre travail. Il faut trouver le &lt;strong>juste équilibre&lt;/strong>, entre trop et pas assez pour ainsi réussir à avoir le &lt;strong>recul&lt;/strong> pour savoir de quel côté l&amp;rsquo;on penche.&lt;/p>
&lt;p>La curiosité a été et est un &lt;strong>atout&lt;/strong> certain à des moments où je &lt;strong>bloquais&lt;/strong>, elle a fait en sorte de me porter plus loin, de &lt;strong>m’accrocher&lt;/strong> pour me permettre de réussir. Mais au contraire la curiosité a aussi joué à des moments où j’étais endigué dans une idée, elle m’a fait me sentir d’autant &lt;strong>plus coincé&lt;/strong> . J’allais chercher des informations qui n’avaient que peu de rapport en n’ayant pas assez de recul pour m’en rendre compte.&lt;/p>
&lt;p>
&lt;figure >
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >&lt;img src="https://portfolio.nino.sochet.fr/img/curiosite/inspiration.svg" alt="" loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;p>La &lt;strong>curiosité&lt;/strong>, comme la &lt;strong>créativité&lt;/strong>, fait partie de &lt;strong>moi&lt;/strong>. Je ne pourrai pas l&amp;rsquo;enlever de ma personne et cela pour le mieux. Elle me pousse à toujours &lt;strong>chercher&lt;/strong> plus loin, à agrandir mon cercle de &lt;strong>connaissances&lt;/strong> et à m’ouvrir davantage.&lt;/p>
&lt;h3 id="voir-aussi">Voir aussi&lt;/h3>
&lt;ul>
&lt;li>&lt;a href="https://portfolio.nino.sochet.fr/realisation/stal-k">Stal-k&lt;/a>&lt;/li>
&lt;li>&lt;a href="https://portfolio.nino.sochet.fr/realisation/keyboard">Un clavier&lt;/a>&lt;/li>
&lt;/ul></description></item></channel></rss>