{"componentChunkName":"component---src-templates-post-template-js","path":"/wireshark-decrypt-rdppacket-en","result":{"data":{"markdownRemark":{"id":"fb630a4f-1992-59c3-8fb4-cd13966ffad1","html":"<blockquote>\n<p>This page has been machine-translated from the <a href=\"/wireshark-decrypt-rdppacket\">original page</a>.</p>\n</blockquote>\n<p>This article explains how to capture and decrypt RDP packets with WireShark.</p>\n<p>If you just want to view RDP packet contents with WireShark, the easiest way is to use the pcap and pem files distributed on the official site below.</p>\n<p>Reference: <a href=\"https://gitlab.com/wireshark/wireshark/-/wikis/home\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Wiki · Wireshark Foundation</a></p>\n<p>This article will proceed while referencing the steps in <a href=\"https://unit42.paloaltonetworks.jp/wireshark-tutorial-decrypting-rdp-traffic/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Wiresharkによるパケット解析講座 11: RDPトラフィックの復号</a>.</p>\n<p>There were some situations where following that article’s steps exactly didn’t work well, so I’ll cover those aspects as well.</p>\n<!-- omit in toc -->\n<h2 id=\"table-of-contents\" style=\"position:relative;\"><a href=\"#table-of-contents\" aria-label=\"table of contents permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Table of Contents</h2>\n<ul>\n<li><a href=\"#environment\">Environment</a></li>\n<li><a href=\"#removing-forward-secrecy-ciphers-from-the-rdp-client\">Removing Forward Secrecy Ciphers from the RDP Client</a></li>\n<li><a href=\"#exporting-the-rdp-servers-private-key\">Exporting the RDP Server’s Private Key</a></li>\n<li><a href=\"#capturing-rdp-packets\">Capturing RDP Packets</a></li>\n<li><a href=\"#decrypting-packet-capture-with-the-private-key\">Decrypting Packet Capture with the Private Key</a></li>\n<li><a href=\"#summary\">Summary</a></li>\n</ul>\n<h2 id=\"environment\" style=\"position:relative;\"><a href=\"#environment\" aria-label=\"environment permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Environment</h2>\n<p>I set up the following environment for this project:</p>\n<ul>\n<li>RDP Client Host: Windows 10 1511</li>\n<li>RDP Server Host: Windows 10 1511</li>\n</ul>\n<p> The RDP server host has remote desktop connection enabled.</p>\n<p> Both are connected via VirtualBox internal network.</p>\n<p>The applications used are as follows:</p>\n<ul>\n<li>WireShark 3.4.8: Used for packet capture acquisition and pcap file display</li>\n<li>jailbreak: Used to obtain the RDP server’s certificate</li>\n<li>OpenSSL v1.1.1L Light: Used to extract the private key from the certificate</li>\n</ul>\n<h2 id=\"removing-forward-secrecy-ciphers-from-the-rdp-client\" style=\"position:relative;\"><a href=\"#removing-forward-secrecy-ciphers-from-the-rdp-client\" aria-label=\"removing forward secrecy ciphers from the rdp client permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Removing Forward Secrecy Ciphers from the RDP Client</h2>\n<p>First, open the Group Policy Editor (<code class=\"language-text\">gpedit.msc</code>) on the client side and remove Forward Secrecy ciphers.</p>\n<p>Forward Secrecy is not an encryption method using the server’s private and public keys, but rather an encryption technique using data created from secret keys held by both the client and server.</p>\n<p>Using Forward Secrecy has the advantage that even if one party’s secret key is leaked, the data cannot be decrypted and security is maintained.</p>\n<p>By default, Windows RDP communication uses encryption with Forward Secrecy, so packets cannot be decrypted from WireShark using a single private key.</p>\n<p>Therefore, it’s necessary to first remove Forward Secrecy ciphers on the client side.</p>\n<p>As shown in the image below, open the SSL cipher order setting from the SSL configuration settings and set it to [Enabled].</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 500px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/37a30b2bf43e315d96e62045e795bcc0/0b533/image-24.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 90.41666666666666%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAASCAYAAABb0P4QAAAACXBIWXMAARlAAAEZQAGA43XUAAACi0lEQVQ4y5VU2W7bMBDU/39W4D72JUcbS5asWyJ1y7qsWJ7urkMnKQoUWWCw1MYc7g6HscI4gSo0MlWgbjpM84JhnDBOjJnWs3zfQbVbfbrn03tdFRWsg+vCO3ooyhqOH2H38zeevRy/jgqHUCHIKkSqEcS6hZ+WcCOFWLXwYv1e75CWvdStpojgew66roNONZIgAce8rPD9EG3b4u3tDefzWfIwDFLbtqusTZ2jH0ZYp65GpQOchglxHKMsy9smOoC/tdIYxxGn04nQC1mWZVBKSW6aRrBtG3EQ4Tj0qJRPRJWQJUmCKIoQhiFeX1+R5zltaIWQu+HDioL0rmvJfBivt+1yI5znCV0VIQgCeJ5HcGUdBCEiIq2rEoVWaGgTd8eE67oKOWNZFmmEOxwMYZkfkaapEPm+L930NLKicVNdIs5I/FQhIkdwx1prGflzvpqRl2VGHttwnAMmsgoLfL2S4EQaEtHO7fDgtHhwezgREQc+qqqWMVk7rQsZ/YOQOmyKQHRbljNM8Cg8xudoGrKW40iXPCajqqqvhOsyoa8TeK4n+piY51m04mCLcLC1bNuW2+XL6Pte8u2WL6ZDskSTiEVGcvxnQuMvlsB0vVKNOzfgv4kvL++E09BCZT4VO9nwP0L6wt/BnV+IkJ+hVeRkEf8oV24uhINHMX67g/SKc429n8APY5oqwvF4lOm423U900vpOyJaCRfxlQkmZ/uwrgbjSC+oP6FoepmIrWW8ycH7LaMbn2AITZffDSHkLjhYA9aIybbr9kX4f4F/Z2DsJYTn83o/4W/ffTfYZtZu9wMvLy/kLwePT494en6Cc7BhOzb29v4De645lPdw6X9oluXiRwN+MZz/ABwPYYpTHK1UAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/37a30b2bf43e315d96e62045e795bcc0/8ac56/image-24.webp 240w,\n/static/37a30b2bf43e315d96e62045e795bcc0/d3be9/image-24.webp 480w,\n/static/37a30b2bf43e315d96e62045e795bcc0/b0a15/image-24.webp 500w\"\n              sizes=\"(max-width: 500px) 100vw, 500px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/37a30b2bf43e315d96e62045e795bcc0/8ff5a/image-24.png 240w,\n/static/37a30b2bf43e315d96e62045e795bcc0/e85cb/image-24.png 480w,\n/static/37a30b2bf43e315d96e62045e795bcc0/0b533/image-24.png 500w\"\n            sizes=\"(max-width: 500px) 100vw, 500px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/37a30b2bf43e315d96e62045e795bcc0/0b533/image-24.png\"\n            alt=\"image-24.png\"\n            title=\"image-24.png\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>When enabled, a list of SSL ciphers will be stored in the [Options] field.</p>\n<p>When I enabled it in my environment (Windows 10 Pro 20H2), the following cipher suites were defined by default:</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">TLS_AES_256_GCM_SHA384、TLS_AES_128_GCM_SHA256、TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384、TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256、TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384、TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256、TLS_DHE_RSA_WITH_AES_256_GCM_SHA384、TLS_DHE_RSA_WITH_AES_128_GCM_SHA256、TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384、TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256、TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384、TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256、TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA、TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA、TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA、TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA、TLS_RSA_WITH_AES_256_GCM_SHA384、TLS_RSA_WITH_AES_128_GCM_SHA256、TLS_RSA_WITH_AES_256_CBC_SHA256、TLS_RSA_WITH_AES_128_CBC_SHA256、TLS_RSA_WITH_AES_256_CBC_SHA、TLS_RSA_WITH_AES_128_CBC_SHA、TLS_RSA_WITH_3DES_EDE_CBC_SHA、TLS_RSA_WITH_NULL_SHA256、TLS_RSA_WITH_NULL_SHA、TLS_PSK_WITH_AES_256_GCM_SHA384、TLS_PSK_WITH_AES_128_GCM_SHA256、TLS_PSK_WITH_AES_256_CBC_SHA384TLS_PSK_WITH_AES_128_CBC_SHA256、TLS_PSK_WITH_NULL_SHA384、TLS_PSK_WITH_NULL_SHA256</code></pre></div>\n<p>In this step, manually delete some of the default cipher suites.</p>\n<p>What’s being removed here are cipher suites related to DHE (Diffie-Hellman key exchange) and ECDHE (Elliptic Curve Diffie-Hellman key exchange), which are currently practical Forward Secrecy encryption methods.</p>\n<p>After deletion, the settings will look like this:</p>\n<p>I’ll simplify it to just <code class=\"language-text\">TLS_RSA_WITH_AES_128_CBC_SHA256</code>.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">TLS_RSA_WITH_AES_128_CBC_SHA256</code></pre></div>\n<p>Copy and paste this setting value into the [SSL Cipher Suites] form and press the OK button to complete the configuration.</p>\n<p>Just to be safe, execute the following command in the command prompt to apply the Group Policy settings:</p>\n<div class=\"gatsby-highlight\" data-language=\"powershell\"><pre class=\"language-powershell\"><code class=\"language-powershell\">gpupdate <span class=\"token operator\">/</span>force</code></pre></div>\n<p>This completes the disabling of Forward Secrecy.</p>\n<p><strong>※ As mentioned later, this step alone is insufficient, and in my environment the cipher suite wasn’t changed until I restarted the OS.</strong></p>\n<h2 id=\"exporting-the-rdp-servers-private-key\" style=\"position:relative;\"><a href=\"#exporting-the-rdp-servers-private-key\" aria-label=\"exporting the rdp servers private key permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Exporting the RDP Server’s Private Key</h2>\n<p>Next, export the certificate from the RDP server side.</p>\n<p>Tools like Mimikatz can also be used for export, but I used <a href=\"https://github.com/iSECPartners/jailbreak\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Jailbreak</a>, which was used in the reference article.</p>\n<p>To retrieve using Mimikatz, refer to the following procedure:</p>\n<p>Reference: <a href=\"https://github.com/ypid/FreeRDP-wiki/blob/master/Mimikatz.md\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">FreeRDP-wiki/Mimikatz.md at master · ypid/FreeRDP-wiki</a></p>\n<p>Download the ZIP file from the <a href=\"https://github.com/iSECPartners/jailbreak\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Jailbreak repository</a> and execute <code class=\"language-text\">jailbreak64.exe</code> stored in the <code class=\"language-text\">binaries</code> folder from a command prompt running with administrator privileges.</p>\n<div class=\"gatsby-highlight\" data-language=\"powershell\"><pre class=\"language-powershell\"><code class=\"language-powershell\">jailbreak64<span class=\"token punctuation\">.</span>exe <span class=\"token operator\">%</span>WINDIR%\\system32\\mmc<span class=\"token punctuation\">.</span>exe <span class=\"token operator\">%</span>WINDIR%\\system32\\certlm<span class=\"token punctuation\">.</span>msc <span class=\"token operator\">-</span>64</code></pre></div>\n<p>When execution completes, the certificate store screen launches, and you can confirm that an RDP certificate has been created in [Remote Desktop]>[Certificates], so export it.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 500px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/43a3f62ccd6055e618e092ede2029af8/0b533/image-25.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 47.08333333333333%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAJCAYAAAAywQxIAAAACXBIWXMAARlAAAEZQAGA43XUAAAB30lEQVQoz3WSS08TYRSGv4U/woVxx8qYuHdr1Ogf0I0Lty6M0XipCQmNF7SWQi1FEUgQF26MC1ea6MYo0QQIRBEqIKVqOzO9zUznwtwev05bNtiTPJkzJ2/e9/vOjDh6/AwHBk4iDp5AHDqFOHwWMXBOch5x5CLi2GXE6VGKqkHk2YSBR79aUlxEYijFYHqaa8PT3EzPcSP9guuZlyRyr7ide00i/4ar+bcUlSZWy6TRaGKaJrpu0LIs/CDA9XyIQrZqFmL1xzqOa+NZJrapy3mwL7nZ1KnUpIFhUC5XpJkemxry3bZtDNmH3i4FRUcsLsxT3P4lhQoVrYaiajLZplZvxL3ruhR2KpTrLSzToFQqoapqbNqrqPtcqzqIlaV51tdWURSVMAz/u5u/VXnCuhn3juPgtpFBURTFBGHH8mOxhfi+8pXSznZs6Pv+nqhNL+CPUqOsNfYF9XR+0NG9X9xAfFv+wuZGAVWr4nnenjBsJ3eFv8tabNqu9iwIO4RdgqCz93eflxFbmz9xbLkf+cWiPlfWanXqTaPv77LbDf7waQExeCdNJveMR9nJmIejEzzIPGEkN0UmP0P26SzJVJ7E/XGGx59z9/Fsh7EZ7o1NkRyZ5Eoyy1BqgguXbvEP6jB7Gs4cHbUAAAAASUVORK5CYII='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/43a3f62ccd6055e618e092ede2029af8/8ac56/image-25.webp 240w,\n/static/43a3f62ccd6055e618e092ede2029af8/d3be9/image-25.webp 480w,\n/static/43a3f62ccd6055e618e092ede2029af8/b0a15/image-25.webp 500w\"\n              sizes=\"(max-width: 500px) 100vw, 500px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/43a3f62ccd6055e618e092ede2029af8/8ff5a/image-25.png 240w,\n/static/43a3f62ccd6055e618e092ede2029af8/e85cb/image-25.png 480w,\n/static/43a3f62ccd6055e618e092ede2029af8/0b533/image-25.png 500w\"\n            sizes=\"(max-width: 500px) 100vw, 500px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/43a3f62ccd6055e618e092ede2029af8/0b533/image-25.png\"\n            alt=\"image-25.png\"\n            title=\"image-25.png\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>Export looks like this:</p>\n<p>You’ll also be asked to enter a password, but any password is OK. (I used “test” this time)</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 625px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/f9c6cbe7f20906325e8509187ca90c2c/80d71/image-27.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 93.75%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAATCAYAAACQjC21AAAACXBIWXMAAAsTAAALEwEAmpwYAAACM0lEQVQ4y5VUWW/aQBj0//8nldqXvkSV2ko9qZqXJEBKYlIOAwbj28a3Pd1ZvMGJANGVRnv429n5Lmu9/hTjZYj78Qxz00aSV4izAnFaIErzixELmFsPmmW7KPII5moFz3UQBoFEkef43xHGCTSycuRFgaqq5Lqu66MXmqY5irpu5Hfb9aFtHB91VcKytthsNpjOZkiSRCJNU6mUc1mWJ5UpIT96v6AFUbJnt22YpontdiuxXC7lA4Hvy30URWha9a+hHrvtD6DlZSVk1/IVBRrQULmkwtC16aJoCfWnv9CyfL9xHEcqpDLOrusiF+7uY1SfTYb6/qCPBWFRPgeccQvDULgXShe5DkTGsyw7ScZ7VUt4P3ok4T6gdGy328HzPEnii9hxJqiUYSjLQiaIYFV0w8Hx56FDqLJFVxWRLcIQBD48Qd5VzIdJqogOhPqBkIe+UMdsOwKcLcsSGbblIwSz/dr9boxfEHLwwtN4jMVigZmoR13XMZlMMJ8bWIqz6XQq1XaL/KRC2S0iVlRFdaxBrg3DwEq05WJhYL1eI2tb8iJCZpmXDGMuS4ekG7FXbiuCLtlZwjiOpatUxCxTIdckOxQ6XhAfITzUIV1WPUxyZpVlxDNmWbXY80+hnVUvy7LJO3V4yWjOnI0eRackaSb/NlV5DEWLwxltWdRrbwfTjeDFKSLhSVXk6A+G0K5vhrgdjnAzuAy0vb4b4d2n33hz9Q0fenf4+OU7Pn/9ibfvr/APtum5Z88Rke8AAAAASUVORK5CYII='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/f9c6cbe7f20906325e8509187ca90c2c/8ac56/image-27.webp 240w,\n/static/f9c6cbe7f20906325e8509187ca90c2c/d3be9/image-27.webp 480w,\n/static/f9c6cbe7f20906325e8509187ca90c2c/487e2/image-27.webp 625w\"\n              sizes=\"(max-width: 625px) 100vw, 625px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/f9c6cbe7f20906325e8509187ca90c2c/8ff5a/image-27.png 240w,\n/static/f9c6cbe7f20906325e8509187ca90c2c/e85cb/image-27.png 480w,\n/static/f9c6cbe7f20906325e8509187ca90c2c/80d71/image-27.png 625w\"\n            sizes=\"(max-width: 625px) 100vw, 625px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/f9c6cbe7f20906325e8509187ca90c2c/80d71/image-27.png\"\n            alt=\"image-27.png\"\n            title=\"image-27.png\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>Next, extract the private key from the obtained certificate.</p>\n<p>To install OpenSSL in a Windows environment, you can download the installer from the following link:</p>\n<p>Reference: <a href=\"https://slproweb.com/products/Win32OpenSSL.html\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Win32/Win64 OpenSSL Installer for Windows - Shining Light Productions</a></p>\n<p>The private key can be obtained with the following commands:</p>\n<div class=\"gatsby-highlight\" data-language=\"powershell\"><pre class=\"language-powershell\"><code class=\"language-powershell\">openssl pkcs12 <span class=\"token operator\">-in</span> rdp_key<span class=\"token punctuation\">.</span>pfx <span class=\"token operator\">-</span>nocerts <span class=\"token operator\">-</span>nodes <span class=\"token operator\">-</span>password pass:test <span class=\"token operator\">-</span>out rdp_key<span class=\"token punctuation\">.</span>pem\nopenssl rsa <span class=\"token operator\">-in</span> rdp_key<span class=\"token punctuation\">.</span>pem <span class=\"token operator\">-</span>out rdp_key<span class=\"token punctuation\">.</span>key</code></pre></div>\n<p>In my environment, OpenSSL version 3.0.0 series failed to retrieve the private key, so I used v1.1.1.</p>\n<h2 id=\"capturing-rdp-packets\" style=\"position:relative;\"><a href=\"#capturing-rdp-packets\" aria-label=\"capturing rdp packets permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Capturing RDP Packets</h2>\n<p>I started WireShark on the RDP client machine and began packet capture.</p>\n<p>I connected from the RDP client side to the server side via RDP connection and captured packets up to the point of launching the Paint application and writing text.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 500px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/21c48037191f2c88e4a5ff6931034e29/0b533/image-51.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 61.66666666666666%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAMCAYAAABiDJ37AAAACXBIWXMAARlAAAEZQAGA43XUAAACu0lEQVQoz12SyU8UQRSH525iRDgpihgPIiHAwat/gSf/AmOMgNGQwMUYl0ggYPTmyUSJSpSIiGwHgyZICMLItMAMyzBLM/swPdPDLMy+fFY3i2glr191vaqvfu+9MijqDr6ggnHDh+wL4fe7UcJh4skUu+kMu6k0SWHZXJ5MriDmGZLC76aLpEU8Jczm8jM5J2GyOjGkkgkSqSyTkh9vKEYsntQ3hcMqgVCIWHLvXzJvIK2s4dpyEZydxheaYcbiZtsTwOzwcexaB013ezFIkkRHZydOp8xOPEFQUVEjKtatIHZ3kLDIYGcnhrTqwLQmEwgE8VqW8QWWsDjdyE4XcRFvan3CxdZuDJMT4xw/UYHVJqONdCZLJpsnVyiRF6bNtXRLJSgKy4tPvgxWWWVZlGnFFsS85qDx1iMu3e7BMDE6SvWZGmSXh6OjVCwKSPHfNUFNpXbJZjKYbX5mJZn5FQ+m5U0dWKcBB4eGOHW6mnWrDUWrWSxGIpEgKWoXjUbJiMPpdFoH5nI54vG4vrYhi0ZaPEgbAZYtdhpuPqSuTVM4MkBlVRWbdifFQgFVjeL1evXDGigSiaAoiq6uXC7rYM1bt8KY1gXMFsK8audyWxcNd0RTxoYHOFtTg8cfPNx8cFAbBXHJXxD7voTNrbK0GRKNibC67uBKey/N7U814DvO1dbi9W/rm4ta9f8DH8wPTFPr9EWxOBTWXVFRLpn6Gw9EyqLL4yODVJysxOX2HhZeIPblHCjdhx+5wB0QoK0Im54YNoeH5pbH1GtN+f51jMamZpHynkLtWRRLZR0l3N6T2edqXosVhHm3Y9j9cZzbKWTxXs9fv8+FFqFwevoHU1PfmJs3Iv1ewrho0m3h16K+NjM7x7xxkZ8LRl58+ELf28/0vflEz+tBuvs/0tM/TNfL91y994yW56/4A6wTQR3ZBewPAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/21c48037191f2c88e4a5ff6931034e29/8ac56/image-51.webp 240w,\n/static/21c48037191f2c88e4a5ff6931034e29/d3be9/image-51.webp 480w,\n/static/21c48037191f2c88e4a5ff6931034e29/b0a15/image-51.webp 500w\"\n              sizes=\"(max-width: 500px) 100vw, 500px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/21c48037191f2c88e4a5ff6931034e29/8ff5a/image-51.png 240w,\n/static/21c48037191f2c88e4a5ff6931034e29/e85cb/image-51.png 480w,\n/static/21c48037191f2c88e4a5ff6931034e29/0b533/image-51.png 500w\"\n            sizes=\"(max-width: 500px) 100vw, 500px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/21c48037191f2c88e4a5ff6931034e29/0b533/image-51.png\"\n            alt=\"image-51.png\"\n            title=\"image-51.png\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>I tried to decrypt the captured packets here, but for some reason it didn’t work.</p>\n<p>I tried changing keys and various other things, but ultimately it didn’t work.</p>\n<p>No wonder, when I checked the Server Hello packet during RDP communication, it appeared to be using ECDHE as the cipher suite. (Forward Secrecy wasn’t disabled…)</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 960px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/98522888f446ae0b51d66d95884cf8d5/2bef9/image-52-1024x676.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 65.83333333333333%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAACXBIWXMAARlAAAEZQAGA43XUAAABq0lEQVQ4y5WT626jMBCFef9n689dVWq6MeZuQ4IN2IRLOJ0xatVIpcqOdBQyxJ/meE6ivFTQqkJVlWivVwxDD+cGjN7Dexf0/flIfMZag2gYhgDKshTGGFwuF8zzjIfaNjxT4zgics7DWIt/IsH7OYZMc6i6QalqFJVGpZsg0zvMd2Betx+10Dvnb4g8AZvW4s9J4u8pxlucIy7qoKS8INMGynjU3Q32tqGbSLdHcb8nU/pq2bIny3QwTZAmCRTdp2lbrOuC/y1LTiNrLEpd4/VdoGkaAmooreHpPsZpwbysBF+xLAtpPdCC9X7H4ByiRJxxIpsvrzGKPENRlkho0jzPyUKPbqAt0g9/hy64E7Dve0RnEQe7iaSFSBlAQgikaUZbb1EWBa6Ugmeq6zpEUibhUJqmAVbwM01YVVX4zn2O056e7VBc3o8MlGRRQpzFl1XuMYgz2nU25OsZYMghQ/ap9gmVUgHGPd6aJeBn0LeDgD8AsyxDSYvI82IHVipY5h5b5SmnaToEfu+NIwWbJ+JJ+LAxn5+7rO3CRfM/yR6op/eZaiALDU1x+wBA4eeBST4vvgAAAABJRU5ErkJggg=='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/98522888f446ae0b51d66d95884cf8d5/8ac56/image-52-1024x676.webp 240w,\n/static/98522888f446ae0b51d66d95884cf8d5/d3be9/image-52-1024x676.webp 480w,\n/static/98522888f446ae0b51d66d95884cf8d5/e46b2/image-52-1024x676.webp 960w,\n/static/98522888f446ae0b51d66d95884cf8d5/a9a89/image-52-1024x676.webp 1024w\"\n              sizes=\"(max-width: 960px) 100vw, 960px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/98522888f446ae0b51d66d95884cf8d5/8ff5a/image-52-1024x676.png 240w,\n/static/98522888f446ae0b51d66d95884cf8d5/e85cb/image-52-1024x676.png 480w,\n/static/98522888f446ae0b51d66d95884cf8d5/d9199/image-52-1024x676.png 960w,\n/static/98522888f446ae0b51d66d95884cf8d5/2bef9/image-52-1024x676.png 1024w\"\n            sizes=\"(max-width: 960px) 100vw, 960px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/98522888f446ae0b51d66d95884cf8d5/d9199/image-52-1024x676.png\"\n            alt=\"image-52-1024x676.png\"\n            title=\"image-52-1024x676.png\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>Apparently <code class=\"language-text\">gpupdate /force</code> alone was insufficient, so I restarted the OS.</p>\n<p>After that, I captured packets again and successfully obtained RDP communication packets using the <code class=\"language-text\">TLS_RSA_WITH_AES_128_CBC_SHA256</code> cipher suite.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 806px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/56e61e00a8bf3971077c9b384915679c/764be/image-53.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 90.41666666666666%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAASCAYAAABb0P4QAAAACXBIWXMAAAsTAAALEwEAmpwYAAACy0lEQVQ4y5VUy3LTQBDMz3KAoqDgJzjzJan4D8iRShFCEmzJsqznSlpJ1tOyLDluZsaOScgluKprdmVt70xPj87MoITWGXSWIy9KrIoKXT9gsx3REzbbAd1m+2qcFXWLbd/Dtm24roskSVAUBfI8R5qmaJoGu3HE+EoQ4Rr801rDXi6FpKoqIVytVui6Df7n94zQdT0opaBCBYfIM5Kh6zo0dSOXMMqyRF3XKFaFrJu2lfP7/V5wIsyyDJ7nIfB9zOdzLBYLRFFMiOQS3/Ph03+853c5AZ1oiXzpI6loKIRU6pKyCsMQLhFzVCqisg+ZMFiOmrJ9qtkwDBJPGZbNgZ01Y0JuCkdNh8uqlKYw+OCrNNQ5HSJNuMNcpnOMpnkoOwgCKZk7/1fHYzxqynsGl35mLT0YhiEEpmnBJP2mM9rPLcrUwcyY0/8mRVMuS0izOE7g00W85sq4eRlFluPMDRQJrajEDLEKEAUuNO2zJEKuY4Qe7ZUPHSvUlBH2O5YfY99i//DwsmTbZRIPeRLi6reLayPAjRUJbu0E3+8dXJshfloJUpInWTW4c3PMwgrNZhTyh2NDpClzy8LV1MXXyxafJzU+Tlp8uGgpbvD+osOnCa/XeHfe4nKxxZdvI96c93g72eGH2ktWzwgdMvOvuY+L6xy3hkOw8dvyMV34MB2Fm6mNGa0NO4ATl7DyPcr1AC8pse6Hk/9OJTs+6ReFqLKIzOuKjqlOSDMycJrAc52DtioUN2DXY93WqIoc4zA8mxLJcOmFCKljPjXHpq56YmolduFu8jOekCAIxdgpNY+nhd3AXX1BaHsBAsqMvbagL45H1uDDB5JAxtDzDs/Y9Hd39/KuQdaqqvpll4NIU4la5jOmA5rK5UxkVilylrLWqZg7jmPZxzTnBZl6vV6jpQ/EI2hSeAIOs1odZ/YpqtM0EI7TIms6wxf8iz+oEUn7E7QLqQAAAABJRU5ErkJggg=='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/56e61e00a8bf3971077c9b384915679c/8ac56/image-53.webp 240w,\n/static/56e61e00a8bf3971077c9b384915679c/d3be9/image-53.webp 480w,\n/static/56e61e00a8bf3971077c9b384915679c/e94a4/image-53.webp 806w\"\n              sizes=\"(max-width: 806px) 100vw, 806px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/56e61e00a8bf3971077c9b384915679c/8ff5a/image-53.png 240w,\n/static/56e61e00a8bf3971077c9b384915679c/e85cb/image-53.png 480w,\n/static/56e61e00a8bf3971077c9b384915679c/764be/image-53.png 806w\"\n            sizes=\"(max-width: 806px) 100vw, 806px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/56e61e00a8bf3971077c9b384915679c/764be/image-53.png\"\n            alt=\"image-53.png\"\n            title=\"image-53.png\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<h2 id=\"decrypting-packet-capture-with-the-private-key\" style=\"position:relative;\"><a href=\"#decrypting-packet-capture-with-the-private-key\" aria-label=\"decrypting packet capture with the private key permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Decrypting Packet Capture with the Private Key</h2>\n<p>Finally made it here.</p>\n<p>Finally, decrypt the captured packets.</p>\n<p>Open the captured pcap file in WireShark and open [Preferences] from the [Edit] tab in the toolbar.</p>\n<p>Next, select [TLS] from the protocol list in the left tree and open the settings.</p>\n<p>Finally, enter the following settings from the edit in [RSA keys list]:</p>\n<div class=\"gatsby-highlight\" data-language=\"powershell\"><pre class=\"language-powershell\"><code class=\"language-powershell\">IP address : <span class=\"token string\">\"RDP server's IP address\"</span>\nPort : <span class=\"token string\">\"RDP connection destination port (3389)\"</span>\nProtocol : <span class=\"token string\">\"tpkt\"</span>\nKey File : <span class=\"token string\">\"RSA key file extracted from certificate\"</span></code></pre></div>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 960px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/40cd4cdf31407c57b1719d35c42945d3/e4900/image-54.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 80.83333333333333%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAQCAYAAAAWGF8bAAAACXBIWXMAAAsTAAALEwEAmpwYAAACYklEQVQ4y42UCXPaQAyF/f9/WdppaCgYsCH4vs/1hW0Ir5IgNJ1pJ2HmDbv2+tNbrbRalCiURQXVNBj6HsMwYBxHnE4juuEk837oaX56aJ7nf+o8naE9HxYwQxdlqaCUQtd1aAjO45rU34N8pnmcYWUWtPU2QFHWKIpCXFZVhdVqBV3XRTz/TCVJqRq2G0GzrQl51hIwx2mc0LYtbNtGmqbkupRALB67rgvf98U9g+q6FlVVTWYqBJ6C5tgTirylFxXl4SwLNpsNDMPAbrfDdruVOYsDMfgG+eiSgIqAwTuw6Ohhicvbm+RP19fY7/fwPA9RFIlbVp7nD+BHMbRpaMt2/geYpgkpo3yWCMIISZIgjuO/ALxlluTtng7+fzj0FedwJJCS6I1qEKc5jk5I80zcvgP59Luul1OXCqBn/J53UFe1OHScgoDkMM9vhzJQ3TEoSHI4VJ92QovSBlZUwcuah/yiR9zMSLsLPD8QIDv0vfrmMKNFDGrJAW97miZ85fdGOWeH7JgdPg4lCHKJwCXDeRvHG/B6vf5X78DD64G+Dwjsw+Utu86Ml2WAlxcHplngefH6cPg58ALTCHB8VbCOioAnBp7x4znE03cXe3PA07ej9OWXtny9EKRBEgHxXQTssNYjrNYUiaIsfzlyoiO55IuALwp2fL5fANN0l4xHHA4RbKuFY9+kWbaF5XIJfaNLDy8WP6UGOS9cc0kSI81rrIwCOyOjDkqp6HORYcSkvazzPF/aUgvDUC4B7gzTNEimwPglKwh8qksPi80R+nZP7WhSO/K6A323lbV8mHzSrN+Q7bdKgEjsvgAAAABJRU5ErkJggg=='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/40cd4cdf31407c57b1719d35c42945d3/8ac56/image-54.webp 240w,\n/static/40cd4cdf31407c57b1719d35c42945d3/d3be9/image-54.webp 480w,\n/static/40cd4cdf31407c57b1719d35c42945d3/e46b2/image-54.webp 960w,\n/static/40cd4cdf31407c57b1719d35c42945d3/6257a/image-54.webp 988w\"\n              sizes=\"(max-width: 960px) 100vw, 960px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/40cd4cdf31407c57b1719d35c42945d3/8ff5a/image-54.png 240w,\n/static/40cd4cdf31407c57b1719d35c42945d3/e85cb/image-54.png 480w,\n/static/40cd4cdf31407c57b1719d35c42945d3/d9199/image-54.png 960w,\n/static/40cd4cdf31407c57b1719d35c42945d3/e4900/image-54.png 988w\"\n            sizes=\"(max-width: 960px) 100vw, 960px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/40cd4cdf31407c57b1719d35c42945d3/d9199/image-54.png\"\n            alt=\"image-54.png\"\n            title=\"image-54.png\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>When this setting is applied, RDP packets are decrypted and become filterable.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 960px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/becc0450d554fcca3509abafeac03bef/3dde1/image-55.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 64.16666666666666%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAACXBIWXMAAAsTAAALEwEAmpwYAAACFklEQVQ4y3WT6XbaQAyF/f6v1aZJMNhjvIDxvrM6LFkKtNzeGcdAzkl/6EjWSJ/uaI61MIsQZhMENCfykdT8Ln24aQQvCeEGDoI8QrNpUK0rLLcLtK8tNofNF1sf1so0t57BrAXspUvvQDQ2vM0U7trHUzKENSdwFylvLzwYlQV3NcG0ncF/CT4tVDXSND8BHgZLPBktLO8dPxkLej+64Mdzg4HYYhYDOr3jn/CgL/E4WqvYC//ApneDM28JRDQtiI/4pRd4HFZw/T3jEsJtESRH5kqClggZm/aaQz5U3cBsIJyuJquAnJaVQFpcoFXFGYZRwTBrROEBw1EJ39+iyE/Ml7DGC5SMVS47YsScEDVMs4LjrNjziiR+Q0yrq7/Q8vysYMKaIwgIJHw63SLPTmyuCFwiJ3AyfUGaHqFzoCkaNWhEqOu1cN0NvAnPk98EslGqEtaCwL1qmPCwz0tgwaFySEagzPUCDIJ9f4eQNwuptKouN+CIRb3Ce+DYXqHkWmROAeWVCZMqbV45ST4QRW+qN02pMMu6qbJAAXuF+Vdgr9CQD0Kgrna9w2IOzJvOmhod8LbD/fc7zOQOe2CNMffXPd4ec0JqXrU3LaVk43PJCsjCG7Df4alTKIeLO4WzvVLWw5TCOH5XRaa4KfT+s8OcQFlnXRXurkAJuwLl88upM07UhwWBrQLKWCq8B3bD+Qfx7DvgP2l8rX2/PckQAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/becc0450d554fcca3509abafeac03bef/8ac56/image-55.webp 240w,\n/static/becc0450d554fcca3509abafeac03bef/d3be9/image-55.webp 480w,\n/static/becc0450d554fcca3509abafeac03bef/e46b2/image-55.webp 960w,\n/static/becc0450d554fcca3509abafeac03bef/5304f/image-55.webp 1018w\"\n              sizes=\"(max-width: 960px) 100vw, 960px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/becc0450d554fcca3509abafeac03bef/8ff5a/image-55.png 240w,\n/static/becc0450d554fcca3509abafeac03bef/e85cb/image-55.png 480w,\n/static/becc0450d554fcca3509abafeac03bef/d9199/image-55.png 960w,\n/static/becc0450d554fcca3509abafeac03bef/3dde1/image-55.png 1018w\"\n            sizes=\"(max-width: 960px) 100vw, 960px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/becc0450d554fcca3509abafeac03bef/d9199/image-55.png\"\n            alt=\"image-55.png\"\n            title=\"image-55.png\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>Great work!!</p>\n<h2 id=\"summary\" style=\"position:relative;\"><a href=\"#summary\" aria-label=\"summary permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Summary</h2>\n<p>Basically, I followed the steps in <a href=\"https://unit42.paloaltonetworks.jp/wireshark-tutorial-decrypting-rdp-traffic/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Wiresharkによるパケット解析講座 11: RDPトラフィックの復号</a>, but some steps didn’t reproduce well exactly as written in the article, so I struggled a bit.</p>\n<p>As a result, I learned about WireShark and Windows cipher suites, so I think it was worthwhile to try it.</p>\n<p>If I feel like it, I’ll write an article about the details of the RDP protocol.</p>\n<p>However, I’m not really motivated to read this approximately 500-page reference, so it will really be when I feel like it.</p>\n<p>Reference: <a href=\"https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-rdpbcgr/5073f4ed-1e93-45e1-b039-6e30c385867c\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">[MS-RDPBCGR]: Remote Desktop Protocol: Basic Connectivity and Graphics Remoting | Microsoft Docs</a></p>","fields":{"slug":"/wireshark-decrypt-rdppacket-en","tagSlugs":["/tag/wire-shark-en/","/tag/windows-en/","/tag/network-en/","/tag/english/"]},"frontmatter":{"date":"2021-10-19","description":"This article explains how to capture and decrypt RDP packets with WireShark.","tags":["WireShark (en)","Windows (en)","Network (en)","English"],"title":"Removing Forward Secrecy to Decrypt RDP Packets with WireShark","socialImage":{"publicURL":"/static/dc4d8b7f8795f3c3d3489d9957d155f2/no-image.png"}}}},"pageContext":{"slug":"/wireshark-decrypt-rdppacket-en"}},"staticQueryHashes":["251939775","401334301","825871152"]}