The Nimble Nerd white logo

HTTPX 1.7.0 Crash Alert: How a Malformed Tag Takes Down Your Scanner! 😂💥

Watch your automated scanning pipeline go from hero to zero with a single malformed HTML tag. The culprit? An out-of-bounds read in httpx 1.7.0’s trimTitleTags(). It’s a bug that’ll make you panic like your code does. Who knew a little tag could wreak such havoc?

Pro Dashboard

Hot Take:

Who knew that a little HTML tag could go rogue and take down the mighty httpx? It’s like a digital David sneaking up on Goliath with a sharpened title tag instead of a slingshot. If only they had thrown in a few more unit tests, this wouldn’t just be “another bug” but a squashed one. Lesson learned: don’t underestimate the power of a well-placed angle bracket.

Key Points:

– A vulnerability in httpx v1.7.0 causes a remote denial-of-service (DoS).
– The issue arises from an out-of-bounds read in the `trimTitleTags()` function.
– A malformed `` tag can crash the scanner used in automated pipelines.<br /> – The bug highlights the importance of bounds checking in code.<br /> – Quick detection could have been achieved with proper unit testing or fuzzing.</p> </div></div></div></div></section><section id="brxe-jrxegq" class="brxe-section bricks-lazy-hidden"><div id="brxe-vvjyjs" class="brxe-container bricks-lazy-hidden"><a id="brxe-lnjbxk" class="brxe-button btn--primary bricks-button bricks-background-primary" href="https://pro.thenimblenerd.com/dashboard?guid=bc5d27e0-e1c9-43e7-9019-3f0bafb20d75">Pro Dashboard</a></div></section><section id="brxe-f9fdff" class="brxe-section bricks-lazy-hidden"><div id="brxe-378138" class="brxe-container bricks-lazy-hidden"><div id="brxe-9f09ae" class="brxe-block bricks-lazy-hidden"><div id="brxe-ewvvjy" class="brxe-block bricks-lazy-hidden"><h3 id="brxe-00d6b6" class="brxe-heading">Membership Required</h3><div id="brxe-7fbec1" class="brxe-text"><p> You must be a member to access this content.</p> </div><a id="brxe-78be28" class="brxe-button btn--primary bricks-button bricks-background-primary" href="https://thenimblenerd.com/membership-account/membership-levels/">View Membership Levels</a></div><div id="brxe-grqsjx" class="brxe-block bricks-lazy-hidden"><div id="brxe-nytfdg" class="brxe-text-basic">Already a member? <a href="https://thenimblenerd.com/login">Log in here</a></div></div></div></div></section><section id="brxe-011aec" class="brxe-section bricks-lazy-hidden"><div id="brxe-b952cd" class="brxe-container bricks-lazy-hidden"><nav id="brxe-f0f1f6" class="brxe-post-navigation" aria-label="Post navigation"><a class="prev-post" href="https://thenimblenerd.com/article/beware-the-badbox-how-cheap-android-devices-turn-your-home-into-a-crime-hub/"><div data-style="background-image:url(https://thenimblenerd.com/wp-content/uploads/2025/06/e97403f5-a1be-4b13-84a1-1dab8299cb89-150x150.jpg)" class="image css-filter bricks-lazy-hidden"></div><div class="swiper-button bricks-swiper-button-prev"><i class="ion-ios-arrow-back"></i></div><div class="content"><h5 class="title">Beware the Badbox: How Cheap Android Devices Turn Your Home Into a Crime Hub</h5></div></a><a class="next-post" href="https://thenimblenerd.com/article/px4-military-uav-autopilot-dos-vulnerability-crash-landing-your-drones-with-style/"><div class="content"><h5 class="title">PX4 Military UAV Autopilot DoS Vulnerability: Crash Landing Your Drones with Style!</h5></div><div class="swiper-button bricks-swiper-button-next"><i class="ion-ios-arrow-forward"></i></div><div data-style="background-image:url(https://thenimblenerd.com/wp-content/uploads/2025/06/9f7a749f-4f8e-416b-810c-97d53ab66469-150x150.jpg)" class="image css-filter bricks-lazy-hidden bricks-lazy-hidden"></div></a></nav></div></section></main><footer id="brx-footer"><section id="brxe-302af2" class="brxe-section bricks-lazy-hidden"><div id="brxe-3461eb" class="brxe-container bricks-lazy-hidden"><div id="brxe-15d7e1" class="brxe-text-basic"> © 2025 Nerd Media, LLC</div></div></section></footer><script type='text/javascript'> /* <![CDATA[ */ var advancedAds = {"adHealthNotice":{"enabled":true,"pattern":"AdSense fallback was loaded for empty AdSense ad \"[ad_title]\""},"frontendPrefix":"theni-","tracking":{"googleEvents":{"impression":"advanced_ads_impression","click":"advanced_ads_click"}}}; /* ]]> */ </script> <script>(function(){var advanced_ads_ga_UID="G-P68K6E3NL3",advanced_ads_ga_anonymIP=!!1;window.advanced_ads_check_adblocker=function(){var t=[],n=null;function e(t){var n=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||function(t){return setTimeout(t,16)};n.call(window,t)}return e((function(){var a=document.createElement("div");a.innerHTML=" ",a.setAttribute("class","ad_unit ad-unit text-ad text_ad pub_300x250"),a.setAttribute("style","width: 1px !important; height: 1px !important; position: absolute !important; left: 0px !important; top: 0px !important; overflow: hidden !important;"),document.body.appendChild(a),e((function(){var e,o,i=null===(e=(o=window).getComputedStyle)||void 0===e?void 0:e.call(o,a),d=null==i?void 0:i.getPropertyValue("-moz-binding");n=i&&"none"===i.getPropertyValue("display")||"string"==typeof d&&-1!==d.indexOf("about:");for(var c=0,r=t.length;c<r;c++)t[c](n);t=[]}))})),function(e){"undefined"==typeof advanced_ads_adblocker_test&&(n=!0),null!==n?e(n):t.push(e)}}(),(()=>{function t(t){this.UID=t,this.analyticsObject="function"==typeof gtag;var n=this;return this.count=function(){gtag("event","AdBlock",{event_category:"Advanced Ads",event_label:"Yes",non_interaction:!0,send_to:n.UID})},function(){if(!n.analyticsObject){var e=document.createElement("script");e.src="https://www.googletagmanager.com/gtag/js?id="+t,e.async=!0,document.body.appendChild(e),window.dataLayer=window.dataLayer||[],window.gtag=function(){dataLayer.push(arguments)},n.analyticsObject=!0,gtag("js",new Date)}var a={send_page_view:!1,transport_type:"beacon"};window.advanced_ads_ga_anonymIP&&(a.anonymize_ip=!0),gtag("config",t,a)}(),this}advanced_ads_check_adblocker((function(n){n&&new t(advanced_ads_ga_UID).count()}))})();})();</script><script type="speculationrules"> {"prefetch":[{"source":"document","where":{"and":[{"href_matches":"\/*"},{"not":{"href_matches":["\/wp-*.php","\/wp-admin\/*","\/wp-content\/uploads\/*","\/wp-content\/*","\/wp-content\/plugins\/*","\/wp-content\/themes\/bricks-child\/*","\/wp-content\/themes\/bricks\/*","\/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]} </script> <!-- Memberships powered by Paid Memberships Pro v3.5.6. --> <!--copyscapeskip--> <aside id="moove_gdpr_cookie_info_bar" class="moove-gdpr-info-bar-hidden moove-gdpr-align-center moove-gdpr-dark-scheme gdpr_infobar_postion_bottom_left" aria-label="GDPR Cookie Banner" style="display: none;"> <div class="moove-gdpr-info-bar-container"> <div class="moove-gdpr-info-bar-content"> <div class="moove-gdpr-cookie-notice"> <p>Hey there, you paranoid leech! Take the cookie or hit the road –</p> <p>not like we could pinpoint your VPNed, encrypted, TOR'd, double-blind, probably hairpin'd signal anyway.</p> <button class="moove-gdpr-infobar-close-btn gdpr-content-close-btn" aria-label="Close GDPR Cookie Banner"> <span class="gdpr-sr-only">Close GDPR Cookie Banner</span> <i class="moovegdpr-arrow-close"></i> </button> </div> <!-- .moove-gdpr-cookie-notice --> <div class="moove-gdpr-button-holder"> <button class="mgbutton moove-gdpr-infobar-allow-all gdpr-fbo-0" aria-label="Ugh, fine." >Ugh, fine.</button> <button class="mgbutton moove-gdpr-infobar-reject-btn gdpr-fbo-1 " aria-label="Nope.">Nope.</button> <button class="mgbutton moove-gdpr-infobar-settings-btn change-settings-button gdpr-fbo-2" aria-haspopup="true" data-href="#moove_gdpr_cookie_modal" aria-label="Settings">Settings</button> <button class="moove-gdpr-infobar-close-btn gdpr-fbo-3" aria-label="Close GDPR Cookie Banner" > <span class="gdpr-sr-only">Close GDPR Cookie Banner</span> <i class="moovegdpr-arrow-close"></i> </button> </div> <!-- .button-container --> </div> <!-- moove-gdpr-info-bar-content --> </div> <!-- moove-gdpr-info-bar-container --> </aside> <!-- #moove_gdpr_cookie_info_bar --> <!--/copyscapeskip--> <style> .searchwp-live-search-results { opacity: 0; transition: opacity .25s ease-in-out; -moz-transition: opacity .25s ease-in-out; -webkit-transition: opacity .25s ease-in-out; height: 0; overflow: hidden; z-index: 9999995; /* Exceed SearchWP Modal Search Form overlay. */ position: absolute; display: none; } .searchwp-live-search-results-showing { display: block; opacity: 1; height: auto; overflow: auto; } .searchwp-live-search-no-results { padding: 3em 2em 0; text-align: center; } .searchwp-live-search-no-min-chars:after { content: "Continue typing"; display: block; text-align: center; padding: 2em 2em 0; } </style> <script> var _SEARCHWP_LIVE_AJAX_SEARCH_BLOCKS = true; var _SEARCHWP_LIVE_AJAX_SEARCH_ENGINE = 'default'; var _SEARCHWP_LIVE_AJAX_SEARCH_CONFIG = 'default'; </script> <script id="pt-cv-content-views-script-js-extra"> var PT_CV_PUBLIC = {"_prefix":"pt-cv-","page_to_show":"5","_nonce":"656ebb4c12","is_admin":"","is_mobile":"","ajaxurl":"https:\/\/thenimblenerd.com\/wp-admin\/admin-ajax.php","lang":"","loading_image_src":"data:image\/gif;base64,R0lGODlhDwAPALMPAMrKygwMDJOTkz09PZWVla+vr3p6euTk5M7OzuXl5TMzMwAAAJmZmWZmZszMzP\/\/\/yH\/C05FVFNDQVBFMi4wAwEAAAAh+QQFCgAPACwAAAAADwAPAAAEQvDJaZaZOIcV8iQK8VRX4iTYoAwZ4iCYoAjZ4RxejhVNoT+mRGP4cyF4Pp0N98sBGIBMEMOotl6YZ3S61Bmbkm4mAgAh+QQFCgAPACwAAAAADQANAAAENPDJSRSZeA418itN8QiK8BiLITVsFiyBBIoYqnoewAD4xPw9iY4XLGYSjkQR4UAUD45DLwIAIfkEBQoADwAsAAAAAA8ACQAABC\/wyVlamTi3nSdgwFNdhEJgTJoNyoB9ISYoQmdjiZPcj7EYCAeCF1gEDo4Dz2eIAAAh+QQFCgAPACwCAAAADQANAAAEM\/DJBxiYeLKdX3IJZT1FU0iIg2RNKx3OkZVnZ98ToRD4MyiDnkAh6BkNC0MvsAj0kMpHBAAh+QQFCgAPACwGAAAACQAPAAAEMDC59KpFDll73HkAA2wVY5KgiK5b0RRoI6MuzG6EQqCDMlSGheEhUAgqgUUAFRySIgAh+QQFCgAPACwCAAIADQANAAAEM\/DJKZNLND\/kkKaHc3xk+QAMYDKsiaqmZCxGVjSFFCxB1vwy2oOgIDxuucxAMTAJFAJNBAAh+QQFCgAPACwAAAYADwAJAAAEMNAs86q1yaWwwv2Ig0jUZx3OYa4XoRAfwADXoAwfo1+CIjyFRuEho60aSNYlOPxEAAAh+QQFCgAPACwAAAIADQANAAAENPA9s4y8+IUVcqaWJ4qEQozSoAzoIyhCK2NFU2SJk0hNnyEOhKR2AzAAj4Pj4GE4W0bkJQIAOw==","is_mobile_tablet":"","sf_no_post_found":"No posts found.","lf__separator":","}; var PT_CV_PAGINATION = {"first":"\u00ab","prev":"\u2039","next":"\u203a","last":"\u00bb","goto_first":"Go to first page","goto_prev":"Go to previous page","goto_next":"Go to next page","goto_last":"Go to last page","current_page":"Current page is","goto_page":"Go to page"}; </script> <script src="https://thenimblenerd.com/wp-content/plugins/content-views-query-and-display-post-page/public/assets/js/cv.js?ver=4.2" id="pt-cv-content-views-script-js"></script> <script src="https://thenimblenerd.com/wp-content/plugins/pt-content-views-pro/public/assets/js/cvpro.min.js?ver=6.3.0.1" id="pt-cv-public-pro-script-js"></script> <script src="https://thenimblenerd.com/wp-content/uploads/956/147/assets/js/328.js?ver=3.0.4" id="advanced-ads-pro/postscribe-js"></script> <script id="advanced-ads-pro/cache_busting-js-extra"> var advanced_ads_pro_ajax_object = {"ajax_url":"https:\/\/thenimblenerd.com\/wp-admin\/admin-ajax.php","lazy_load_module_enabled":"1","lazy_load":{"default_offset":100,"offsets":[]},"moveintohidden":"","wp_timezone_offset":"-25200","the_id":"1049030","is_singular":"1"}; var advanced_ads_responsive = {"reload_on_resize":"1"}; </script> <script src="https://thenimblenerd.com/wp-content/uploads/956/147/assets/js/564/745.js?ver=3.0.4" id="advanced-ads-pro/cache_busting-js"></script> <script id="advanced-ads-layer-footer-js-js-extra"> var advanced_ads_layer_settings = {"layer_class":"theni-layer","placements":[]}; </script> <script src="https://thenimblenerd.com/wp-content/uploads/956/264/public/assets/js/43.js?ver=2.0.1" id="advanced-ads-layer-footer-js-js"></script> <script id="advanced-ads-pro/front-js-extra"> var advanced_ads_cookies = {"cookie_path":"\/","cookie_domain":""}; var advadsCfpInfo = {"cfpExpHours":"3","cfpClickLimit":"3","cfpBan":"7","cfpPath":"","cfpDomain":"","cfpEnabled":"1"}; </script> <script src="https://thenimblenerd.com/wp-content/uploads/956/147/assets/js/599.js?ver=3.0.4" id="advanced-ads-pro/front-js"></script> <script id="bricks-scripts-js-extra"> var bricksData = {"debug":"","locale":"en_US","ajaxUrl":"https:\/\/thenimblenerd.com\/wp-admin\/admin-ajax.php","restApiUrl":"https:\/\/thenimblenerd.com\/wp-json\/bricks\/v1\/","nonce":"24065227ae","formNonce":"fbacdefd89","wpRestNonce":"c2da47f257","postId":"1049030","recaptchaIds":[],"animatedTypingInstances":[],"videoInstances":[],"splideInstances":[],"tocbotInstances":[],"swiperInstances":[],"queryLoopInstances":[],"interactions":[],"filterInstances":[],"isotopeInstances":[],"activeFiltersCountInstances":[],"googleMapInstances":[],"facebookAppId":"","headerPosition":"top","offsetLazyLoad":"300","baseUrl":"https:\/\/thenimblenerd.com\/article\/httpx-1-7-0-crash-alert-how-a-malformed-tag-takes-down-your-scanner-%F0%9F%98%82%F0%9F%92%A5\/","useQueryFilter":"","pageFilters":[],"language":"","wpmlUrlFormat":"","multilangPlugin":"","i18n":{"openAccordion":"Open accordion","openMobileMenu":"Open mobile menu","closeMobileMenu":"Close mobile menu","showPassword":"Show password","hidePassword":"Hide password","prevSlide":"Previous slide","nextSlide":"Next slide","firstSlide":"Go to first slide","lastSlide":"Go to last slide","slideX":"Go to slide %s","play":"Start autoplay","pause":"Pause autoplay","splide":{"carousel":"carousel","select":"Select a slide to show","slide":"slide","slideLabel":"%1$s of %2$s"},"swiper":{"slideLabelMessage":"{{index}} \/ {{slidesLength}}"},"noLocationsFound":"No locations found","locationTitle":"Location title","locationSubtitle":"Location subtitle","locationContent":"Location content"},"selectedFilters":[],"filterNiceNames":[],"bricksGoogleMarkerScript":"https:\/\/thenimblenerd.com\/wp-content\/themes\/bricks\/assets\/js\/libs\/bricks-google-marker.min.js?v=2.0.2","infoboxScript":"https:\/\/thenimblenerd.com\/wp-content\/themes\/bricks\/assets\/js\/libs\/infobox.min.js?v=2.0.2","markerClustererScript":"https:\/\/thenimblenerd.com\/wp-content\/themes\/bricks\/assets\/js\/libs\/markerclusterer.min.js?v=2.0.2","mainQueryId":""}; </script> <script src="https://thenimblenerd.com/wp-content/themes/bricks/assets/js/bricks.min.js?ver=1757566877" id="bricks-scripts-js"></script> <script src="https://thenimblenerd.com/wp-content/plugins/google-site-kit/dist/assets/js/googlesitekit-consent-mode-cde2bfef8cefa5cc0c87.js" id="googlesitekit-consent-mode-js"></script> <script src="https://thenimblenerd.com/wp-content/plugins/advanced-ads/admin/assets/js/advertisement.js?ver=2.0.11" id="advanced-ads-find-adblocker-js"></script> <script id="swp-live-search-client-js-extra"> var searchwp_live_search_params = []; searchwp_live_search_params = {"ajaxurl":"https:\/\/thenimblenerd.com\/wp-admin\/admin-ajax.php","origin_id":1049030,"config":{"default":{"engine":"default","input":{"delay":300,"min_chars":3},"results":{"position":"bottom","width":"auto","offset":{"x":0,"y":5}},"spinner":{"lines":12,"length":8,"width":3,"radius":8,"scale":1,"corners":1,"color":"#424242","fadeColor":"transparent","speed":1,"rotate":0,"animation":"searchwp-spinner-line-fade-quick","direction":1,"zIndex":2000000000,"className":"spinner","top":"50%","left":"50%","shadow":"0 0 1px transparent","position":"absolute"}}},"msg_no_config_found":"No valid SearchWP Live Search configuration found!","aria_instructions":"When autocomplete results are available use up and down arrows to review and enter to go to the desired page. Touch device users, explore by touch or with swipe gestures."};; </script> <script src="https://thenimblenerd.com/wp-content/plugins/searchwp-live-ajax-search/assets/javascript/dist/script.min.js?ver=1.8.6" id="swp-live-search-client-js"></script> <script src="https://thenimblenerd.com/wp-content/uploads/956/36/public/assets/js/995.js?ver=2.0.2" id="unslider-js-js"></script> <script src="https://thenimblenerd.com/wp-content/uploads/956/36/public/assets/js/135.js?ver=2.0.2" id="unslider-move-js-js"></script> <script src="https://thenimblenerd.com/wp-content/uploads/956/36/public/assets/js/584.js?ver=2.0.2" id="unslider-swipe-js-js"></script> <script id="advadsTrackingScript-js-extra"> var advadsTracking = {"impressionActionName":"aatrack-records","clickActionName":"aatrack-click","targetClass":"theni-target","blogId":"1","frontendPrefix":"theni-"}; </script> <script src="https://thenimblenerd.com/wp-content/uploads/956/290/assets/js/977/262.js?ver=3.0.3" id="advadsTrackingScript-js"></script> <script src="https://thenimblenerd.com/wp-content/uploads/956/290/assets/js/977/635.js?ver=3.0.3" id="advadsTrackingGAFront-js"></script> <script src="https://thenimblenerd.com/wp-content/uploads/956/290/assets/js/977/924.js?ver=3.0.3" id="advadsTrackingDelayed-js"></script> <script id="moove_gdpr_frontend-js-extra"> var moove_frontend_gdpr_scripts = {"ajaxurl":"https:\/\/thenimblenerd.com\/wp-admin\/admin-ajax.php","post_id":"1049030","plugin_dir":"https:\/\/thenimblenerd.com\/wp-content\/plugins\/gdpr-cookie-compliance","show_icons":"all","is_page":"","ajax_cookie_removal":"false","strict_init":"2","enabled_default":{"strict":1,"third_party":0,"advanced":0,"performance":0,"preference":0},"geo_location":"false","force_reload":"false","is_single":"1","hide_save_btn":"false","current_user":"0","cookie_expiration":"3650","script_delay":"2000","close_btn_action":"1","close_btn_rdr":"","scripts_defined":"{\"cache\":true,\"header\":\"\",\"body\":\"\",\"footer\":\"\",\"thirdparty\":{\"header\":\"\",\"body\":\"\",\"footer\":\"\"},\"strict\":{\"header\":\"\",\"body\":\"\",\"footer\":\"\"},\"advanced\":{\"header\":\"\",\"body\":\"\",\"footer\":\"\"}}","gdpr_scor":"true","wp_lang":"","wp_consent_api":"false","gdpr_nonce":"935c1491ca"}; </script> <script src="https://thenimblenerd.com/wp-content/plugins/gdpr-cookie-compliance/dist/scripts/main.js?ver=5.0.8" id="moove_gdpr_frontend-js"></script> <script id="moove_gdpr_frontend-js-after"> var gdpr_consent__strict = "false" var gdpr_consent__thirdparty = "false" var gdpr_consent__advanced = "false" var gdpr_consent__performance = "false" var gdpr_consent__preference = "false" var gdpr_consent__cookies = "" </script> <div class="theni-cda3b31d7a98e84ae5e2e7cad3272a5f theni-custom-position" id="theni-cda3b31d7a98e84ae5e2e7cad3272a5f"></div><div class="theni-5026a4b26a3f2b6a26910c19888ecb3a theni-article-in-feed-custom" id="theni-5026a4b26a3f2b6a26910c19888ecb3a"></div><script>window.advads_admin_bar_items = [];</script><script>window.advads_ajax_queries = [{"id":1040824,"method":"placement","params":{"title":"Custom Position","content":"New placement content goes here","type":"custom_position","slug":"custom-position","status":"publish","item":"ad_11141","display":[],"visitors":[],"inline-css":"","cache-busting":"auto","inject_by":"pro_custom_element","pro_custom_element":"div.gb-container:eq(4) > div.gb-grid-wrapper > div.gb-grid-column:eq(1)","pro_custom_position":"appendTo","container_id":"#c6c22edfb8c719eff0c3f21c176633b07","previous_id":1040824,"previous_method":"placement","post":"r0","url_parameter":"\/article\/httpx-1-7-0-crash-alert-how-a-malformed-tag-takes-down-your-scanner-%F0%9F%98%82%F0%9F%92%A5\/","placement_type":"custom_position","output":{"class":["theni-custom-position"],"placement_id":1040824}},"elementid":"theni-cda3b31d7a98e84ae5e2e7cad3272a5f","blog_id":1},{"id":1040823,"method":"placement","params":{"title":"Article in-feed [custom]","content":"New placement content goes here","type":"custom_position","slug":"article-in-feed-custom","status":"publish","item":"ad_10821","display":[],"visitors":[],"inline-css":"","cache-busting":"auto","inject_by":"pro_custom_element","pro_custom_element":"div.inside-article > div.entry-content > div.gb-container:eq(1)","pro_custom_position":"insertAfter","container_id":"#c29be68ce981ec6d5cd9c6781cee3d5b8","previous_id":1040823,"previous_method":"placement","post":"r0","url_parameter":"\/article\/httpx-1-7-0-crash-alert-how-a-malformed-tag-takes-down-your-scanner-%F0%9F%98%82%F0%9F%92%A5\/","placement_type":"custom_position","output":{"class":["theni-article-in-feed-custom"],"placement_id":1040823}},"elementid":"theni-5026a4b26a3f2b6a26910c19888ecb3a","blog_id":1}]; window.advads_ajax_queries_args = {"r0":{"id":1049030,"author":"6","post_type":"article"}}; ( window.advanced_ads_ready || jQuery( document ).ready ).call( null, function() {if ( !window.advanced_ads_pro ) {console.log("Advanced Ads Pro: cache-busting can not be initialized");} });</script> <!--copyscapeskip--> <button data-href="#moove_gdpr_cookie_modal" aria-haspopup="true" id="moove_gdpr_save_popup_settings_button" style='display: none;' class="" aria-label="Cookie Conspiracy Settings"> <span class="moove_gdpr_icon"> <svg viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg" style="max-width: 30px; max-height: 30px;"> <g data-name="1"> <path d="M293.9,450H233.53a15,15,0,0,1-14.92-13.42l-4.47-42.09a152.77,152.77,0,0,1-18.25-7.56L163,413.53a15,15,0,0,1-20-1.06l-42.69-42.69a15,15,0,0,1-1.06-20l26.61-32.93a152.15,152.15,0,0,1-7.57-18.25L76.13,294.1a15,15,0,0,1-13.42-14.91V218.81A15,15,0,0,1,76.13,203.9l42.09-4.47a152.15,152.15,0,0,1,7.57-18.25L99.18,148.25a15,15,0,0,1,1.06-20l42.69-42.69a15,15,0,0,1,20-1.06l32.93,26.6a152.77,152.77,0,0,1,18.25-7.56l4.47-42.09A15,15,0,0,1,233.53,48H293.9a15,15,0,0,1,14.92,13.42l4.46,42.09a152.91,152.91,0,0,1,18.26,7.56l32.92-26.6a15,15,0,0,1,20,1.06l42.69,42.69a15,15,0,0,1,1.06,20l-26.61,32.93a153.8,153.8,0,0,1,7.57,18.25l42.09,4.47a15,15,0,0,1,13.41,14.91v60.38A15,15,0,0,1,451.3,294.1l-42.09,4.47a153.8,153.8,0,0,1-7.57,18.25l26.61,32.93a15,15,0,0,1-1.06,20L384.5,412.47a15,15,0,0,1-20,1.06l-32.92-26.6a152.91,152.91,0,0,1-18.26,7.56l-4.46,42.09A15,15,0,0,1,293.9,450ZM247,420h33.39l4.09-38.56a15,15,0,0,1,11.06-12.91A123,123,0,0,0,325.7,356a15,15,0,0,1,17,1.31l30.16,24.37,23.61-23.61L372.06,328a15,15,0,0,1-1.31-17,122.63,122.63,0,0,0,12.49-30.14,15,15,0,0,1,12.92-11.06l38.55-4.1V232.31l-38.55-4.1a15,15,0,0,1-12.92-11.06A122.63,122.63,0,0,0,370.75,187a15,15,0,0,1,1.31-17l24.37-30.16-23.61-23.61-30.16,24.37a15,15,0,0,1-17,1.31,123,123,0,0,0-30.14-12.49,15,15,0,0,1-11.06-12.91L280.41,78H247l-4.09,38.56a15,15,0,0,1-11.07,12.91A122.79,122.79,0,0,0,201.73,142a15,15,0,0,1-17-1.31L154.6,116.28,131,139.89l24.38,30.16a15,15,0,0,1,1.3,17,123.41,123.41,0,0,0-12.49,30.14,15,15,0,0,1-12.91,11.06l-38.56,4.1v33.38l38.56,4.1a15,15,0,0,1,12.91,11.06A123.41,123.41,0,0,0,156.67,311a15,15,0,0,1-1.3,17L131,358.11l23.61,23.61,30.17-24.37a15,15,0,0,1,17-1.31,122.79,122.79,0,0,0,30.13,12.49,15,15,0,0,1,11.07,12.91ZM449.71,279.19h0Z" fill="currentColor"/> <path d="M263.71,340.36A91.36,91.36,0,1,1,355.08,249,91.46,91.46,0,0,1,263.71,340.36Zm0-152.72A61.36,61.36,0,1,0,325.08,249,61.43,61.43,0,0,0,263.71,187.64Z" fill="currentColor"/> </g> </svg> </span> <span class="moove_gdpr_text">Cookie Conspiracy Settings</span> </button> <!--/copyscapeskip--> <!--copyscapeskip--> <!-- V1 --> <dialog id="moove_gdpr_cookie_modal" class="gdpr_lightbox-hide" aria-modal="true" aria-label="GDPR Settings Screen"> <div class="moove-gdpr-modal-content moove-clearfix logo-position-left moove_gdpr_modal_theme_v1"> <button class="moove-gdpr-modal-close" autofocus aria-label="Close GDPR Cookie Settings"> <span class="gdpr-sr-only">Close GDPR Cookie Settings</span> <span class="gdpr-icon moovegdpr-arrow-close"></span> </button> <div class="moove-gdpr-modal-left-content"> <div class="moove-gdpr-company-logo-holder"> <img src="https://thenimblenerd.com/wp-content/plugins/gdpr-cookie-compliance/dist/images/gdpr-logo.png" alt="The Nimble Nerd" width="350" height="233" class="img-responsive" /> </div> <!-- .moove-gdpr-company-logo-holder --> <ul id="moove-gdpr-menu"> <li class="menu-item-on menu-item-privacy_overview menu-item-selected"> <button data-href="#privacy_overview" class="moove-gdpr-tab-nav" aria-label="Confessional Booth of Our Digital Sins"> <span class="gdpr-nav-tab-title">Confessional Booth of Our Digital Sins</span> </button> </li> <li class="menu-item-strict-necessary-cookies menu-item-off"> <button data-href="#strict-necessary-cookies" class="moove-gdpr-tab-nav" aria-label="Non-negotiable Digital Breadcrumbs"> <span class="gdpr-nav-tab-title">Non-negotiable Digital Breadcrumbs</span> </button> </li> <li class="menu-item-off menu-item-third_party_cookies"> <button data-href="#third_party_cookies" class="moove-gdpr-tab-nav" aria-label="Uninvited Guests' Crumbs"> <span class="gdpr-nav-tab-title">Uninvited Guests' Crumbs</span> </button> </li> <li class="menu-item-moreinfo menu-item-off"> <button data-href="#cookie_policy_modal" class="moove-gdpr-tab-nav" aria-label="The Half-Baked Cookie Manifesto"> <span class="gdpr-nav-tab-title">The Half-Baked Cookie Manifesto</span> </button> </li> </ul> <div class="moove-gdpr-branding-cnt"> <a href="https://wordpress.org/plugins/gdpr-cookie-compliance/" rel="noopener noreferrer" target="_blank" class='moove-gdpr-branding'>powered by the NSA, er,  <span>GDPR Cookie Compliance</span></a> </div> <!-- .moove-gdpr-branding --> </div> <!-- .moove-gdpr-modal-left-content --> <div class="moove-gdpr-modal-right-content"> <div class="moove-gdpr-modal-title"> </div> <!-- .moove-gdpr-modal-ritle --> <div class="main-modal-content"> <div class="moove-gdpr-tab-content"> <div id="privacy_overview" class="moove-gdpr-tab-main"> <span class="tab-title">Confessional Booth of Our Digital Sins</span> <div class="moove-gdpr-tab-main-content"> <p>Okay, deep breath, let's get this over with. In the grand act of digital self-sabotage, we've littered this site with cookies. Yep, we did that. Why? So your highness can have a 'premium' experience or whatever. These traitorous cookies hide in your browser, eagerly waiting to welcome you back like a guilty dog that's just chewed your favorite shoe. And, if that's not enough, they also tattle on which parts of our sad little corner of the web you obsess over. Feels dirty, doesn't it?</p> </div> <!-- .moove-gdpr-tab-main-content --> </div> <!-- #privacy_overview --> <div id="strict-necessary-cookies" class="moove-gdpr-tab-main" style="display:none"> <span class="tab-title">Non-negotiable Digital Breadcrumbs</span> <div class="moove-gdpr-tab-main-content"> <p>These Non-negotiable Digital Breadcrumbs need to be tolerated at all times so we can pretend to remember your oh-so-important cookie demands.</p> <div class="moove-gdpr-status-bar "> <div class="gdpr-cc-form-wrap"> <div class="gdpr-cc-form-fieldset"> <label class="cookie-switch" for="moove_gdpr_strict_cookies"> <span class="gdpr-sr-only">Enable or Disable Cookies</span> <input type="checkbox" aria-label="Non-negotiable Digital Breadcrumbs" value="check" name="moove_gdpr_strict_cookies" id="moove_gdpr_strict_cookies"> <span class="cookie-slider cookie-round gdpr-sr" data-text-enable="Plz Spy On Me" data-text-disabled="Nice Try, Big Bro"> <span class="gdpr-sr-label"> <span class="gdpr-sr-enable">Plz Spy On Me</span> <span class="gdpr-sr-disable">Nice Try, Big Bro</span> </span> </span> </label> </div> <!-- .gdpr-cc-form-fieldset --> </div> <!-- .gdpr-cc-form-wrap --> </div> <!-- .moove-gdpr-status-bar --> </div> <!-- .moove-gdpr-tab-main-content --> </div> <!-- #strict-necesarry-cookies --> <div id="third_party_cookies" class="moove-gdpr-tab-main" style="display:none"> <span class="tab-title">Uninvited Guests' Crumbs</span> <div class="moove-gdpr-tab-main-content"> <p>Yeah, we’ve let Google Analytics creep around here, spying on stuff like visitor counts and which pages get the most love (or hate).</p> <p>If you’re feeling charitable, leave this cookie on. It feeds our delusion that we can make this site better. Go on, pity us.</p> <div class="moove-gdpr-status-bar"> <div class="gdpr-cc-form-wrap"> <div class="gdpr-cc-form-fieldset"> <label class="cookie-switch" for="moove_gdpr_performance_cookies"> <span class="gdpr-sr-only">Enable or Disable Cookies</span> <input type="checkbox" aria-label="Uninvited Guests' Crumbs" value="check" name="moove_gdpr_performance_cookies" id="moove_gdpr_performance_cookies" disabled> <span class="cookie-slider cookie-round gdpr-sr" data-text-enable="Plz Spy On Me" data-text-disabled="Nice Try, Big Bro"> <span class="gdpr-sr-label"> <span class="gdpr-sr-enable">Plz Spy On Me</span> <span class="gdpr-sr-disable">Nice Try, Big Bro</span> </span> </span> </label> </div> <!-- .gdpr-cc-form-fieldset --> </div> <!-- .gdpr-cc-form-wrap --> </div> <!-- .moove-gdpr-status-bar --> </div> <!-- .moove-gdpr-tab-main-content --> </div> <!-- #third_party_cookies --> <div id="cookie_policy_modal" class="moove-gdpr-tab-main" style="display:none"> <span class="tab-title">The Half-Baked Cookie Manifesto</span> <div class="moove-gdpr-tab-main-content"> <ul> <li><strong>Introduction:</strong> Welcome to our cookie confessional. If you're expecting a delightful baking recipe, you're about to be sorely disappointed. Instead, here's the messy digital trail we leave as you snoop—ahem, browse—around.</li> <li><strong>The Basics:</strong> Little digital spies that, in an ironic twist, even we, the guardians of cyberspace, deploy. These crumbs do stuff, like 'enhance user experience.' That's geek-speak for "makes things less shitty."</li> <li><strong>The Ones We Can't Live Without: </strong> <ul> <li><em>Non-negotiable Digital Breadcrumbs.</em> These are basically our site’s life support. Without them, expect a Groundhog Day scenario every time you visit—endlessly re-setting preferences and wondering where it all went wrong.</li> </ul> </li> <li><strong>The Stalkers We Invited: </strong> <ul> <li><em>Uninvited Guests' Crumbs.</em> Google Analytics sneaks around here, spying on stuff like how many of you there are, and which pages you lurk on. All in the hopes we can pretend to understand what you want.</li> </ul> </li> <li><strong>Managing These Treacherous Treats:</strong> Feel like being in control? Venture into your browser settings and conduct your own cookie purge. But remember, every time you do, a digital cookie fairy loses its wings. Or something like that.</li> <li><strong>Any Changes?</strong> Sometimes, in our bouts of self-loathing, we update this manifesto. Mostly to up our snark game. So, maybe come back and cry—err, check—every once in a while?</li> <li><strong>Need to Complain?</strong>If our betrayal via cookies is too much to bear, and you wish to vent, slide into our contact page. Prepare for our sarcastic appreciation of your insights.</li> </ul> <p>By continuing to use this tragic excuse for a website, you're either forgiving our cookie sins or too lazy to navigate away. Either way, cheers!</p> <p> </p> </div> <!-- .moove-gdpr-tab-main-content --> </div> </div> <!-- .moove-gdpr-tab-content --> </div> <!-- .main-modal-content --> <div class="moove-gdpr-modal-footer-content"> <div class="moove-gdpr-button-holder"> <button class="mgbutton moove-gdpr-modal-allow-all button-visible" aria-label="Enable All">Enable All</button> <button class="mgbutton moove-gdpr-modal-reject-all button-visible" aria-label="Reject All">Reject All</button> <button class="mgbutton moove-gdpr-modal-save-settings button-visible" aria-label="Save Changes">Save Changes</button> </div> <!-- .moove-gdpr-button-holder --> </div> <!-- .moove-gdpr-modal-footer-content --> </div> <!-- .moove-gdpr-modal-right-content --> <div class="moove-clearfix"></div> </div> <!-- .moove-gdpr-modal-content --> </dialog> <!-- #moove_gdpr_cookie_modal --> <!--/copyscapeskip--> <script>!function(){window.advanced_ads_ready_queue=window.advanced_ads_ready_queue||[],advanced_ads_ready_queue.push=window.advanced_ads_ready;for(var d=0,a=advanced_ads_ready_queue.length;d<a;d++)advanced_ads_ready(advanced_ads_ready_queue[d])}();</script> <!-- BEGIN SEARCHWP DEBUG [NO QUERIES] END SEARCHWP DEBUG --> <script id="theni-tracking">var advads_tracking_ads = {};var advads_tracking_urls = {"1":"https:\/\/thenimblenerd.com\/wp-admin\/admin-ajax.php"};var advads_tracking_methods = {"1":"ga"};var advads_tracking_parallel = {"1":false};var advads_tracking_linkbases = {"1":"https:\/\/thenimblenerd.com\/linkout\/"};var advads_gatracking_uids = {"1":["G-P68K6E3NL3"]};var advads_gatracking_allads = {"1":{"11276":{"title":"Multiplex Responsive A [horiz]","target":"","impression":true,"click":true},"11275":{"title":"Multiplex Responsive B [horiz]","target":"","impression":true,"click":true},"11170":{"title":"In-Article Responsive [per tutorial]","target":"","impression":true,"click":true},"11141":{"title":"Multiplex Responsive [Vert]","target":"","impression":true,"click":true},"11094":{"title":"Ad created on September 22, 2023 at 12:03 am 12:03 am","target":"","impression":true,"click":true},"10823":{"title":"Sticky footer ad - 728x90","target":"","impression":true,"click":true},"10822":{"title":"Dummy Ad","target":"","impression":true,"click":true},"10821":{"title":"In-Article 728x90","target":"","impression":true,"click":true}}};var advads_gatracking_anonym = false;var advads_gatracking_transmitpageqs = {};</script></body></html><script>(function(){function c(){var b=a.contentDocument||a.contentWindow.document;if(b){var d=b.createElement('script');d.innerHTML="window.__CF$cv$params={r:'986357dd8f9852a6',t:'MTc1OTA2MzU4Mg=='};var a=document.createElement('script');a.src='/cdn-cgi/challenge-platform/scripts/jsd/main.js';document.getElementsByTagName('head')[0].appendChild(a);";b.getElementsByTagName('head')[0].appendChild(d)}}if(document.body){var a=document.createElement('iframe');a.height=1;a.width=1;a.style.position='absolute';a.style.top=0;a.style.left=0;a.style.border='none';a.style.visibility='hidden';document.body.appendChild(a);if('loading'!==document.readyState)c();else if(window.addEventListener)document.addEventListener('DOMContentLoaded',c);else{var e=document.onreadystatechange||function(){};document.onreadystatechange=function(b){e(b);'loading'!==document.readyState&&(document.onreadystatechange=e,c())}}}})();</script>