<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Blog on Shea Polansky</title><link>https://polansky.co/blog/</link><description>Recent content in Blog on Shea Polansky</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Fri, 01 Jul 2022 00:00:00 +0000</lastBuildDate><atom:link href="https://polansky.co/blog/index.xml" rel="self" type="application/rss+xml"/><item><title>I Did Some Classic Router Hacking and Found Some Weird Stuff</title><link>https://polansky.co/blog/verizon-router-security-research/</link><pubDate>Fri, 01 Jul 2022 00:00:00 +0000</pubDate><guid>https://polansky.co/blog/verizon-router-security-research/</guid><description>&lt;p&gt;A &lt;a href="https://github.com/JousterL"&gt;friend of mine&lt;/a&gt; got a new router/modem for his Verizon 5G home internet, and he noticed the installation tech visiting a hidden UI that wasn&amp;rsquo;t available to him. Naturally, we both thought that was unacceptable and set about hacking the router so we could see what secrets it held. We discovered something interesting: the single box contained two separate Linux systems, running a Frankenstein combination of OpenWRT and Android and communicating across a hidden virtual Ethernet link. We also got some CVEs, including a backdoor password generation system and some good ol&amp;rsquo; unauthenticated command injection.&lt;/p&gt;</description></item><item><title>Hacking Keycloak to Support TouchID/FaceID Authentication</title><link>https://polansky.co/blog/hacking-keycloak-to-support-touchid-faceid-authentication/</link><pubDate>Tue, 12 Jan 2021 00:00:00 +0000</pubDate><guid>https://polansky.co/blog/hacking-keycloak-to-support-touchid-faceid-authentication/</guid><description>&lt;p&gt;&lt;a href="https://www.keycloak.org/"&gt;Keycloak&lt;/a&gt; is an open source identity broker that allows you to combine user credentials from different providers (such as Google OAuth, LDAP, GitLab, etc.) as well as locally-stored credentials into a single authentication provider that can integrate with downstream applications using either SAML2.0 or OpenID Connect. I use it in my home lab as a single sign on provider using local accounts (I gave a &lt;a href="https://polansky.co/files/talks/BSides_Orlando_2020-Perimeterless_Homelabbing.pdf"&gt;talk&lt;/a&gt; about my setup at &lt;a href="https://2020.bsidesorlando.org/#/agenda?day=2&amp;amp;lang=en&amp;amp;sessionId=17525000000045156"&gt;BSides Orlando 2020&lt;/a&gt;, check it out if you&amp;rsquo;re interested!).&lt;/p&gt;</description></item><item><title>My 2020 Reading List</title><link>https://polansky.co/blog/2020-reading-list/</link><pubDate>Fri, 27 Nov 2020 00:00:00 +0000</pubDate><guid>https://polansky.co/blog/2020-reading-list/</guid><description>&lt;p&gt;We&amp;rsquo;re getting to the end of the year and I thought I&amp;rsquo;d compile a list of books I read, referenced, perused, or reread this year, with my thoughts on them. Most of my reading for pleasure is fiction (specifically sci-fi or fantasy), but I do also read plenty of security-related or technical material. I&amp;rsquo;m going to split the list into fiction and nonfiction, and each section will be in no particular order.&lt;/p&gt;</description></item><item><title>eLearnSecurity Pen Test Professional (PTP) Review</title><link>https://polansky.co/blog/elearnsecurity-pen-test-professional-review/</link><pubDate>Tue, 30 Jun 2020 00:00:00 +0000</pubDate><guid>https://polansky.co/blog/elearnsecurity-pen-test-professional-review/</guid><description>&lt;p&gt;&lt;img src="https://polansky.co/blog/elearnsecurity-pen-test-professional-review/ecppt_v2_certificate.png" alt="eCPPTv2 Logo"&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Disclaimer: eLearnSecurity is a sponsor of the &lt;a href="https://iotvillage.org"&gt;IoT Village&lt;/a&gt;, an ISE-run organization. I received the course and exam for free due to this relationship. eLearnSecurity had an opportunity to review the contents of this article before it was published but it nonetheless represents my genuine opinion.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;This post first appeared on the &lt;a href="https://blog.securityevaluators.com/elearnsecurity-pen-test-professional-ptp-review-93929e0613e2"&gt;ISE Blog&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;I recently took the &lt;a href="https://www.elearnsecurity.com/course/penetration_testing/"&gt;eLearnSecurity Penetration Testing Professional&lt;/a&gt; (PTP) course and passed the associated &lt;a href="https://www.elearnsecurity.com/certification/ecpptv2/"&gt;eLearnSecurity Certified Professional Penetration Tester&lt;/a&gt; (eCPPTv2) exam. As a security professional I&amp;rsquo;m always on the lookout for new opportunities to improve my skillset and learn new techniques for attacking and defending networks, so I was excited to see what the course had to offer. I already have a few certifications including the &lt;a href="https://www.offensive-security.com/pwk-oscp/"&gt;Offensive Security Certified Professional&lt;/a&gt; (OSCP) and &lt;a href="https://www.offensive-security.com/awae-oswe/"&gt;Expert&lt;/a&gt; (OSCE), so I have a pretty good background in the topics covered in the course, which include:&lt;/p&gt;</description></item><item><title>Hardening OpenVPN in 2020: Extra Credit</title><link>https://polansky.co/blog/hardening-openvpn-in-2020-extra-credit/</link><pubDate>Fri, 26 Jun 2020 00:00:00 +0000</pubDate><guid>https://polansky.co/blog/hardening-openvpn-in-2020-extra-credit/</guid><description>&lt;p&gt;In my &lt;a href="https://polansky.co/blog/hardening-openvpn-in-2020/"&gt;previous article&lt;/a&gt;, I laid out a framework for building a modern, hardened OpenVPN server/client configuration. At the end, I noted there were some additional hardening steps that would be nice to take for extra security. In particular:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Using an additional static TLS key in the initial TLS handshake to prevent denial-of-service attacks.&lt;/li&gt;
&lt;li&gt;Storing keys in hardware cryptographic devices to prevent exfiltration.&lt;/li&gt;
&lt;li&gt;Using multi-factor authentication with time-based one time passwords (TOTP, AKA Google Authenticator)&lt;/li&gt;
&lt;li&gt;Closing the small security hole created because OpenVPN doesn&amp;rsquo;t by default check that client certificates match client usernames.&lt;/li&gt;
&lt;li&gt;Instructing OpenVPN to apply additional exploit mitigation measures to itself after initialization.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Like the previous article, this will be slightly complicated by the fact that many installations of OpenVPN don&amp;rsquo;t use the community edition server directly, but wrap it in some other interface or appliance. It will likely be impossible to apply the latter two hardening steps in that case, and may also be impossible to perform the first or third depending on what options are exposed. If you use a wrapper or appliance and the security benefits of these additional configuration steps seem like something you want and the appliance doesn&amp;rsquo;t offer the options to do so, check with the support team for the product and see if they&amp;rsquo;re applying them already or if they can expose the relevant options in their interface.&lt;/p&gt;</description></item><item><title>Hardening and Configuring OpenVPN in 2020</title><link>https://polansky.co/blog/hardening-openvpn-in-2020/</link><pubDate>Tue, 05 May 2020 00:00:00 +0000</pubDate><guid>https://polansky.co/blog/hardening-openvpn-in-2020/</guid><description>&lt;p&gt;&lt;em&gt;This post originally appeared on the &lt;a href="https://blog.securityevaluators.com/hardening-openvpn-in-2020-1672c3c4135a"&gt;ISE Blog&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Since everyone is working from home for the foreseeable future, corporate IT departments are scrambling to bolster existing VPN solutions or deploy new ones as fast as possible. One of the most popular VPN solutions is &lt;a href="https://community.openvpn.net/openvpn"&gt;OpenVPN&lt;/a&gt;, either used directly, or through appliances like the commercial &lt;a href="https://openvpn.net/vpn-software-packages/"&gt;OpenVPN Access Server &lt;/a&gt;or third-party VPN gateway products. Some third-party products are not quite upfront about being OpenVPN wrappers, so if you use an SSL VPN Gateway appliance, make sure to double-check the documentation to see if this guide applies to you.&lt;/p&gt;</description></item><item><title>OSCP &amp; OSCE in 2020: A Retrospective</title><link>https://polansky.co/blog/oscp-osce-2020-retrospective/</link><pubDate>Thu, 09 Apr 2020 00:00:00 +0000</pubDate><guid>https://polansky.co/blog/oscp-osce-2020-retrospective/</guid><description>&lt;p&gt;I got my OSCE exam results today. I passed! 🎉&lt;/p&gt;
&lt;p&gt;&lt;img src="https://polansky.co/blog/oscp-osce-2020-retrospective/osce-email.png" alt="The OSCE exam pass email"&gt;&lt;/p&gt;
&lt;p&gt;That means it&amp;rsquo;s time to do a retrospective/review blog post like everyone else I guess. Mine will be a little different than the usual ones though. This won&amp;rsquo;t be a study guide &amp;mdash; there are plenty of those, and especially for the OSCE some of them are practically exam spoilers. Instead I&amp;rsquo;d like to talk about where I think the OSCP and OSCE courses and exams fit into today&amp;rsquo;s world.&lt;/p&gt;</description></item><item><title>Importing VMWare Fusion VMs on ESXi 6.5</title><link>https://polansky.co/blog/vmware-fusion-esxi-import/</link><pubDate>Sat, 21 Mar 2020 00:00:00 +0000</pubDate><guid>https://polansky.co/blog/vmware-fusion-esxi-import/</guid><description>&lt;p&gt;I use a MacBook Pro for work, and naturally my job involves a good amount of VM usage. VMWare Fusion is &lt;em&gt;supposed&lt;/em&gt; to have good integration with ESXi, allowing you to connect to servers, manage VMs remotely, and transfer them to/from them. I find that the remote management works pretty well, and downloading VMs works most of the time, but I couldn&amp;rsquo;t get uploading them to our ESXi 6.5 host to work; I would always get cryptic errors like &lt;code&gt;Invalid configuration for device '0'&lt;/code&gt;. Even exporting the VM to an OVA file and importing it on the web interface wouldn&amp;rsquo;t work. One ticket with VMWare Support later and I finally have the correct import procedure:&lt;/p&gt;</description></item><item><title>A Better Windows 10+WSL SSH Experience</title><link>https://polansky.co/blog/a-better-windows-wsl-openssh-experience/</link><pubDate>Tue, 03 Dec 2019 00:00:00 +0000</pubDate><guid>https://polansky.co/blog/a-better-windows-wsl-openssh-experience/</guid><description>&lt;p&gt;Windows 10 ships with two awesome features for users and developers who still work in Linux land. The first is the &lt;a href="https://docs.microsoft.com/en-us/windows/wsl/faq"&gt;Windows Subsystem for Linux&lt;/a&gt;, which implements a subset of the Linux Kernel&amp;rsquo;s system calls to allow you to run native Linux userland utilities such as &lt;code&gt;bash&lt;/code&gt; and friends, and &lt;code&gt;ssh&lt;/code&gt;. Windows 10 also includes a native build of &lt;a href="https://docs.microsoft.com/en-us/windows-server/administration/openssh/openssh_overview"&gt;OpenSSH&lt;/a&gt;, which means you don&amp;rsquo;t even need to use WSL to SSH into your other machines! Unfortunately, neither option has any &lt;code&gt;ssh-agent&lt;/code&gt; running by default, so if you have passphrase protected keys (which you should!), then you&amp;rsquo;ll need to enter the passphrase every time you want to use them. Let&amp;rsquo;s fix that!&lt;/p&gt;</description></item><item><title>Creating TPM-Backed Certificates on Windows</title><link>https://polansky.co/blog/tpm-backed-certificates-windows/</link><pubDate>Mon, 02 Dec 2019 00:00:00 +0000</pubDate><guid>https://polansky.co/blog/tpm-backed-certificates-windows/</guid><description>&lt;p&gt;I&amp;rsquo;ve started experimenting with exposing some of my home lab services to the world without needing a VPN. Instead, I use &lt;a href="https://caddyserver.com/"&gt;Caddy&lt;/a&gt; (which is an &lt;em&gt;excellent&lt;/em&gt; web server, and much easier to work with than Nginx) as a reverse proxy with TLS client certificates for authentication. Caddy&amp;rsquo;s built-in Let&amp;rsquo;s Encrypt functionality provides the server certificate, and my internal PKI provides the client certificates. I still want to have 2-factor authentication, though &amp;mdash; a certificate is merely &amp;ldquo;something you have&amp;rdquo;, and I want to require &amp;ldquo;something you know,&amp;rdquo; too. Since all my PCs are recent enough to feature a TPM, I decided to store the keys on said TPM and configure it to require a password before allowing any authentication to take place. I was inspired by &lt;a href="https://docs.microsoft.com/en-us/windows/security/identity-protection/hello-for-business/hello-identity-verification"&gt;Microsoft Hello for Business&lt;/a&gt; &amp;mdash; which is really cool and I can&amp;rsquo;t wait to work with it some day &amp;mdash; but using the TPM directly is much lighter weight as no domain controller or Windows AD Domain is needed. The previous iteration of Microsoft&amp;rsquo;s &amp;ldquo;Passwordless Future,&amp;rdquo; TPM-backed &lt;a href="https://docs.microsoft.com/en-us/windows/security/identity-protection/virtual-smart-cards/virtual-smart-card-overview"&gt;virtual smart cards&lt;/a&gt; would be exactly what I want, except the docs come with a big ol&amp;rsquo; deprecation warning. Instead, I found how to interact with the base TPM crypto provider to generate certificates.&lt;/p&gt;</description></item><item><title>PSA: Don’t Store 2FA Codes in Password Managers</title><link>https://polansky.co/blog/psa-2fa-password-managers/</link><pubDate>Mon, 18 Mar 2019 00:00:00 +0000</pubDate><guid>https://polansky.co/blog/psa-2fa-password-managers/</guid><description>&lt;p&gt;&lt;em&gt;This post originally appeared on &lt;a href="https://blog.securityevaluators.com/psa-dont-store-2fa-codes-in-password-managers-77d92608b062"&gt;blog.securityevaluators.com&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://en.wikipedia.org/wiki/Multi-factor_authentication"&gt;Two-Factor Authentication&lt;/a&gt; (2FA, also known as Multi-Factor Authentication, or MFA) is all the rage these days, and for good reason. Accounts secured by 2FA are much, much harder to compromise than accounts using only a single factor &amp;mdash; so much more so that you can &amp;mdash; &lt;a href="https://blog.securityevaluators.com/2fa-not-all-factors-are-created-equal-b36fdcfed212"&gt;sometimes&lt;/a&gt; &amp;mdash; get away with an easier to type and remember (and therefore weaker) password when using it. The most common ways of implementing the second factor are SMS and TOTP (Time-Based One Time Password). When SMS is used, the site sends you a short numerical code via SMS after you enter your password, and you type the code into the site to finish proving your identity. SMS is inconvenient (you have to have your phone on you), and more importantly, SMS is &lt;a href="https://www.theverge.com/2017/9/18/16328172/sms-two-factor-authentication-hack-password-bitcoin"&gt;insecure&lt;/a&gt; and not &lt;a href="https://pages.nist.gov/800-63-3/sp800-63b.html#pstnOOB"&gt;recommended&lt;/a&gt;, so many sites are moving to TOTP codes instead, which involves using an app to generate codes yourself instead of the site sending them to you. There are a variety of apps that you can use to generate these codes, and some password managers do it too — but you have to be careful: your choice of app could weaken the security benefits provided by TOTP.&lt;/p&gt;</description></item><item><title>2FA: Not All Factors Are Created Equal</title><link>https://polansky.co/blog/2fa-not-all-factors-equal/</link><pubDate>Thu, 28 Feb 2019 00:00:00 +0000</pubDate><guid>https://polansky.co/blog/2fa-not-all-factors-equal/</guid><description>&lt;p&gt;&lt;em&gt;This post originally appeared on &lt;a href="https://blog.securityevaluators.com/2fa-not-all-factors-are-created-equal-b36fdcfed212"&gt;blog.securityevaluators.com&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;The security of a 2FA-protected account is much greater than the security of an account protected by only one factor — in theory. In practice, there is more nuance to it than that. For 2FA, you are trusting the server to enforce the 2FA and not be compromised by hackers or compelled by law enforcement to allow them access to your data; meanwhile a service can be configured to use your password in a way that protects even against hackers or law enforcement. Understanding this nuance requires a deeper understanding of how 2FA works and how it does (or doesn’t!) protect your accounts.&lt;/p&gt;</description></item></channel></rss>