{"id":47,"date":"2022-08-13T08:00:25","date_gmt":"2022-08-13T06:00:25","guid":{"rendered":"http:\/\/wifiromeo.fr\/?p=47"},"modified":"2022-08-16T15:16:34","modified_gmt":"2022-08-16T13:16:34","slug":"comment-wireshark-peut-faciliter-lanalyse-dincidents-wi-fi-partie-3-analyse","status":"publish","type":"post","link":"https:\/\/wifiromeo.fr\/?p=47","title":{"rendered":"Comment Wireshark peut faciliter l&rsquo;analyse d&rsquo;incidents Wi-Fi (Partie 3 : Analyse)"},"content":{"rendered":"\n<p>Une fois les trames captur\u00e9es puis mises en forme, nous pouvons passer \u00e0 l\u2019analyse. Cette \u00e9tape peut s\u2019av\u00e9rer tr\u00e8s fastidieuse, surtout lorsque l\u2019on ne sait pas encore ce que l\u2019on cherche. Pour cela Wireshark met \u00e0 notre disposition plusieurs outils qui vont permettre de mieux cibler les recherches, cependant il est essentiel de disposer d\u2019un minimum de connaissances des \u00e9changes WLAN, du format des paquets, des diff\u00e9rents param\u00e8tres et pour cela je vous renvoie vers la formation CWAP qui est tr\u00e8s compl\u00e8te sur le sujet.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3.1 D\u00e9crypter une trame<\/h2>\n\n\n\n<p>Pour faciliter les analyses applicatives, il peut \u00eatre int\u00e9ressant de d\u00e9crypter les trames et voir ainsi le contenu des \u00e9changes. Pour cela, il faut aller dans le menu \u201cEdit\u201d &gt; \u201cPreferences\u201d &gt; \u201cProtocols\u201d &gt; \u201cIEEE 802.11\u201d et s\u2019assurer que la case \u201cEnable decryption\u00a0\u00bb est bien coch\u00e9e. Ensuite pour ajouter des cl\u00e9s, il faut aller cliquer sur le bouton \u201cEdit \u2026\u201d en face de \u201cDecryption keys\u201d.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/static.wixstatic.com\/media\/68bc5d_9fcda9ecc6f14c108461ffb629e8252a~mv2.png\/v1\/fit\/w_300,h_300,al_c,q_5,enc_auto\/file.png\" alt=\"\"\/><\/figure>\n\n\n\n<p>Dans la fen\u00eatre qui s\u2019ouvre vous pourrez ajouter des cl\u00e9s, suivant le type d\u2019encryption utilis\u00e9 vous avez plusieurs possibilit\u00e9s :<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Si vous utilisez du WEP : Il faut s\u00e9lectionner le type de cl\u00e9 wep puis rentrer la cl\u00e9 (10 valeurs num\u00e9riques ou 26 caract\u00e8res alphanum\u00e9rique)<\/li><li>Si vous utilisez du WPA\/WPA2 PSK : Vous pouvez utiliser le type de cl\u00e9 \u201cwpa-pwd\u201d ou \u201cwpa-psk\u201d<\/li><li>Pour le wpa-pwd il faut renseigner la cl\u00e9 puis le nom du ssid selon le formatage suivant : cl\u00e9:ssid<\/li><li>Pour le wpa-psk il faut renseigner la pr\u00e9-shared key au format 64byte h\u00e9xad\u00e9cimale<\/li><li>Si vous utilisez du WPA\/WPA2 Enterprise : Vous pouvez s\u00e9lectionner wpa-psk et renseigner la cl\u00e9 PMK que vous pouvez r\u00e9cup\u00e9rer sur le client ou sur le serveur Radius<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">3.2 Les filtres de visualisation<\/h2>\n\n\n\n<p>Les filtres de visualisations sont un des \u00e9l\u00e9ments tr\u00e8s importants dans l\u2019analyse avec Wireshark. Ils permettent de n\u2019afficher que les paquets correspondant au filtre indiqu\u00e9. L\u2019avantage par rapport aux filtres de captures, c&rsquo;est qu\u2019ils permettent de pouvoir malgr\u00e9 tout conserver l\u2019int\u00e9gralit\u00e9 des paquets pour une utilisation future.<\/p>\n\n\n\n<p>Pour retrouver un filtre d&rsquo;affichage, il est possible d\u2019aller dans le d\u00e9tail d\u2019un paquet, de s\u00e9lectionner le champ qui nous int\u00e9resse, en cliquant simplement dessus le nom du champ apparait dans la barre inf\u00e9rieure. En faisant un clic droit dessus, puis \u201cApply as filter\u201d il est possible de s\u00e9lectionner directement le champ avec la valeur du paquet pour pouvoir retrouver tous les autres paquets qui correspondent \u00e0 ce crit\u00e8re (choix \u201cSelected\u201d) ou au contraire pour exclure tous les paquets correspondant \u00e0 ce crit\u00e8re (choix \u201cNot Selected\u201d).<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/static.wixstatic.com\/media\/68bc5d_a1d8a5a442ee4889af0d79eb966df62b~mv2.png\/v1\/fit\/w_300,h_300,al_c,q_5,enc_auto\/file.png\" alt=\"\"\/><\/figure>\n\n\n\n<p>Vous avez \u00e9galement la possibilit\u00e9 d\u2019\u00e9crire vous-m\u00eame votre filtre en vous aidant par exemple des r\u00e9f\u00e9rences de Wireshark ici :<\/p>\n\n\n\n<p><a href=\"https:\/\/www.wireshark.org\/docs\/dfref\/w\/wlan.html\">https:\/\/www.wireshark.org\/docs\/dfref\/w\/wlan.html<\/a><\/p>\n\n\n\n<p>ou bien en utilisant cette compilation qui comprend \u00e9norm\u00e9ment de filtres tr\u00e8s utiles au quotidien :<\/p>\n\n\n\n<p><a href=\"https:\/\/semfionetworks.com\/blog\/wireshark-most-common-80211-filters\/\">https:\/\/semfionetworks.com\/blog\/wireshark-most-common-80211-filters\/<\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Les macros<\/h3>\n\n\n\n<p>Lorsque l\u2019on utilise plusieurs filtres les un \u00e0 la suite des autres, ils deviennent rapidement assez difficiles \u00e0 lire et pour faciliter cela on peut utiliser des macros. Les macros vont permettre de cr\u00e9er des filtres pr\u00e9-d\u00e9finis dans lequel nous n\u2019auront plus qu\u2019\u00e0 ajouter des param\u00e8tres. Pour cr\u00e9er une macro, il faut aller dans la barre de menu, choisir le menu \u201cAnalyze\u201d puis \u201cDisplay Filter Macros\u201d.<\/p>\n\n\n\n<p>Voici un exemple pour une macro qui se nomme \u201clow_rssi\u201d :<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">wlan_radio.signal_dbm &lt;= $1 &amp;&amp; wlan_radio.channel == $2 &amp;&amp; wlan.ssid==$3<\/pre>\n\n\n\n<p>Pour l&rsquo;utiliser, je vais simplement l\u2019appeler dans la barre des filtres d\u2019affichages en rempla\u00e7ant $1 par la valeur souhait\u00e9e, $2 par la valeur souhait\u00e9e, et $3 par la valeur souhait\u00e9e. Ce qui donne par exemple :<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">${low_rssi:-77;36;SSID1}<\/pre>\n\n\n\n<p>Il est pr\u00e9f\u00e9rable de r\u00e9aliser ses propres macros afin de faciliter leurs utilisations et \u00eatre s\u00fbr que cela correspond \u00e0 vos besoins et votre fa\u00e7on de r\u00e9diger les filtres, sinon vous allez passer plus de temps \u00e0 retrouver l\u2019ordre des param\u00e8tres et le type de valeur attendue qu\u2019\u00e0 les r\u00e9diger.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><\/h3>\n\n\n\n<h3 class=\"wp-block-heading\">Les boutons<\/h3>\n\n\n\n<p>Lors des analyses, nous remarquons que nous utilisons tr\u00e8s r\u00e9guli\u00e8rement les m\u00eames filtres d\u2019affichages, afin d\u2019\u00e9viter de devoir les r\u00e9\u00e9crire \u00e0 chaque fois et y avoir acc\u00e8s plus rapidement, nous avons la possibilit\u00e9 de cr\u00e9er des boutons qui vont directement appliquer le filtre choisi. Pour cr\u00e9er un bouton, il faut aller dans le menu \u201cEdit\u201d, puis \u201cPreferences\u201d, puis \u201cFilter Buttons\u201d, voici un exemple de bouton :<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/static.wixstatic.com\/media\/68bc5d_458bd9b43bd84845b92aba187a0e6438~mv2.png\/v1\/fit\/w_300,h_300,al_c,q_5,enc_auto\/file.png\" alt=\"\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">3.3 Les graphiques<\/h2>\n\n\n\n<p>Dans certains cas, la visualisation des paquets n\u2019est pas suffisante pour analyser les paquets et il peut \u00eatre int\u00e9ressant d\u2019utiliser des graphiques pour mettre en \u00e9vidence certaines informations. Le nombre de fonctionnalit\u00e9s disponible avec les graphiques est tr\u00e8s important, je vais ici vous faire une rapide pr\u00e9sentation ainsi que quelques cas d\u2019usages, mais je vous invite \u00e0 creuser cette fonctionnalit\u00e9 qui est tr\u00e8s utile pour analyser les diff\u00e9rents \u00e9changes.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Graphique I\/O<\/h3>\n\n\n\n<p>Les graphiques I\/O sont une vision en deux dimensions dans lequel nous pourrons choisir les informations en abscisses et en ordonn\u00e9es. Pour y acc\u00e9der il faut aller dans le menu Statistics puis \u201cI\/O Graphs\u201d<\/p>\n\n\n\n<p>Par d\u00e9faut, deux graphiques sont d\u00e9j\u00e0 pr\u00e9sents :<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/static.wixstatic.com\/media\/68bc5d_f56941fff89947d9a5f3c10fd68656b5~mv2.png\/v1\/fit\/w_300,h_300,al_c,q_5,enc_auto\/file.png\" alt=\"\"\/><\/figure>\n\n\n\n<p>Voici un descriptif de chaque colonne et des diff\u00e9rentes possibilit\u00e9s qu\u2019elles offrent :<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Enabled : Permet d\u2019afficher ou non une ligne, si elle est coch\u00e9 la ligne s\u2019affichera<\/li><li>Graph Name : C\u2019est le nom du graphique<\/li><li>Display Filter : Filtre d\u2019affichage qui permet de choisir les paquets que nous souhaitons utiliser pour le graphique<\/li><li>Color : C\u2019est la couleur utilis\u00e9 pour le graphique<\/li><li>Style : C\u2019est la fa\u00e7on dont le graphique est affich\u00e9, il y a 3 grandes cat\u00e9gories :<\/li><li>Line : Il s\u2019agit d\u2019une courbe qui relie tous les points en un seul trait (exemple ci-dessus)<\/li><li>Impulse \/ Bar et Stacked Bar : Chaque point est indiqu\u00e9 \u00e0 l\u2019aide d\u2019une barre partant de l\u2019axe des abscisses jusqu\u2019\u00e0 la valeur.<\/li><li>Dot\/Square\/Diamond\/Cross\/Circle\/Plus : Chaque valeur est indiqu\u00e9e par un point (suivant la forme choisie)<\/li><li>Y Axis : C\u2019est l\u2019unit\u00e9 choisie pour repr\u00e9senter l\u2019axe des ordonn\u00e9es (en tenant compte de l\u2019intervalle indiqu\u00e9 en dessous<\/li><li>Packets : Nombre de paquets correspondant au filtre d\u2019affichage dans l\u2019intervalle<\/li><li>Bytes \/ Bits : Nombre d\u2019octets ou de bits transmis dans les paquets au cours de l\u2019intervalle<\/li><li>SUM (Y Field) : Somme des valeurs contenue dans le champ \u201cY Field\u201d (indiqu\u00e9 dans la section suivante)<\/li><li>MAX (Y Field) \/ MIN (Y Field) : Valeur maximale\/minimale du champ \u201cY Field\u201d<\/li><li>AVG (Y Field) : Valeur moyenne du champ \u201cY Field\u201d<\/li><li>LOAD (Y Field) : Somme des champs \u201cY Field\u201d divis\u00e9 par l\u2019intervalle<\/li><li>COUNT FRAME (Y Field) : Nombre de paquets contenant le champ \u201cY Field\u201d<\/li><li>COUNT FIELD ( Y Field) : Nombre d\u2019occurence du champ \u201cY Field\u201d<\/li><\/ul>\n\n\n\n<ul class=\"wp-block-list\"><li>Y Field : Nom d\u2019un champ permettant un affichage de valeur particuli\u00e8re dans la partie Y Axis<\/li><li>SMA Period : Permet d\u2019afficher une moyenne des valeurs pendant un intervalle<\/li><\/ul>\n\n\n\n<p>Voici quelques exemples de graphiques :<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/static.wixstatic.com\/media\/68bc5d_93291ad667d84a3bb104f09fb81c6c13~mv2.png\/v1\/fit\/w_300,h_300,al_c,q_5,enc_auto\/file.png\" alt=\"\"\/><figcaption>Le graphique ici nous indique ici la valeur maximale et moyenne du data rate sur l\u2019ensemble des paquets captur\u00e9s.<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/static.wixstatic.com\/media\/68bc5d_2446b560b8db4302a95dd7e5b88ceb48~mv2.png\/v1\/fit\/w_300,h_300,al_c,q_5,enc_auto\/file.png\" alt=\"\"\/><figcaption>Le graphique nous indique ici le nombre total de paquets transmis (courbe) et le nombre de paquets retransmis (barres)<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/static.wixstatic.com\/media\/68bc5d_a7af2f9580b74922bcd924dc293ac61a~mv2.png\/v1\/fit\/w_300,h_300,al_c,q_5,enc_auto\/file.png\" alt=\"\"\/><figcaption>Ce graphique nous montre le taux d\u2019utilisation du canal.<\/figcaption><\/figure>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Une fois les trames captur\u00e9es puis mises en forme, nous pouvons passer \u00e0 l\u2019analyse. Cette \u00e9tape peut s\u2019av\u00e9rer tr\u00e8s fastidieuse, surtout lorsque l\u2019on ne sait pas encore ce que l\u2019on cherche. Pour cela Wireshark met \u00e0 notre disposition plusieurs outils qui vont permettre de mieux cibler les recherches, cependant il est essentiel de disposer d\u2019un [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8],"tags":[38,36,14,40],"class_list":["post-47","post","type-post","status-publish","format-standard","hentry","category-non-classe-fr","tag-analyse","tag-cwap","tag-troubleshooting","tag-wireshark"],"_links":{"self":[{"href":"https:\/\/wifiromeo.fr\/index.php?rest_route=\/wp\/v2\/posts\/47","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wifiromeo.fr\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wifiromeo.fr\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wifiromeo.fr\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/wifiromeo.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=47"}],"version-history":[{"count":1,"href":"https:\/\/wifiromeo.fr\/index.php?rest_route=\/wp\/v2\/posts\/47\/revisions"}],"predecessor-version":[{"id":48,"href":"https:\/\/wifiromeo.fr\/index.php?rest_route=\/wp\/v2\/posts\/47\/revisions\/48"}],"wp:attachment":[{"href":"https:\/\/wifiromeo.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=47"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wifiromeo.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=47"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wifiromeo.fr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=47"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}