[{"data":1,"prerenderedAt":2650},["ShallowReactive",2],{"application-flags":3,"navbar":7,"always-visible-banner":36,"navbar-about-highlight":108,"navbar-resource-highlight":182,"blog/introducing-aitm-phishing-toolkit-detection-powered-by-the-push-browser":226},[4],{"name":5,"enabled":6},"maintenanceMode",false,[8],{"createdDate":9,"id":10,"name":11,"modelId":12,"published":13,"query":14,"data":15,"variations":20,"lastUpdated":21,"firstPublished":22,"testRatio":23,"createdBy":24,"lastUpdatedBy":25,"folders":26,"meta":27,"rev":35},1742208588866,"1c7a4e423bf54ac1a328bb4063459ef2","Banner","1c6207a5f24948ab82d4a0b17f251193","published",[],{"type":16,"url":17,"text":18,"link":19},"web-banner","https://pushsecurity.com/resources/browser-attacks-report","Get our latest report analyzing browser attack techniques in 2026",{},{},1774258294825,1742208637545,1,"CydmZnOWU1XuAaLhEDCoYNM4Z8W2","jKjF9r5jcvXU8tzZEfFQm31Iyvr2",[],{"kind":28,"lastPreviewUrl":29,"breakpoints":30,"hasAutosaves":34},"data","",{"xsmall":31,"small":32,"medium":33},320,640,768,true,"ga0kpxjhh76",{"createdDate":37,"id":38,"name":39,"modelId":40,"published":13,"stageModifiedSincePublish":6,"query":41,"data":42,"variations":97,"lastUpdated":98,"firstPublished":99,"testRatio":23,"createdBy":100,"lastUpdatedBy":101,"folders":102,"meta":103,"rev":107},1774965361051,"fd266d0172cc47429be7ad10f48c99ad","always visible banner","0678d178ec8b41efb8a23c09dba7874d",[],{"ctaText":43,"text":44,"url":29,"blocks":45,"state":93},"ewrererw","testrfesssssssssss",[46,73,81],{"@type":47,"@version":48,"id":49,"component":50,"responsiveStyles":63},"@builder.io/sdk:Element",2,"builder-ca12c06a52de41d7b8743da53118cd38",{"name":51,"tag":51,"options":52,"isRSC":62},"TopBannerContent",{"text":53,"ctaText":54,"url":55,"mainText":56,"cta":59},"New Webinar Series: Join John Hammond, Troy Hunt, and Matt Johansen for the State of Browser Attacks","Save Your Spot","https://pushsecurity.com/webinar/state-of-browser-security",{"content":57,"fontSize":58},"\u003Cp>Meet Push's browser security experts at BlackHat 2026.\u003C/p>","text-base",{"content":60,"fontSize":58,"url":61},"\u003Cp>Book a meeting →\u003C/p>","https://pushsecurity.com/events/blackhat-2026-meeting",null,{"large":64},{"display":65,"flexDirection":66,"position":67,"flexShrink":68,"boxSizing":69,"marginTop":70,"marginBottom":70,"fontSize":71,"fontWeight":72},"flex","column","relative","0","border-box",".56rem","1.125rem","700",{"@type":47,"@version":48,"id":74,"component":75,"responsiveStyles":79},"builder-a2e1f4b9f30b464bb814d7f5de5b0aa7",{"name":76,"options":77,"isRSC":62},"Custom Code",{"code":78,"scriptsClientOnly":6},"\u003Cstyle>\n  .top-banner.bg-web-orange{background:rgb(114, 79, 255);}\n\u003C/style>\n",{"large":80},{"display":65,"flexDirection":66,"position":67,"flexShrink":68,"boxSizing":69},{"id":82,"@type":47,"tagName":83,"properties":84,"responsiveStyles":88},"builder-pixel-o503s4fpvk","img",{"src":85,"aria-hidden":86,"alt":29,"role":87,"width":68,"height":68},"https://cdn.builder.io/api/v1/pixel?apiKey=f3a1111ff5be48cdbb123cd9f5795a05","true","presentation",{"large":89},{"height":68,"width":68,"display":90,"opacity":68,"overflow":91,"pointerEvents":92},"block","hidden","none",{"deviceSize":94,"location":95},"large",{"path":29,"query":96},{},{},1783541846936,1774968080803,"ST0tXQM8slWpFrmioqKHmENB2qe2","kYgMv6WsbvfmlOUYqR2SFwGzw6e2",[],{"kind":104,"lastPreviewUrl":105,"hasLinks":6,"breakpoints":106,"hasErrors":6,"hasAutosaves":6},"component","https://pushsecurity.com/?builder.space=f3a1111ff5be48cdbb123cd9f5795a05&builder.user.permissions=read%2Ccreate%2Cpublish%2CeditDesigns%2CeditLayouts%2CeditLayers%2CeditContentPriority%2CeditFolders%2CcreateProjects%2CsendPullRequests&builder.user.role.name=Designer&builder.user.role.id=creator&builder.cachebust=true&builder.preview=always-visible-banner&builder.noCache=true&builder.allowTextEdit=true&__builder_editing__=true&builder.overrides.always-visible-banner=fd266d0172cc47429be7ad10f48c99ad&builder.overrides.fd266d0172cc47429be7ad10f48c99ad=fd266d0172cc47429be7ad10f48c99ad&builder.options.locale=Default",{"xsmall":31,"small":32,"medium":33},"kyujw1aptq",[109,145],{"createdDate":110,"id":111,"name":112,"modelId":113,"published":13,"stageModifiedSincePublish":6,"query":114,"data":115,"variations":138,"lastUpdated":139,"firstPublished":140,"testRatio":23,"createdBy":24,"lastUpdatedBy":24,"folders":141,"meta":142,"rev":144},1776247359804,"9136a8f18b3b4a6ba29b8653a99372b1","testimonial-inductive-automation","20d9eaa352304613b3d1a794b400703d",[],{"link":116,"type":117,"testimonialLink":118,"testimonial":119},{},"testimonial","/customer-stories/inductive-automation",{"@type":120,"id":121,"model":117,"value":122},"@builder.io/core:Reference","f028f2b685bb47cd8bf9e82a26dd5a79",{"query":123,"folders":124,"createdDate":125,"id":121,"name":126,"modelId":127,"published":13,"data":128,"variations":132,"lastUpdated":133,"firstPublished":134,"testRatio":23,"createdBy":100,"lastUpdatedBy":100,"meta":135,"rev":137},[],[],1735823466309,"We found Push to be more accurate when compared to competitors and the browser agent offered features that others couldn’t match.","42035571a56940ac98bff4544aa79aa5",{"author":129,"jobTitle":130,"quote":126,"image":131},"Jason Waits","\u003Cp>CISO at Inductive Automation\u003C/p>","https://cdn.builder.io/api/v1/image/assets%2Ff3a1111ff5be48cdbb123cd9f5795a05%2Ff04c0c0689ce4a89ac0f0708d78c0a07",{},1735910703862,1735823501152,{"kind":28,"lastPreviewUrl":29,"breakpoints":136,"hasAutosaves":34},{"small":32,"medium":33},"e8bsg4qrgtu",{},1776247404986,1776247404973,[],{"breakpoints":143,"kind":28,"lastPreviewUrl":29,"hasAutosaves":6},{"xsmall":31,"small":32,"medium":33},"g9lqcuxphw7",{"createdDate":146,"id":147,"name":148,"modelId":113,"published":13,"meta":149,"stageModifiedSincePublish":6,"query":151,"data":152,"variations":178,"lastUpdated":179,"firstPublished":180,"testRatio":23,"createdBy":24,"lastUpdatedBy":24,"folders":181,"rev":144},1776255761419,"05a9322735fc427db12e2740e4302300","Report: 2026 Browser Attack Techniques",{"breakpoints":150,"kind":28,"lastPreviewUrl":29,"hasAutosaves":6},{"xsmall":31,"small":32,"medium":33},[],{"testimonial":153,"link":172,"type":175,"title":148,"description":176,"image":177},{"@type":120,"id":154,"model":117,"value":155},"192acbb1f9ca4cac918c0ec435a8bae3",{"query":156,"folders":157,"createdDate":158,"id":154,"name":159,"modelId":127,"published":13,"data":160,"variations":166,"lastUpdated":167,"firstPublished":168,"testRatio":23,"createdBy":100,"lastUpdatedBy":24,"meta":169,"rev":171},[],[],1728981467463,"Push does for identity what CrowdStrike did for the endpoint",{"video":161,"jobTitle":162,"author":163,"qoute":29,"quote":164,"image":165},"https://cdn.builder.io/o/assets%2Ff3a1111ff5be48cdbb123cd9f5795a05%2F8b30e8ca50064058bbaef0f3c6164575%2Fcompressed?apiKey=f3a1111ff5be48cdbb123cd9f5795a05&token=8b30e8ca50064058bbaef0f3c6164575&alt=media&optimized=true","\u003Cp>Deputy CISO at Microsoft\u003C/p>\u003Cp>Former LinkedIn, Slack, Palantir\u003C/p>","Geoff Belknap","Push does for identity what CrowdStrike did for the endpoint.","https://cdn.builder.io/api/v1/image/assets%2Ff3a1111ff5be48cdbb123cd9f5795a05%2F748f0ad0a5064a00a13f4721fcc8dea1",{},1742902158597,1728981782923,{"kind":28,"lastPreviewUrl":29,"breakpoints":170,"hasAutosaves":34},{"small":32,"medium":33},"ulhc0im1hfo",{"text":173,"url":174},"Download now","/resources/browser-attacks-report","resource","Learn about the latest techniques being used in the wild.","https://cdn.builder.io/api/v1/image/assets%2Ff3a1111ff5be48cdbb123cd9f5795a05%2F7b4a5ebf81d64e8c9d7fc35f6c96c4a9",{},1776255810913,1776255810900,[],[183,205],{"createdDate":184,"id":185,"name":148,"modelId":186,"published":13,"meta":187,"stageModifiedSincePublish":6,"query":189,"data":190,"variations":200,"lastUpdated":201,"firstPublished":202,"testRatio":23,"createdBy":24,"lastUpdatedBy":24,"folders":203,"rev":204},1776256900280,"1f429607996e4e5fae8fe3f9b9610e55","4829faa81e7c4ee8bd2d000e160e8d3c",{"breakpoints":188,"kind":28,"lastPreviewUrl":29,"hasAutosaves":6},{"xsmall":31,"small":32,"medium":33},[],{"testimonial":191,"link":199,"type":175,"title":148,"description":176,"image":177},{"@type":120,"id":154,"model":117,"value":192},{"query":193,"folders":194,"createdDate":158,"id":154,"name":159,"modelId":127,"published":13,"data":195,"variations":196,"lastUpdated":167,"firstPublished":168,"testRatio":23,"createdBy":100,"lastUpdatedBy":24,"meta":197,"rev":171},[],[],{"video":161,"jobTitle":162,"author":163,"qoute":29,"quote":164,"image":165},{},{"kind":28,"lastPreviewUrl":29,"breakpoints":198,"hasAutosaves":34},{"small":32,"medium":33},{"text":173,"url":174},{},1776256937553,1776256937540,[],"xggsv10v1q9",{"createdDate":206,"id":207,"name":208,"modelId":186,"published":13,"stageModifiedSincePublish":6,"query":209,"data":210,"variations":220,"lastUpdated":221,"firstPublished":222,"testRatio":23,"createdBy":24,"lastUpdatedBy":24,"folders":223,"meta":224,"rev":204},1776256949234,"ce043785b71b4ece98eac811ecf4ba10","inductive-automation",[],{"link":211,"type":117,"testimonial":212,"testimonialLink":118},{},{"@type":120,"id":121,"model":117,"value":213},{"query":214,"folders":215,"createdDate":125,"id":121,"name":126,"modelId":127,"published":13,"data":216,"variations":217,"lastUpdated":133,"firstPublished":134,"testRatio":23,"createdBy":100,"lastUpdatedBy":100,"meta":218,"rev":137},[],[],{"author":129,"jobTitle":130,"quote":126,"image":131},{},{"kind":28,"lastPreviewUrl":29,"breakpoints":219,"hasAutosaves":34},{"small":32,"medium":33},{},1776256974140,1776256974130,[],{"breakpoints":225,"kind":28,"lastPreviewUrl":29,"hasAutosaves":6},{"xsmall":31,"small":32,"medium":33},{"id":227,"title":228,"authorsCollection":229,"content":237,"extension":741,"faqItemsCollection":742,"faqTitle":62,"featured":6,"hashTags":62,"meta":744,"metaTitle":745,"ogImage":62,"publishedDate":746,"relatedBlogPostsCollection":747,"slug":2626,"stem":2627,"subtitle":62,"summary":2628,"synopsis":2639,"sys":2640,"tagsCollection":2643,"__hash__":2649},"blog/blog/introducing-aitm-phishing-toolkit-detection-powered-by-the-push-browser.json","Introducing AitM phishing toolkit detection, powered by the Push browser agent",{"items":230},[231],{"fullName":232,"firstName":233,"jobTitle":234,"profilePicture":235},"Kelly Davenport","Kelly","Product Team",{"url":236},"https://images.ctfassets.net/y1cdw1ablpvd/1hi8bEuVfn5sF57LivAq6d/9a3b82426c697d765e2e450e33a18424/kelly_profile_pic.jpeg",{"json":238,"links":673},{"nodeType":239,"data":240,"content":241},"document",{},[242,251,275,296,316,336,361,368,389,410,417,423,431,438,445,452,459,466,473,480,487,508,515,521,547,554,573,579,600,607,614,621,628,647,654],{"nodeType":243,"data":244,"content":250},"embedded-entry-block",{"target":245},{"sys":246},{"id":247,"type":248,"linkType":249},"B8i0EK90Dn7FLrJXR4ANh","Link","Entry",[],{"nodeType":252,"data":253,"content":254},"paragraph",{},[255,260,271],{"nodeType":256,"value":257,"marks":258,"data":259},"text","Is the golden era of MFA protection over? Watch a demo of an ",[],{},{"nodeType":261,"data":262,"content":266},"entry-hyperlink",{"target":263},{"sys":264},{"id":265,"type":248,"linkType":249},"7DJnckJxP4CXyXhPJJpby5",[267],{"nodeType":256,"value":268,"marks":269,"data":270},"EvilNoVNC phishing attack",[],{},{"nodeType":256,"value":272,"marks":273,"data":274}," and you may be left sweating a little and whispering “FIDO2” like a protection spell.",[],{},{"nodeType":252,"data":276,"content":277},{},[278,282,292],{"nodeType":256,"value":279,"marks":280,"data":281},"With the widespread adoption of MFA, attackers are ",[],{},{"nodeType":261,"data":283,"content":287},{"target":284},{"sys":285},{"id":286,"type":248,"linkType":249},"6XIts2UEnrsJDki8gKDXyI",[288],{"nodeType":256,"value":289,"marks":290,"data":291},"increasingly turning",[],{},{"nodeType":256,"value":293,"marks":294,"data":295}," to more sophisticated methods of credential theft as their initial point of entry. ",[],{},{"nodeType":252,"data":297,"content":298},{},[299,303,312],{"nodeType":256,"value":300,"marks":301,"data":302},"Newer phishing approaches include reverse proxies as well as tools that mimic legitimate login pages by rendering the webpages and then displaying those renders to the unsuspecting end-user. While these tools are not always common knowledge among blue teams, their use is ",[],{},{"nodeType":304,"data":305,"content":307},"hyperlink",{"uri":306},"https://www.lab539.com/blog/6-months-tracking-aitm-campaigns",[308],{"nodeType":256,"value":309,"marks":310,"data":311},"on the rise",[],{},{"nodeType":256,"value":313,"marks":314,"data":315},", an unsurprising response to the broad use of multi-factor authentication in many organizations.",[],{},{"nodeType":252,"data":317,"content":318},{},[319,323,332],{"nodeType":256,"value":320,"marks":321,"data":322},"What sets this generation of ",[],{},{"nodeType":261,"data":324,"content":327},{"target":325},{"sys":326},{"id":265,"type":248,"linkType":249},[328],{"nodeType":256,"value":329,"marks":330,"data":331},"Adversary-in-the-Middle (AitM) phishing tools",[],{},{"nodeType":256,"value":333,"marks":334,"data":335}," apart? ",[],{},{"nodeType":337,"data":338,"content":339},"unordered-list",{},[340,351],{"nodeType":341,"data":342,"content":343},"list-item",{},[344],{"nodeType":252,"data":345,"content":346},{},[347],{"nodeType":256,"value":348,"marks":349,"data":350},"They act as a proxy between the user and a legitimate web login page, allowing the attacker to bypass MFA and harvest credentials and session tokens.",[],{},{"nodeType":341,"data":352,"content":353},{},[354],{"nodeType":252,"data":355,"content":356},{},[357],{"nodeType":256,"value":358,"marks":359,"data":360},"They give off little scent to end-users, because the end-user is logging into the legitimate site, just by taking a detour via the attacker’s device.",[],{},{"nodeType":252,"data":362,"content":363},{},[364],{"nodeType":256,"value":365,"marks":366,"data":367},"These AitM tools are also difficult to detect — unless you have eyes in the browser.",[],{},{"nodeType":252,"data":369,"content":370},{},[371,375,385],{"nodeType":256,"value":372,"marks":373,"data":374},"Powered by the Push browser agent, Push now offers a ",[],{},{"nodeType":261,"data":376,"content":380},{"target":377},{"sys":378},{"id":379,"type":248,"linkType":249},"7KRnTSnJAbbiho69gNyN0B",[381],{"nodeType":256,"value":382,"marks":383,"data":384},"preconfigured set of detections",[],{},{"nodeType":256,"value":386,"marks":387,"data":388}," for phishing tools like Evilginx and others, informed by our threat detection team’s research into their behavior. This phishing tool detection feature will automatically prevent users from accessing a site that’s running one of these malicious tools, and display a custom warning message to your end-users.",[],{},{"nodeType":252,"data":390,"content":391},{},[392,396,406],{"nodeType":256,"value":393,"marks":394,"data":395},"While Push already provides strong phishing protection by ",[],{},{"nodeType":261,"data":397,"content":401},{"target":398},{"sys":399},{"id":400,"type":248,"linkType":249},"4UtRVoFElDduWJBx9Sa4Cw",[402],{"nodeType":256,"value":403,"marks":404,"data":405},"preventing SSO password use",[],{},{"nodeType":256,"value":407,"marks":408,"data":409}," on non-IdP webpages (in other words, it stops you from using your Okta password on any page that isn’t an Okta login page), this new feature allows us to sharpen our anti-phishing capabilities by detecting malware on a site before a user even interacts with the page. ",[],{},{"nodeType":252,"data":411,"content":412},{},[413],{"nodeType":256,"value":414,"marks":415,"data":416},"In this article, we’ll describe our approach to detecting these newer phishing tools, including how we’re borrowing techniques from the world of EDR, and how you can combine phishing tool detection with other Push controls for a defense-in-depth strategy that covers both the user and the application sides of the equation.",[],{},{"nodeType":243,"data":418,"content":422},{"target":419},{"sys":420},{"id":421,"type":248,"linkType":249},"59q6klX2j7ClgUvmix93sG",[],{"nodeType":424,"data":425,"content":426},"heading-1",{},[427],{"nodeType":256,"value":428,"marks":429,"data":430},"Taking a page from EDR",[],{},{"nodeType":252,"data":432,"content":433},{},[434],{"nodeType":256,"value":435,"marks":436,"data":437},"Most phishing prevention solutions rely on lists of known-bad sites as the source of intelligence. These are always going to be a step behind reality because they rely on ever-shifting secondary attributes such as domain names (though we won’t be disabling Chrome Safe Browsing anytime soon, and we’re not trying to replace it).",[],{},{"nodeType":252,"data":439,"content":440},{},[441],{"nodeType":256,"value":442,"marks":443,"data":444},"As veterans of the EDR world, we’re drawn to think in analogous terms. With detecting AitM phishing tools, that means expanding on the concept of dynamic analysis on the endpoint. EDR allows you to dynamically analyze the behavior of malware live and at scale, rather than focusing on easy-to-change indicators like file hashes or domain names.",[],{},{"nodeType":252,"data":446,"content":447},{},[448],{"nodeType":256,"value":449,"marks":450,"data":451},"Applying this idea to malware that runs in the browser requires a solution that is in the browser, like the Push browser agent.",[],{},{"nodeType":252,"data":453,"content":454},{},[455],{"nodeType":256,"value":456,"marks":457,"data":458},"So we’re expanding the attributes that are traditionally analyzed to spot indicators of compromise (IoCs) beyond domains, file names, file hashes, IP addresses, etc., to also include behavioral attributes of malware that are much harder to change, such as Javascript calls being made or data structures saved to local storage.",[],{},{"nodeType":252,"data":460,"content":461},{},[462],{"nodeType":256,"value":463,"marks":464,"data":465},"By performing behavioral analysis on AitM automated proxy tools, we can directly analyze the application for a precise and immediate identification. ",[],{},{"nodeType":252,"data":467,"content":468},{},[469],{"nodeType":256,"value":470,"marks":471,"data":472},"Push researchers are regularly identifying and adding detections for new toolkits — think of this like Push’s database of threat research in action.",[],{},{"nodeType":424,"data":474,"content":475},{},[476],{"nodeType":256,"value":477,"marks":478,"data":479},"How it works",[],{},{"nodeType":252,"data":481,"content":482},{},[483],{"nodeType":256,"value":484,"marks":485,"data":486},"If you’re new to Push, a bit of context may be useful. Push uses a browser agent deployed to employee browsers (we support all major browsers) to prevent, detect, and block identity attacks. ",[],{},{"nodeType":252,"data":488,"content":489},{},[490,494,504],{"nodeType":256,"value":491,"marks":492,"data":493},"By directly observing user behavior at the login event, Push provides broad and actionable context across all the apps your employees are using, how they are accessing them, their MFA methods, and where they’re using insecure and reused passwords. With this context as the foundation, Push enforces your desired ",[],{},{"nodeType":261,"data":495,"content":499},{"target":496},{"sys":497},{"id":498,"type":248,"linkType":249},"BtDLgVZRWQ3Ov4WgDQX1W",[500],{"nodeType":256,"value":501,"marks":502,"data":503},"security controls",[],{},{"nodeType":256,"value":505,"marks":506,"data":507},", including preventing SSO password reuse, blocking malicious websites, or steering employees to approved apps only.",[],{},{"nodeType":252,"data":509,"content":510},{},[511],{"nodeType":256,"value":512,"marks":513,"data":514},"Once configured by an administrator, phishing tool detection will immediately check for the fingerprints of these toolkits as end-users visit websites and then display your custom warn or block message. ",[],{},{"nodeType":243,"data":516,"content":520},{"target":517},{"sys":518},{"id":519,"type":248,"linkType":249},"1LdHJjTDlOiie5mctbAVvZ",[],{"nodeType":252,"data":522,"content":523},{},[524,528,534,538,543],{"nodeType":256,"value":525,"marks":526,"data":527},"In ",[],{},{"nodeType":256,"value":529,"marks":530,"data":533},"Block",[531],{"type":532},"bold",{},{"nodeType":256,"value":535,"marks":536,"data":537}," mode, users cannot proceed to the site where malicious software has been detected. In ",[],{},{"nodeType":256,"value":539,"marks":540,"data":542},"Warn",[541],{"type":532},{},{"nodeType":256,"value":544,"marks":545,"data":546}," mode, users can choose to proceed if they are sure it’s not a phishing site.",[],{},{"nodeType":252,"data":548,"content":549},{},[550],{"nodeType":256,"value":551,"marks":552,"data":553},"In both cases, users do not need to interact with a page (by typing, clicking, etc.) for Push to trigger the custom message. ",[],{},{"nodeType":252,"data":555,"content":556},{},[557,561,569],{"nodeType":256,"value":558,"marks":559,"data":560},"Administrators can also consume phishing tool detection events via the ",[],{},{"nodeType":304,"data":562,"content":564},{"uri":563},"https://pushsecurity.redoc.ly/rest-v1/",[565],{"nodeType":256,"value":566,"marks":567,"data":568},"Push REST API",[],{},{"nodeType":256,"value":570,"marks":571,"data":572}," into their SIEM or use Push’s webhooks to alert when a warn or block event has occurred.",[],{},{"nodeType":243,"data":574,"content":578},{"target":575},{"sys":576},{"id":577,"type":248,"linkType":249},"6oAhxLBPVxN3Rcw2kFeVtG",[],{"nodeType":252,"data":580,"content":581},{},[582,586,596],{"nodeType":256,"value":583,"marks":584,"data":585},"Pairing this phishing detection capability with Push’s ",[],{},{"nodeType":261,"data":587,"content":591},{"target":588},{"sys":589},{"id":590,"type":248,"linkType":249},"6FYHbkcRUrtznPo7RarRsz",[592],{"nodeType":256,"value":593,"marks":594,"data":595},"SSO password protection",[],{},{"nodeType":256,"value":597,"marks":598,"data":599}," feature provides a strong defense-in-depth strategy for stopping credential theft.",[],{},{"nodeType":252,"data":601,"content":602},{},[603],{"nodeType":256,"value":604,"marks":605,"data":606},"SSO password protection works by analyzing user behavior — namely, is a user entering their SSO password onto a page that does not belong to the legitimate identity provider.",[],{},{"nodeType":252,"data":608,"content":609},{},[610],{"nodeType":256,"value":611,"marks":612,"data":613},"Phishing tool detection adds in the application-level behavioral analysis. In addition, when Push identifies a new, previously unknown phishing tool in the wild via blocked SSO credential theft, we add its fingerprints to the browser agent’s detective capabilities.  ",[],{},{"nodeType":424,"data":615,"content":616},{},[617],{"nodeType":256,"value":618,"marks":619,"data":620},"Looking ahead",[],{},{"nodeType":252,"data":622,"content":623},{},[624],{"nodeType":256,"value":625,"marks":626,"data":627},"We’re just scratching the surface on this approach and are exploring how Push can identify and block other web-delivered malware and Javascript-based attack types beyond AitM tools. Think HTML smuggling, tabnabbing, and the like.",[],{},{"nodeType":252,"data":629,"content":630},{},[631,635,643],{"nodeType":256,"value":632,"marks":633,"data":634},"Got feedback? We’d ",[],{},{"nodeType":304,"data":636,"content":638},{"uri":637},"/contact/",[639],{"nodeType":256,"value":640,"marks":641,"data":642},"love to talk",[],{},{"nodeType":256,"value":644,"marks":645,"data":646},".",[],{},{"nodeType":424,"data":648,"content":649},{},[650],{"nodeType":256,"value":651,"marks":652,"data":653},"Find out more",[],{},{"nodeType":252,"data":655,"content":656},{},[657,661,669],{"nodeType":256,"value":658,"marks":659,"data":660},"To see Push in action, ",[],{},{"nodeType":304,"data":662,"content":664},{"uri":663},"https://pushsecurity.com/demo/",[665],{"nodeType":256,"value":666,"marks":667,"data":668},"book a demo",[],{},{"nodeType":256,"value":670,"marks":671,"data":672},". We’ll be happy to show you this feature, along with how we discover all the apps your employees are using, even the ones not behind SSO, and how we detect vulnerable identities and stop identity attacks with browser-based controls.",[],{},{"entries":674},{"inline":675,"hyperlink":676,"block":707},[],[677,682,686,692,696,702],{"sys":678,"__typename":679,"title":680,"slug":681},{"id":265},"BlogPosts","Phishing 2.0 – how phishing toolkits are evolving with AitM","phishing-2-0-how-phishing-toolkits-are-evolving-with-aitm",{"sys":683,"__typename":679,"title":684,"slug":685},{"id":286},"Tracking identity-based attacks in the wild","identity-attacks-in-the-wild",{"sys":687,"__typename":688,"title":689,"slug":690,"articleId":691},{"id":379},"HelpArticle","Can I use Push to detect phishing tools like Evilginx, Modlishka, NakedPages, or Muraena?","can-i-use-push-to-detect-phishing-tools-like-evilnovnc-and-evilginx",10113,{"sys":693,"__typename":679,"title":694,"slug":695},{"id":400},"Introducing SSO Password Protection: Stop employees’ IdP credentials being exposed or phished","introducing-sso-password-protection",{"sys":697,"__typename":698,"linkedFromParent":62,"title":699,"slug":700,"audience":701},{"id":498},"DocumentationPage","Manage security controls","manage-security-controls","administrators",{"sys":703,"__typename":688,"title":704,"slug":705,"articleId":706},{"id":590},"How does Push protect passwords from being reused or phished?","how-does-push-detect-and-prevent-phishing-attacks",10109,[708,717,725,734],{"sys":709,"__typename":710,"title":711,"youTubeUrl":712,"imagePlaceholder":713},{"id":247},"ExternalVideo","Introducing phishing toolkit detection with Push: Detect AitM and BitM toolkits","https://www.youtube.com/watch?v=em8H0VOezqM",{"url":714,"width":715,"height":716},"https://images.ctfassets.net/y1cdw1ablpvd/44uW8syU7RcxSx5kI2y0yO/469cb925808f74196b57b6ae209888de/Screenshot_2024-08-15_at_07.11.23.png",3372,1898,{"sys":718,"__typename":719,"type":720,"ctaText":721,"buttonLabel":722,"buttonColour":723,"buttonUrl":724},{"id":421},"CtaWidget","Custom","Learn more about AitM phishing toolkits in our on-demand webinar","Watch Now","sea blue","https://pushsecurity.com/resources/video/phishing-detecting-evilginx-evilnovnc-muraena-and-modlishka/",{"sys":726,"__typename":727,"title":728,"caption":729,"layoutMode":62,"file":730},{"id":519},"Image","Phishing toolkit block page - KB 10113","Customizable block page",{"url":731,"width":732,"height":733},"https://images.ctfassets.net/y1cdw1ablpvd/7hGVqcQYa0xqDQa8uVBFim/665e8f7141bd272ea7b88ecf6a28de67/phishing_tool_blockpage.png",1440,767,{"sys":735,"__typename":727,"title":736,"caption":62,"layoutMode":62,"file":737},{"id":577},"Evilginx and EvilnoVNC",{"url":738,"width":739,"height":740},"https://images.ctfassets.net/y1cdw1ablpvd/5x785N81GKYzByJoSNIYE0/12da45107348238316b9c5d6350b9d05/Image1__4_-min.png",1336,977,"json",{"items":743},[],{},"Detect and block phishing tools with the Push browser agent","2024-06-06T00:00:00.000Z",{"items":748},[749,1619,2072],{"__typename":679,"sys":750,"content":751,"title":680,"synopsis":1599,"hashTags":62,"publishedDate":1600,"slug":681,"tagsCollection":1601,"authorsCollection":1611},{"id":265},{"json":752},{"nodeType":239,"data":753,"content":754},{},[755,762,769,776,783,790,797,804,811,818,824,832,839,846,905,912,919,939,946,953,960,993,1009,1016,1023,1030,1037,1044,1051,1071,1091,1199,1206,1226,1233,1240,1247,1253,1260,1267,1274,1306,1313,1320,1353,1360,1367,1464,1483,1490,1497,1504,1511,1570,1577,1581,1588,1593],{"nodeType":252,"data":756,"content":757},{},[758],{"nodeType":256,"value":759,"marks":760,"data":761},"Phishing attacks have always been a go-to technique for both red teamers and real-world threat actors alike. Whether focused on harvesting creds or running malicious payloads, phishing has continued to be adapted to circumvent defenses and has remained highly effective due to this.",[],{},{"nodeType":252,"data":763,"content":764},{},[765],{"nodeType":256,"value":766,"marks":767,"data":768},"As MFA has become more common, classic password harvesting focused phishing attacks have become less effective. Typically, for a full account compromise, an MFA push notification or a one-time passcode (OTP) needs to be entered at the time of login. This means harvesting passwords and using them later is no longer effective alone, because an MFA factor is still required each time a valid login is performed.",[],{},{"nodeType":252,"data":770,"content":771},{},[772],{"nodeType":256,"value":773,"marks":774,"data":775},"Adversary-in-the-Middle (AitM) phishing is a newer variant of phishing that allows attackers to circumvent MFA protection. In this article, we’re going to look at what AitM phishing is, how it works, and what you can do about it.",[],{},{"nodeType":424,"data":777,"content":778},{},[779],{"nodeType":256,"value":780,"marks":781,"data":782},"What is AitM phishing?",[],{},{"nodeType":252,"data":784,"content":785},{},[786],{"nodeType":256,"value":787,"marks":788,"data":789},"AitM phishing is a technique that uses dedicated tooling to act as a proxy between the target and a legitimate login portal for an application, principally to make it easier to defeat MFA protection. ",[],{},{"nodeType":252,"data":791,"content":792},{},[793],{"nodeType":256,"value":794,"marks":795,"data":796},"While any login portal can be a target, attackers typically look for SSO login portals such as Microsoft Entra, Okta, or Google Workspace. This allows the target to log in successfully with a legitimate service they use and even continue to interact with it, while providing additional access to connected SSO apps if the attack is successful. ",[],{},{"nodeType":252,"data":798,"content":799},{},[800],{"nodeType":256,"value":801,"marks":802,"data":803},"As it’s a proxy to the real application, the page will appear exactly as the user expects, because they are logging into the legitimate site – just taking a detour via the attacker’s device. For example, if accessing their webmail, the user will see all their real emails; if accessing their cloud file store then all their real files will be present, etc. This gives the method an increased sense of authenticity and makes the compromise less obvious to the user. However, because the attacker is sitting in the middle of this connection, they are able to observe all interactions and also take control of the authenticated session to gain control of the user account. ",[],{},{"nodeType":252,"data":805,"content":806},{},[807],{"nodeType":256,"value":808,"marks":809,"data":810},"While this access is technically temporary, since the attacker is unable to re-authenticate in future without additional MFA prompts, in practice authenticated sessions can often last as long as 30 days or more if kept active. Additionally, there are a wide range of persistence techniques that allow an attacker to maintain some level of access to the user account and/or targeted application indefinitely. ",[],{},{"nodeType":252,"data":812,"content":813},{},[814],{"nodeType":256,"value":815,"marks":816,"data":817},"We’ll revisit this point later, but for now let’s consider the two main techniques that are used to implement AitM phishing: Reverse web proxies and Browser-in-the-Middle techniques.",[],{},{"nodeType":243,"data":819,"content":823},{"target":820},{"sys":821},{"id":822,"type":248,"linkType":249},"6WEolDcviadCgAW4dCgTPW",[],{"nodeType":825,"data":826,"content":827},"heading-2",{},[828],{"nodeType":256,"value":829,"marks":830,"data":831},"Reverse web proxy techniques",[],{},{"nodeType":252,"data":833,"content":834},{},[835],{"nodeType":256,"value":836,"marks":837,"data":838},"One common AitM phishing approach is to use tooling that acts as a reverse web proxy. For example, let’s say a victim is tricked into visiting a malicious domain. Under the hood, HTTP requests are passed between the victim’s browser and the real site via the malicious site. When the malicious site receives an HTTP request, it forwards this request on to the legitimate site it is impersonating, receives the response, and then forwards that on to the victim. ",[],{},{"nodeType":252,"data":840,"content":841},{},[842],{"nodeType":256,"value":843,"marks":844,"data":845},"In practice, there are many technical challenges, such as rewriting all links and references to the impersonated site to ensure everything continues to be sent to the attacker. However, at a high level, it really is just acting as a reverse web proxy.",[],{},{"nodeType":252,"data":847,"content":848},{},[849,853,863,867,876,880,889,893,902],{"nodeType":256,"value":850,"marks":851,"data":852},"This is arguably the most scalable and reliable approach from an attacker’s point of view. Open-source tools that demonstrate this method include ",[],{},{"nodeType":304,"data":854,"content":856},{"uri":855},"https://github.com/drk1wi/Modlishka",[857],{"nodeType":256,"value":858,"marks":859,"data":862},"Modlishka",[860],{"type":861},"underline",{},{"nodeType":256,"value":864,"marks":865,"data":866},", ",[],{},{"nodeType":304,"data":868,"content":870},{"uri":869},"https://github.com/muraenateam/muraena",[871],{"nodeType":256,"value":872,"marks":873,"data":875},"Muraena",[874],{"type":861},{},{"nodeType":256,"value":877,"marks":878,"data":879},", and the ever popular ",[],{},{"nodeType":304,"data":881,"content":883},{"uri":882},"https://github.com/kgretzky/evilginx2",[884],{"nodeType":256,"value":885,"marks":886,"data":888},"Evilginx",[887],{"type":861},{},{"nodeType":256,"value":890,"marks":891,"data":892},". In the criminal world, there are also similar private toolsets available that have been used in many breaches in the past. A good example of this would be ",[],{},{"nodeType":304,"data":894,"content":896},{"uri":895},"https://www.bleepingcomputer.com/news/security/evilproxy-uses-indeedcom-open-redirect-for-microsoft-365-phishing/",[897],{"nodeType":256,"value":898,"marks":899,"data":901},"Evilproxy",[900],{"type":861},{},{"nodeType":256,"value":644,"marks":903,"data":904},[],{},{"nodeType":252,"data":906,"content":907},{},[908],{"nodeType":256,"value":909,"marks":910,"data":911},"One downside to this approach is that there are controls that can be put in place to block it. For example, application developers can hide obfuscated JavaScript code that will fail if the correct value is not produced, checking that the origin matches the expected (legitimate) domains or contains encrypted tokens including this material sent as part of the login process. ",[],{},{"nodeType":252,"data":913,"content":914},{},[915],{"nodeType":256,"value":916,"marks":917,"data":918},"While your average small website is not going to be implementing such checks, major identity providers have a strong vested interest in evolving their defenses to block these techniques. At this point, it’s a cat-and-mouse game. ",[],{},{"nodeType":252,"data":920,"content":921},{},[922,926,935],{"nodeType":256,"value":923,"marks":924,"data":925},"If you want to know more about this space, then definitely check out ",[],{},{"nodeType":304,"data":927,"content":929},{"uri":928},"https://www.youtube.com/watch?v=C-Fh4sIdY8c",[930],{"nodeType":256,"value":931,"marks":932,"data":934},"Kuba Gretzky’s talk on this at x33fcon",[933],{"type":861},{},{"nodeType":256,"value":936,"marks":937,"data":938},".  ",[],{},{"nodeType":825,"data":940,"content":941},{},[942],{"nodeType":256,"value":943,"marks":944,"data":945},"Browser-in-the-Middle (BitM) techniques ",[],{},{"nodeType":252,"data":947,"content":948},{},[949],{"nodeType":256,"value":950,"marks":951,"data":952},"Another common approach is known as Browser-in-the-Middle (BitM). Rather than act as a reverse web proxy, this technique tricks a target into directly controlling the attacker’s own browser remotely using desktop screen sharing and control approaches, much like VNC and RDP. This enables the attacker to harvest not just the username and password, but all other associated secrets and tokens that go along with the login. ",[],{},{"nodeType":252,"data":954,"content":955},{},[956],{"nodeType":256,"value":957,"marks":958,"data":959},"In this case, the victim isn’t interacting with a fake website clone or proxy. They are literally remotely controlling the attacker’s browser to log in to the legitimate application without realizing. This is the virtual equivalent of an attacker handing their laptop to their victim, asking them to login to Okta for them, and then taking their laptop back afterwards. Thanks very much!",[],{},{"nodeType":252,"data":961,"content":962},{},[963,967,976,980,989],{"nodeType":256,"value":964,"marks":965,"data":966},"Practically speaking, the most common approach for implementing this technique is using the open-source project noVNC, which is a JavaScript-based VNC client that allows VNC to be used in the browser. Probably the most well-known example of an offensive tool implementing this is ",[],{},{"nodeType":304,"data":968,"content":970},{"uri":969},"https://github.com/JoelGMSec/EvilnoVNC",[971],{"nodeType":256,"value":972,"marks":973,"data":975},"EvilnoVNC",[974],{"type":861},{},{"nodeType":256,"value":977,"marks":978,"data":979},", which spins up Docker instances of VNC and proxies access to them, while also logging keystrokes and cookies to facilitate account compromise. Tools like ",[],{},{"nodeType":304,"data":981,"content":983},{"uri":982},"https://posts.specterops.io/phishing-with-dynamite-7d33d8fac038",[984],{"nodeType":256,"value":985,"marks":986,"data":988},"Cuddlephish",[987],{"type":861},{},{"nodeType":256,"value":990,"marks":991,"data":992}," offer similar functionality using WebRTC. ",[],{},{"nodeType":252,"data":994,"content":995},{},[996,1000,1005],{"nodeType":256,"value":997,"marks":998,"data":999},"The advantage of this approach is that ",[],{},{"nodeType":256,"value":1001,"marks":1002,"data":1004},"it is incredibly difficult for the target websites to do anything to stop it",[1003],{"type":532},{},{"nodeType":256,"value":1006,"marks":1007,"data":1008},". From their perspective, all they see is a legitimate browser accessing their website and logging in. None of the JavaScript tricks for checking the origin will work. They aren’t in a position to be able to see that the browser is secretly being controlled remotely by the victim user without their knowledge. ",[],{},{"nodeType":252,"data":1010,"content":1011},{},[1012],{"nodeType":256,"value":1013,"marks":1014,"data":1015},"On the downside, while noVNC can be extremely convincing, the illusion can sometimes be broken due to it not behaving exactly like a real website would due it being a graphical rendering. For example, something as simple as resizing the browser window can introduce render resolution issues. It’s also more difficult to scale for attacking large numbers of users than a reverse proxy technique.",[],{},{"nodeType":252,"data":1017,"content":1018},{},[1019],{"nodeType":256,"value":1020,"marks":1021,"data":1022},"Footnote: BitM is not to be confused with Browser-in-the-Browser (BitB), which is more of a malicious pop-up (think when a login button spawns a new browser window). ",[],{},{"nodeType":424,"data":1024,"content":1025},{},[1026],{"nodeType":256,"value":1027,"marks":1028,"data":1029},"Beyond initial access",[],{},{"nodeType":252,"data":1031,"content":1032},{},[1033],{"nodeType":256,"value":1034,"marks":1035,"data":1036},"So maybe you’re thinking now “OK, sounds kinda bad, but I’m not that worried. Maybe some user accounts get compromised by this method despite all my MFA protections, but at least the attacker only has temporary access, right?” ",[],{},{"nodeType":252,"data":1038,"content":1039},{},[1040],{"nodeType":256,"value":1041,"marks":1042,"data":1043},"In theory, access is temporary as sessions time out. And if spotted, the security team can respond by killing the authenticated sessions and forcing password changes for the compromised users. Then the attacker is back to square one, right? Their session is lost, they still don’t have MFA, and even the password they keylogged has now been changed.",[],{},{"nodeType":252,"data":1045,"content":1046},{},[1047],{"nodeType":256,"value":1048,"marks":1049,"data":1050},"In practice, it’s not this simple. We mentioned earlier how SSO portals are often the most common targets for these attacks. For most modern organizations, this means their core identity provider, which just so happens to be the gateway to accessing many other web applications, whether internal applications or a multitude of SaaS applications. ",[],{},{"nodeType":252,"data":1052,"content":1053},{},[1054,1058,1067],{"nodeType":256,"value":1055,"marks":1056,"data":1057},"Let’s consider the example of an organization using Okta where their Okta login portal has been used as the target for AitM phishing. A smart attacker is going to immediately leverage this access to establish authenticated sessions on every single application that Okta provides the user access to. They are also going to ",[],{},{"nodeType":304,"data":1059,"content":1061},{"uri":1060},"https://pushsecurity.com/blog/okta-swa/",[1062],{"nodeType":256,"value":1063,"marks":1064,"data":1066},"abuse Okta SWA",[1065],{"type":861},{},{"nodeType":256,"value":1068,"marks":1069,"data":1070}," to steal valid credentials for whichever applications support this method. And if that’s not enough, there are a variety of simple methods to achieve persistence on most downstream SaaS applications and sometimes even identity providers themselves.",[],{},{"nodeType":252,"data":1072,"content":1073},{},[1074,1078,1087],{"nodeType":256,"value":1075,"marks":1076,"data":1077},"While the full details of these persistence attacks are outside the scope of this article, more details on some key attacks can be found in a resource we created called the ",[],{},{"nodeType":304,"data":1079,"content":1081},{"uri":1080},"https://github.com/pushsecurity/saas-attacks",[1082],{"nodeType":256,"value":1083,"marks":1084,"data":1086},"SaaS attacks matrix",[1085],{"type":861},{},{"nodeType":256,"value":1088,"marks":1089,"data":1090},". Some of the most common techniques that apply here are: ",[],{},{"nodeType":337,"data":1092,"content":1093},{},[1094,1115,1136,1157,1178],{"nodeType":341,"data":1095,"content":1096},{},[1097],{"nodeType":252,"data":1098,"content":1099},{},[1100,1103,1112],{"nodeType":256,"value":29,"marks":1101,"data":1102},[],{},{"nodeType":304,"data":1104,"content":1106},{"uri":1105},"https://github.com/pushsecurity/saas-attacks/blob/main/techniques/api_keys/description.md",[1107],{"nodeType":256,"value":1108,"marks":1109,"data":1111},"SAT1004 - API keys",[1110],{"type":861},{},{"nodeType":256,"value":29,"marks":1113,"data":1114},[],{},{"nodeType":341,"data":1116,"content":1117},{},[1118],{"nodeType":252,"data":1119,"content":1120},{},[1121,1124,1133],{"nodeType":256,"value":29,"marks":1122,"data":1123},[],{},{"nodeType":304,"data":1125,"content":1127},{"uri":1126},"https://github.com/pushsecurity/saas-attacks/blob/main/techniques/link_sharing/description.md",[1128],{"nodeType":256,"value":1129,"marks":1130,"data":1132},"SAT1022 - Link sharing",[1131],{"type":861},{},{"nodeType":256,"value":29,"marks":1134,"data":1135},[],{},{"nodeType":341,"data":1137,"content":1138},{},[1139],{"nodeType":252,"data":1140,"content":1141},{},[1142,1145,1154],{"nodeType":256,"value":29,"marks":1143,"data":1144},[],{},{"nodeType":304,"data":1146,"content":1148},{"uri":1147},"https://github.com/pushsecurity/saas-attacks/blob/main/techniques/ghost_logins/description.md",[1149],{"nodeType":256,"value":1150,"marks":1151,"data":1153},"SAT1017 - Ghost logins",[1152],{"type":861},{},{"nodeType":256,"value":29,"marks":1155,"data":1156},[],{},{"nodeType":341,"data":1158,"content":1159},{},[1160],{"nodeType":252,"data":1161,"content":1162},{},[1163,1166,1175],{"nodeType":256,"value":29,"marks":1164,"data":1165},[],{},{"nodeType":304,"data":1167,"content":1169},{"uri":1168},"https://github.com/pushsecurity/saas-attacks/blob/main/techniques/oauth_tokens/description.md",[1170],{"nodeType":256,"value":1171,"marks":1172,"data":1174},"SAT1027 - OAuth tokens",[1173],{"type":861},{},{"nodeType":256,"value":29,"marks":1176,"data":1177},[],{},{"nodeType":341,"data":1179,"content":1180},{},[1181],{"nodeType":252,"data":1182,"content":1183},{},[1184,1187,1196],{"nodeType":256,"value":29,"marks":1185,"data":1186},[],{},{"nodeType":304,"data":1188,"content":1190},{"uri":1189},"https://github.com/pushsecurity/saas-attacks/blob/main/techniques/shadow_workflows/description.md",[1191],{"nodeType":256,"value":1192,"marks":1193,"data":1195},"SAT1033 - Shadow workflows",[1194],{"type":861},{},{"nodeType":256,"value":29,"marks":1197,"data":1198},[],{},{"nodeType":252,"data":1200,"content":1201},{},[1202],{"nodeType":256,"value":1203,"marks":1204,"data":1205},"Suddenly, containing the breach just got a LOT more complicated.",[],{},{"nodeType":252,"data":1207,"content":1208},{},[1209,1213,1222],{"nodeType":256,"value":1210,"marks":1211,"data":1212},"It’s not just application-level lateral movement and persistence to worry about, though. It’s possible the attacker can start moving laterally across other user accounts. If they have selected their targets well, they might even find they have admin access to some downstream SaaS application that has been configured for SAML logins using Okta. For example, maybe they compromise a finance employee who has admin access to their business expenses SaaS application. Then the attacker might be able to use a new technique like ",[],{},{"nodeType":304,"data":1214,"content":1216},{"uri":1215},"https://github.com/pushsecurity/saas-attacks/blob/main/techniques/samljacking/description.md",[1217],{"nodeType":256,"value":1218,"marks":1219,"data":1221},"SAMLjacking",[1220],{"type":861},{},{"nodeType":256,"value":1223,"marks":1224,"data":1225}," to start attacking other users in a watering hole attack to achieve lateral movement.",[],{},{"nodeType":424,"data":1227,"content":1228},{},[1229],{"nodeType":256,"value":1230,"marks":1231,"data":1232},"Video demo – chaining it all together",[],{},{"nodeType":252,"data":1234,"content":1235},{},[1236],{"nodeType":256,"value":1237,"marks":1238,"data":1239},"OK, so we’ve just jumped from an account compromise for initial access using an AitM phishing attack to bringing up a huge number of other connected techniques. Let’s look at a quick video demonstration of an AitM phishing attack chained together with post-exploitation steps for persistence and lateral movement so we can see how it all fits together.",[],{},{"nodeType":252,"data":1241,"content":1242},{},[1243],{"nodeType":256,"value":1244,"marks":1245,"data":1246},"In this case, we’ll use EvilnoVNC targeting Okta as the core example for the AitM phishing attack:",[],{},{"nodeType":243,"data":1248,"content":1252},{"target":1249},{"sys":1250},{"id":1251,"type":248,"linkType":249},"QGTEWzmOL1vrgjXPuV4Gg",[],{"nodeType":252,"data":1254,"content":1255},{},[1256],{"nodeType":256,"value":1257,"marks":1258,"data":1259},"We can see here that AitM phishing attacks are not only highly effective even in the presence of MFA, but that post-exploitation steps have become so numerous that effective response and containment for even a low-privileged user account are now a significant challenge.",[],{},{"nodeType":424,"data":1261,"content":1262},{},[1263],{"nodeType":256,"value":1264,"marks":1265,"data":1266},"Post-exploitation automation is coming",[],{},{"nodeType":252,"data":1268,"content":1269},{},[1270],{"nodeType":256,"value":1271,"marks":1272,"data":1273},"There is a saying that attacks only become more effective over time. In the past, toolsets like Metasploit and Cobalt Strike became increasingly focused on post-exploitation and automation to enable much more sophisticated compromises.",[],{},{"nodeType":252,"data":1275,"content":1276},{},[1277,1281,1293,1297,1302],{"nodeType":256,"value":1278,"marks":1279,"data":1280},"As AitM becomes increasingly popular (for example, researchers at Lab539 have reported ",[],{},{"nodeType":304,"data":1282,"content":1283},{"uri":306},[1284,1289],{"nodeType":256,"value":1285,"marks":1286,"data":1288},"a significant ramp up in attacker infrastructure linked to AitM campaigns",[1287],{"type":861},{},{"nodeType":256,"value":1290,"marks":1291,"data":1292},")",[],{},{"nodeType":256,"value":1294,"marks":1295,"data":1296}," it’s only a matter of time now before we see AitM phishing frameworks moving in the same direction and performing many of the lateral movement and persistence steps we saw above – automatically on every successful account compromise. The threat will increase ",[],{},{"nodeType":256,"value":1298,"marks":1299,"data":1301},"significantly",[1300],{"type":532},{},{"nodeType":256,"value":1303,"marks":1304,"data":1305}," when this becomes the case.",[],{},{"nodeType":424,"data":1307,"content":1308},{},[1309],{"nodeType":256,"value":1310,"marks":1311,"data":1312},"Impact summary",[],{},{"nodeType":252,"data":1314,"content":1315},{},[1316],{"nodeType":256,"value":1317,"marks":1318,"data":1319},"We’ve covered a lot of ground here, so let’s take a step back and consider the key points of impact:",[],{},{"nodeType":337,"data":1321,"content":1322},{},[1323,1333,1343],{"nodeType":341,"data":1324,"content":1325},{},[1326],{"nodeType":252,"data":1327,"content":1328},{},[1329],{"nodeType":256,"value":1330,"marks":1331,"data":1332},"AitM phishing techniques are highly effective and increasingly common, and can bypass most common forms of MFA.",[],{},{"nodeType":341,"data":1334,"content":1335},{},[1336],{"nodeType":252,"data":1337,"content":1338},{},[1339],{"nodeType":256,"value":1340,"marks":1341,"data":1342},"These techniques are being used by real threat actors and red teamers alike, with both criminal and open-source tools available for performing these attacks.",[],{},{"nodeType":341,"data":1344,"content":1345},{},[1346],{"nodeType":252,"data":1347,"content":1348},{},[1349],{"nodeType":256,"value":1350,"marks":1351,"data":1352},"There are many options for lateral movement and persistence after an account compromise, so simple containment actions like password resets for SSO credentials are not nearly enough to contain a knowledgeable attacker.",[],{},{"nodeType":424,"data":1354,"content":1355},{},[1356],{"nodeType":256,"value":1357,"marks":1358,"data":1359},"What can blue teams do about it?",[],{},{"nodeType":252,"data":1361,"content":1362},{},[1363],{"nodeType":256,"value":1364,"marks":1365,"data":1366},"It’s important that organizations develop their capability to detect and respond to AitM attacks. Possible approaches include:",[],{},{"nodeType":337,"data":1368,"content":1369},{},[1370,1385,1421,1449],{"nodeType":341,"data":1371,"content":1372},{},[1373],{"nodeType":252,"data":1374,"content":1375},{},[1376,1381],{"nodeType":256,"value":1377,"marks":1378,"data":1380},"Move to FIDO MFA where possible",[1379],{"type":532},{},{"nodeType":256,"value":1382,"marks":1383,"data":1384}," (though, if no more susceptible backup methods are enabled, this does introduce operational challenges if passkeys are lost).",[],{},{"nodeType":341,"data":1386,"content":1387},{},[1388],{"nodeType":252,"data":1389,"content":1390},{},[1391,1396,1400,1405,1409,1418],{"nodeType":256,"value":1392,"marks":1393,"data":1395},"Detect and block known-bad malicious",[1394],{"type":532},{},{"nodeType":256,"value":1397,"marks":1398,"data":1399}," ",[],{},{"nodeType":256,"value":1401,"marks":1402,"data":1404},"sites",[1403],{"type":532},{},{"nodeType":256,"value":1406,"marks":1407,"data":1408}," used in phishing campaigns. There are many threat intelligence feeds that can be ingested to achieve this. Usually, a domain has to be used in a malicious campaign before it can be catalogued – meaning there's typically a window of opportunity before the infrastructure is burned. That said, security researchers at Lab539 (yes, another shout out) have developed a way of identifying sites running AitM tooling – even before they are used for the first time. ",[],{},{"nodeType":304,"data":1410,"content":1412},{"uri":1411},"https://www.lab539.com/aitm",[1413],{"nodeType":256,"value":1414,"marks":1415,"data":1417},"You can sign up to get access to their feed here.",[1416],{"type":861},{},{"nodeType":256,"value":29,"marks":1419,"data":1420},[],{},{"nodeType":341,"data":1422,"content":1423},{},[1424],{"nodeType":252,"data":1425,"content":1426},{},[1427,1432,1436,1445],{"nodeType":256,"value":1428,"marks":1429,"data":1431},"Introduce controls to detect phishing toolkits and cloned websites",[1430],{"type":532},{},{"nodeType":256,"value":1433,"marks":1434,"data":1435},". You can never rely on blocking malicious sites via TI feeds alone, so additional layers of defence are required. Push customers benefit from detection of AitM toolkits like Evilginx and EvilNoVNC in the browser (more to come on this soon!), while Thinkst Canary has developed ",[],{},{"nodeType":304,"data":1437,"content":1439},{"uri":1438},"https://blog.thinkst.com/2024/01/defending-against-the-attack-of-the-cloned-websites.html",[1440],{"nodeType":256,"value":1441,"marks":1442,"data":1444},"methods of detecting whenever your website or login portal is cloned",[1443],{"type":861},{},{"nodeType":256,"value":1446,"marks":1447,"data":1448}," – very cool.  ",[],{},{"nodeType":341,"data":1450,"content":1451},{},[1452],{"nodeType":252,"data":1453,"content":1454},{},[1455,1460],{"nodeType":256,"value":1456,"marks":1457,"data":1459},"Update IR playbooks to to deal with SSO account compromise,",[1458],{"type":532},{},{"nodeType":256,"value":1461,"marks":1462,"data":1463}," factoring in lateral movement and persistence across cloud apps. This really necessitates that you understand what business apps your organization is using, how they are accessed (e.g. SSO or username and password) and what functionality exists that could be abused by an attacker. ",[],{},{"nodeType":252,"data":1465,"content":1466},{},[1467,1471,1479],{"nodeType":256,"value":1468,"marks":1469,"data":1470},"If you want to know more about how Push detects and blocks phishing tools in the browser, you can ",[],{},{"nodeType":304,"data":1472,"content":1474},{"uri":1473},"https://pushsecurity.com/blog/introducing-aitm-phishing-toolkit-detection-powered-by-the-push-browser/",[1475],{"nodeType":256,"value":1476,"marks":1477,"data":1478},"check out our article here",[],{},{"nodeType":256,"value":1480,"marks":1481,"data":1482},". ",[],{},{"nodeType":424,"data":1484,"content":1485},{},[1486],{"nodeType":256,"value":1487,"marks":1488,"data":1489},"Conclusion",[],{},{"nodeType":252,"data":1491,"content":1492},{},[1493],{"nodeType":256,"value":1494,"marks":1495,"data":1496},"We’ve seen in this article how there are multiple ways to perform AitM phishing attacks and how they can be extremely effective at targeting users even when their accounts are protected by MFA.  ",[],{},{"nodeType":252,"data":1498,"content":1499},{},[1500],{"nodeType":256,"value":1501,"marks":1502,"data":1503},"Very few organizations are universally using phishing-resistant MFA, such as FIDO-based methods, and even those that do often have fallback options to handle situations where they cannot be used and/or tokens malfunction or are lost. Therefore, the vast majority of organizations are at risk of AitM phishing attacks.",[],{},{"nodeType":252,"data":1505,"content":1506},{},[1507],{"nodeType":256,"value":1508,"marks":1509,"data":1510},"To make things worse, there are lateral movement and persistence techniques that can be exploited to greatly extend the depth of compromise even for a single low-privilege user account. This makes response and containment a significant challenge.",[],{},{"nodeType":252,"data":1512,"content":1513},{},[1514,1518,1527,1531,1540,1544,1553,1557,1566],{"nodeType":256,"value":1515,"marks":1516,"data":1517},"Phishing attacks are clearly evolving. Phishing attacks are no longer limited to email-based delivery mechanisms or being hosted on custom domains. There are many options now for delivering phishing attacks using ",[],{},{"nodeType":304,"data":1519,"content":1521},{"uri":1520},"https://pushsecurity.com/blog/slack-phishing-for-initial-access/",[1522],{"nodeType":256,"value":1523,"marks":1524,"data":1526},"Slack",[1525],{"type":861},{},{"nodeType":256,"value":1528,"marks":1529,"data":1530}," or ",[],{},{"nodeType":304,"data":1532,"content":1534},{"uri":1533},"https://pushsecurity.com/blog/phishing-microsoft-teams-for-initial-access/",[1535],{"nodeType":256,"value":1536,"marks":1537,"data":1539},"Microsoft Teams",[1538],{"type":861},{},{"nodeType":256,"value":1541,"marks":1542,"data":1543},", using ",[],{},{"nodeType":304,"data":1545,"content":1547},{"uri":1546},"https://pushsecurity.com/blog/samljacking-a-poisoned-tenant/",[1548],{"nodeType":256,"value":1549,"marks":1550,"data":1552},"SAMLjacking attacks",[1551],{"type":861},{},{"nodeType":256,"value":1554,"marks":1555,"data":1556}," to host the initial landing page on legitimate SaaS web domains or even using ",[],{},{"nodeType":304,"data":1558,"content":1560},{"uri":1559},"https://pushsecurity.com/blog/oktajacking/",[1561],{"nodeType":256,"value":1562,"marks":1563,"data":1565},"Okta to keylog credentials",[1564],{"type":861},{},{"nodeType":256,"value":1567,"marks":1568,"data":1569}," on behalf of the attacker. ",[],{},{"nodeType":252,"data":1571,"content":1572},{},[1573],{"nodeType":256,"value":1574,"marks":1575,"data":1576},"Increasingly, we should expect to see AitM toolkits being used as a standard part of phishing campaigns, and featured in Initial Access Broker tooling – AitM will effectively supersede legacy phishing methods in line with MFA adoption. Rather, it already is. ",[],{},{"nodeType":1578,"data":1579,"content":1580},"hr",{},[],{"nodeType":252,"data":1582,"content":1583},{},[1584],{"nodeType":256,"value":1585,"marks":1586,"data":1587},"If you're interested in seeing some more AitM tools in action, you can watch our recent webinar on-demand via the link below. ",[],{},{"nodeType":243,"data":1589,"content":1592},{"target":1590},{"sys":1591},{"id":822,"type":248,"linkType":249},[],{"nodeType":252,"data":1594,"content":1595},{},[1596],{"nodeType":256,"value":29,"marks":1597,"data":1598},[],{},"Attackers are using Adversary in the Middle (AitM) phishing toolkits to bypass MFA. We look at what AitM is, how it works, and what you can do about it.","2024-05-23T00:00:00.000Z",{"items":1602},[1603,1607],{"sys":1604,"name":1606},{"id":1605},"6A5RXS31ZQx3PwryGb1IMy","Browser-based attacks",{"sys":1608,"name":1610},{"id":1609},"4ksQNCFeBf8H4QIORqpRLw","Detection & response",{"items":1612},[1613],{"fullName":1614,"firstName":1615,"jobTitle":1616,"profilePicture":1617},"Luke Jennings","Luke","Vice President, R&D",{"url":1618},"https://images.ctfassets.net/y1cdw1ablpvd/4Hosb4zKi1dA0PUyDLMe1h/27e09d894861f2196ba794037986fb08/T016S22KZ96-U02NVQM7ZD4-57761d542d83-512.jpeg",{"__typename":679,"sys":1620,"content":1622,"title":2054,"synopsis":2055,"hashTags":62,"publishedDate":2056,"slug":2057,"tagsCollection":2058,"authorsCollection":2064},{"id":1621},"liumWpzvwXGmwbtKrvJdO",{"json":1623},{"data":1624,"content":1625,"nodeType":239},{},[1626,1633,1695,1702,1718,1733,1740,1746,1764,1771,1787,1794,1800,1818,1825,1850,1865,1883,1890,1905,1921,1927,1945,1952,1977,1983,2001,2008,2038],{"data":1627,"content":1628,"nodeType":825},{},[1629],{"data":1630,"marks":1631,"value":1632,"nodeType":256},{},[],"What’s new this month:",{"data":1634,"content":1635,"nodeType":337},{},[1636,1645,1655,1665,1675,1685],{"data":1637,"content":1638,"nodeType":341},{},[1639],{"data":1640,"content":1641,"nodeType":252},{},[1642],{"data":1643,"marks":1644,"value":593,"nodeType":256},{},[],{"data":1646,"content":1647,"nodeType":341},{},[1648],{"data":1649,"content":1650,"nodeType":252},{},[1651],{"data":1652,"marks":1653,"value":1654,"nodeType":256},{},[],"Phishing tool detection",{"data":1656,"content":1657,"nodeType":341},{},[1658],{"data":1659,"content":1660,"nodeType":252},{},[1661],{"data":1662,"marks":1663,"value":1664,"nodeType":256},{},[],"Session token theft detection",{"data":1666,"content":1667,"nodeType":341},{},[1668],{"data":1669,"content":1670,"nodeType":252},{},[1671],{"data":1672,"marks":1673,"value":1674,"nodeType":256},{},[],"URL blocking",{"data":1676,"content":1677,"nodeType":341},{},[1678],{"data":1679,"content":1680,"nodeType":252},{},[1681],{"data":1682,"marks":1683,"value":1684,"nodeType":256},{},[],"Require a reason for app usage",{"data":1686,"content":1687,"nodeType":341},{},[1688],{"data":1689,"content":1690,"nodeType":252},{},[1691],{"data":1692,"marks":1693,"value":1694,"nodeType":256},{},[],"Expanded API and webhooks options",{"data":1696,"content":1697,"nodeType":825},{},[1698],{"data":1699,"marks":1700,"value":1701,"nodeType":256},{},[],"Prevent SSO password reuse",{"data":1703,"content":1704,"nodeType":252},{},[1705,1709,1714],{"data":1706,"marks":1707,"value":1708,"nodeType":256},{},[],"Instead of trying to detect phishing websites and domains that constantly change, Push can now ",{"data":1710,"marks":1711,"value":1713,"nodeType":256},{},[1712],{"type":532},"detect (and block!) SSO password reuse",{"data":1715,"marks":1716,"value":1717,"nodeType":256},{},[]," based on directly observing user behavior in the browser.",{"data":1719,"content":1720,"nodeType":252},{},[1721,1725,1729],{"data":1722,"marks":1723,"value":1724,"nodeType":256},{},[],"Our ",{"data":1726,"marks":1727,"value":593,"nodeType":256},{},[1728],{"type":532},{"data":1730,"marks":1731,"value":1732,"nodeType":256},{},[]," feature detects and blocks when a user enters their identity provider password on a webpage that does not belong to the IdP (e.g. Okta, Google Workspace, Microsoft 365, etc.)",{"data":1734,"content":1735,"nodeType":252},{},[1736],{"data":1737,"marks":1738,"value":1739,"nodeType":256},{},[],"You can choose to warn or block SSO password reuse and customize the message that end-users see.",{"data":1741,"content":1745,"nodeType":243},{"target":1742},{"sys":1743},{"id":1744,"type":248,"linkType":249},"74l82HIeaumFX4u9AMjj79",[],{"data":1747,"content":1748,"nodeType":252},{},[1749,1752,1761],{"data":1750,"marks":1751,"value":29,"nodeType":256},{},[],{"data":1753,"content":1756,"nodeType":261},{"target":1754},{"sys":1755},{"id":400,"type":248,"linkType":249},[1757],{"data":1758,"marks":1759,"value":1760,"nodeType":256},{},[],"See how it works",{"data":1762,"marks":1763,"value":29,"nodeType":256},{},[],{"data":1765,"content":1766,"nodeType":825},{},[1767],{"data":1768,"marks":1769,"value":1770,"nodeType":256},{},[],"Detect Adversary-in-the-Middle phishing toolkits",{"data":1772,"content":1773,"nodeType":252},{},[1774,1778,1783],{"data":1775,"marks":1776,"value":1777,"nodeType":256},{},[],"The Push browser agent can now ",{"data":1779,"marks":1780,"value":1782,"nodeType":256},{},[1781],{"type":532},"detect when employees visit websites that are using phishing toolkits",{"data":1784,"marks":1785,"value":1786,"nodeType":256},{},[]," such as EvilNoVNC and Evilginx. These tools can mimic legitimate login screens in order to steal credentials and bypass MFA.",{"data":1788,"content":1789,"nodeType":252},{},[1790],{"data":1791,"marks":1792,"value":1793,"nodeType":256},{},[],"Send detections to your SIEM or similar monitoring tool and add malicious sites to a blocklist in Push.",{"data":1795,"content":1799,"nodeType":243},{"target":1796},{"sys":1797},{"id":1798,"type":248,"linkType":249},"450I6V31ET3EbfgMiVBPBR",[],{"data":1801,"content":1802,"nodeType":252},{},[1803,1806,1815],{"data":1804,"marks":1805,"value":29,"nodeType":256},{},[],{"data":1807,"content":1810,"nodeType":261},{"target":1808},{"sys":1809},{"id":379,"type":248,"linkType":249},[1811],{"data":1812,"marks":1813,"value":1814,"nodeType":256},{},[],"Learn more",{"data":1816,"marks":1817,"value":29,"nodeType":256},{},[],{"data":1819,"content":1820,"nodeType":825},{},[1821],{"data":1822,"marks":1823,"value":1824,"nodeType":256},{},[],"Identify session token theft ",{"data":1826,"content":1827,"nodeType":252},{},[1828,1832,1837,1841,1846],{"data":1829,"marks":1830,"value":1831,"nodeType":256},{},[],"You can now use the Push browser agent to ",{"data":1833,"marks":1834,"value":1836,"nodeType":256},{},[1835],{"type":532},"inject a unique marker to the user agent string",{"data":1838,"marks":1839,"value":1840,"nodeType":256},{},[]," of sessions that occur in browsers enrolled in Push. By analyzing logs from your identity provider (e.g. Okta, Microsoft 365, etc.) or other app, you can use the marker to help you ",{"data":1842,"marks":1843,"value":1845,"nodeType":256},{},[1844],{"type":532},"find suspicious activity that indicates a stolen session cookie",{"data":1847,"marks":1848,"value":1849,"nodeType":256},{},[]," in use.",{"data":1851,"content":1852,"nodeType":252},{},[1853,1857,1862],{"data":1854,"marks":1855,"value":1856,"nodeType":256},{},[],"Detecting session hijacking is extremely difficult when relying on device-based monitoring using EDR and network traffic. But by giving legitimate sessions a stamp of approval using the Push browser agent, you can easily ",{"data":1858,"marks":1859,"value":1861,"nodeType":256},{},[1860],{"type":532},"identify access to apps from untrusted devices",{"data":1863,"marks":1864,"value":644,"nodeType":256},{},[],{"data":1866,"content":1867,"nodeType":252},{},[1868,1871,1880],{"data":1869,"marks":1870,"value":29,"nodeType":256},{},[],{"data":1872,"content":1876,"nodeType":261},{"target":1873},{"sys":1874},{"id":1875,"type":248,"linkType":249},"1UMZdjyNQt4Y7NBb2wuK4L",[1877],{"data":1878,"marks":1879,"value":1760,"nodeType":256},{},[],{"data":1881,"marks":1882,"value":29,"nodeType":256},{},[],{"data":1884,"content":1885,"nodeType":825},{},[1886],{"data":1887,"marks":1888,"value":1889,"nodeType":256},{},[],"Configure a custom blocklist of URLs",{"data":1891,"content":1892,"nodeType":252},{},[1893,1897,1901],{"data":1894,"marks":1895,"value":1896,"nodeType":256},{},[],"Prevent employees from visiting malicious sites you detect by configuring a custom blocklist of URLs in Push using the ",{"data":1898,"marks":1899,"value":1674,"nodeType":256},{},[1900],{"type":532},{"data":1902,"marks":1903,"value":1904,"nodeType":256},{},[]," feature. You can customize the message shown to end-users by adding your own links and instructions. Use Push’s REST API to programmatically manage URL blocking as part of responding to a phishing incident.",{"data":1906,"content":1907,"nodeType":252},{},[1908,1912,1917],{"data":1909,"marks":1910,"value":1911,"nodeType":256},{},[],"You can use this alongside other Push features like phishing tool detection to ",{"data":1913,"marks":1914,"value":1916,"nodeType":256},{},[1915],{"type":532},"block access to known-bad sites",{"data":1918,"marks":1919,"value":1920,"nodeType":256},{},[]," you find. ",{"data":1922,"content":1926,"nodeType":243},{"target":1923},{"sys":1924},{"id":1925,"type":248,"linkType":249},"1S7cuS7qo5jTcEg7RPPZu6",[],{"data":1928,"content":1929,"nodeType":252},{},[1930,1933,1942],{"data":1931,"marks":1932,"value":29,"nodeType":256},{},[],{"data":1934,"content":1938,"nodeType":261},{"target":1935},{"sys":1936},{"id":1937,"type":248,"linkType":249},"P0coHgQAdRL0YTu4Rwd4z",[1939],{"data":1940,"marks":1941,"value":1814,"nodeType":256},{},[],{"data":1943,"marks":1944,"value":29,"nodeType":256},{},[],{"data":1946,"content":1947,"nodeType":825},{},[1948],{"data":1949,"marks":1950,"value":1951,"nodeType":256},{},[],"Require end-users to submit a reason when using an app",{"data":1953,"content":1954,"nodeType":252},{},[1955,1959,1964,1968,1973],{"data":1956,"marks":1957,"value":1958,"nodeType":256},{},[],"We’ve expanded our popular app banners feature to include a ",{"data":1960,"marks":1961,"value":1963,"nodeType":256},{},[1962],{"type":532},"Reason",{"data":1965,"marks":1966,"value":1967,"nodeType":256},{},[]," mode that allows you to configure a custom message and require employees to submit a reason ",{"data":1969,"marks":1970,"value":1972,"nodeType":256},{},[1971],{"type":532},"why they need to use a specific app",{"data":1974,"marks":1975,"value":1976,"nodeType":256},{},[]," before they can proceed to log in.",{"data":1978,"content":1982,"nodeType":243},{"target":1979},{"sys":1980},{"id":1981,"type":248,"linkType":249},"6Q7kU16LZdTm8RsyLy660J",[],{"data":1984,"content":1985,"nodeType":252},{},[1986,1989,1998],{"data":1987,"marks":1988,"value":29,"nodeType":256},{},[],{"data":1990,"content":1994,"nodeType":261},{"target":1991},{"sys":1992},{"id":1993,"type":248,"linkType":249},"2ZpKnuljaUH0jzVaae4SMN",[1995],{"data":1996,"marks":1997,"value":1814,"nodeType":256},{},[],{"data":1999,"marks":2000,"value":29,"nodeType":256},{},[],{"data":2002,"content":2003,"nodeType":825},{},[2004],{"data":2005,"marks":2006,"value":2007,"nodeType":256},{},[],"Monitor ‘other apps’ list via Push API and webhooks",{"data":2009,"content":2010,"nodeType":252},{},[2011,2015,2020,2024,2034],{"data":2012,"marks":2013,"value":2014,"nodeType":256},{},[],"You can now keep a closer eye on ",{"data":2016,"marks":2017,"value":2019,"nodeType":256},{},[2018],{"type":532},"all new observed cloud apps",{"data":2021,"marks":2022,"value":2023,"nodeType":256},{},[]," by using the Push API and webhooks to notify you of new entries on the ",{"data":2025,"content":2029,"nodeType":261},{"target":2026},{"sys":2027},{"id":2028,"type":248,"linkType":249},"WciLKam7PCkbAASOdfiEw",[2030],{"data":2031,"marks":2032,"value":2033,"nodeType":256},{},[],"“other apps” list",{"data":2035,"marks":2036,"value":2037,"nodeType":256},{},[]," or to retrieve specific details about accounts on these apps. The “other apps” list consists of apps accessed by employees that Push doesn’t recognize as work apps but that may still be relevant to your operations. ",{"data":2039,"content":2040,"nodeType":252},{},[2041,2044,2050],{"data":2042,"marks":2043,"value":29,"nodeType":256},{},[],{"data":2045,"content":2046,"nodeType":304},{"uri":563},[2047],{"data":2048,"marks":2049,"value":1814,"nodeType":256},{},[],{"data":2051,"marks":2052,"value":2053,"nodeType":256},{},[],"\n","Product release: May 2024","Here’s what’s new on the Push platform for May 2024.","2024-05-22T00:00:00.000Z","product-release-may-2024",{"items":2059},[2060],{"sys":2061,"name":2063},{"id":2062},"5jk0kqjSdSK2L0YiistQjY","Release notes",{"items":2065},[2066],{"fullName":2067,"firstName":2068,"jobTitle":2069,"profilePicture":2070},"Andy Waugh","Andy","VP Product",{"url":2071},"https://images.ctfassets.net/y1cdw1ablpvd/3Rf76rJn6S9inMb4dUnAIJ/0a787f8141d05b95300e2fe77c4493fa/DSC_6868.jpg",{"__typename":679,"sys":2073,"content":2074,"title":694,"synopsis":2611,"hashTags":62,"publishedDate":2612,"slug":695,"tagsCollection":2613,"authorsCollection":2619},{"id":400},{"json":2075},{"data":2076,"content":2077,"nodeType":239},{},[2078,2084,2090,2097,2104,2120,2153,2160,2168,2174,2189,2197,2203,2210,2217,2224,2231,2239,2246,2263,2279,2284,2291,2310,2329,2336,2361,2368,2391,2408,2415,2435,2442,2516,2523,2539,2546,2553,2560,2567,2583,2589,2595],{"data":2079,"content":2080,"nodeType":252},{},[2081],{"data":2082,"marks":2083,"value":29,"nodeType":256},{},[],{"data":2085,"content":2089,"nodeType":243},{"target":2086},{"sys":2087},{"id":2088,"type":248,"linkType":249},"5cseu1Cre2FrSQrIhSFxQw",[],{"data":2091,"content":2092,"nodeType":252},{},[2093],{"data":2094,"marks":2095,"value":2096,"nodeType":256},{},[],"Reliably detecting phishing sites is like trying to hit a moving target, as malicious websites and domains emerge, get taken down, and re-emerge continuously across the sprawl of the web.",{"data":2098,"content":2099,"nodeType":252},{},[2100],{"data":2101,"marks":2102,"value":2103,"nodeType":256},{},[],"Existing phishing prevention solutions have tried to solve the problem by protecting the inbox, a common (but not the only) attack vector, or by chasing lists of known-bad domains.",{"data":2105,"content":2106,"nodeType":252},{},[2107,2111,2116],{"data":2108,"marks":2109,"value":2110,"nodeType":256},{},[],"But these approaches have ",{"data":2112,"marks":2113,"value":2115,"nodeType":256},{},[2114],{"type":532},"two major shortcomings",{"data":2117,"marks":2118,"value":2119,"nodeType":256},{},[],":",{"data":2121,"content":2122,"nodeType":337},{},[2123,2138],{"data":2124,"content":2125,"nodeType":341},{},[2126],{"data":2127,"content":2128,"nodeType":252},{},[2129,2134],{"data":2130,"marks":2131,"value":2133,"nodeType":256},{},[2132],{"type":532},"Lack of coverage:",{"data":2135,"marks":2136,"value":2137,"nodeType":256},{},[]," Email-based phishing prevention tools can catch general spray-and-pray email phishing campaigns, but it only takes a small amount of tailoring to fly under their radar. The use of LLM tools to tailor phishing emails for their intended victims already makes this possible at scale. Email-based tools also fail to cover phishing attacks beyond the inbox, such as Slack and Teams phishing.",{"data":2139,"content":2140,"nodeType":341},{},[2141],{"data":2142,"content":2143,"nodeType":252},{},[2144,2149],{"data":2145,"marks":2146,"value":2148,"nodeType":256},{},[2147],{"type":532},"Expired intel:",{"data":2150,"marks":2151,"value":2152,"nodeType":256},{},[]," Tools that rely on known-bad domains always have an incomplete picture because a domain must be reported as malicious in order to get added to a blocklist. Meanwhile, attackers can spin up new sites or host phishing pages on existing sites by exploiting vulnerabilities in them, bypassing rules around preventing visits to newly registered domains. ",{"data":2154,"content":2155,"nodeType":252},{},[2156],{"data":2157,"marks":2158,"value":2159,"nodeType":256},{},[],"Using Push’s unique vantage point in the browser, we set out to attack this problem from a new angle. ",{"data":2161,"content":2162,"nodeType":252},{},[2163],{"data":2164,"marks":2165,"value":2167,"nodeType":256},{},[2166],{"type":532},"Instead of trying to detect phishing websites and domains that constantly change, we can now detect (and block!) phishing attempts based on directly observing user behavior in the browser.",{"data":2169,"content":2173,"nodeType":243},{"target":2170},{"sys":2171},{"id":2172,"type":248,"linkType":249},"2vFMyWtMlxzTqqtvCPmlGW",[],{"data":2175,"content":2176,"nodeType":252},{},[2177,2181,2185],{"data":2178,"marks":2179,"value":2180,"nodeType":256},{},[],"Our latest feature, ",{"data":2182,"marks":2183,"value":593,"nodeType":256},{},[2184],{"type":532},{"data":2186,"marks":2187,"value":2188,"nodeType":256},{},[],", detects and blocks when a user enters their identity provider password on a webpage that does not belong to the IdP (e.g Okta, Google Workspace, Microsoft 365, etc.).",{"data":2190,"content":2191,"nodeType":252},{},[2192],{"data":2193,"marks":2194,"value":2196,"nodeType":256},{},[2195],{"type":532},"This means that even if that employee was the first person to get phished using a new attacker site, Push still detects it and blocks it.",{"data":2198,"content":2202,"nodeType":243},{"target":2199},{"sys":2200},{"id":2201,"type":248,"linkType":249},"4eCSQGec7mozFLDucNMO7m",[],{"data":2204,"content":2205,"nodeType":825},{},[2206],{"data":2207,"marks":2208,"value":2209,"nodeType":256},{},[],"How does it work?",{"data":2211,"content":2212,"nodeType":252},{},[2213],{"data":2214,"marks":2215,"value":2216,"nodeType":256},{},[],"Instead of detecting a phishing page based on a known-bad signature, the Push browser agent dynamically inspects user behavior and the attributes of the page itself.",{"data":2218,"content":2219,"nodeType":252},{},[2220],{"data":2221,"marks":2222,"value":2223,"nodeType":256},{},[],"The browser agent works by observing all logins and generating a salted partial hash of the user’s password, known as a fingerprint. This fingerprint is then stored locally to allow Push to perform comparisons. ",{"data":2225,"content":2226,"nodeType":252},{},[2227],{"data":2228,"marks":2229,"value":2230,"nodeType":256},{},[],"To detect potential phishing attacks, the browser agent compares the observed password fingerprint to known fingerprints for identity provider passwords that already exist in local storage. ",{"data":2232,"content":2233,"nodeType":252},{},[2234],{"data":2235,"marks":2236,"value":2238,"nodeType":256},{},[2237],{"type":532},"If an employee enters a known IdP password on a webpage that Push doesn’t recognize, Push blocks it. ",{"data":2240,"content":2241,"nodeType":252},{},[2242],{"data":2243,"marks":2244,"value":2245,"nodeType":256},{},[],"Once you’ve discovered a malicious site, use Push’s companion feature, URL blocking, to add the domain to a blocklist and prevent your other end-users from visiting the site. ",{"data":2247,"content":2248,"nodeType":252},{},[2249,2253,2259],{"data":2250,"marks":2251,"value":2252,"nodeType":256},{},[],"You can programmatically manage URL blocking as part of responding to an attempted phishing incident by using the ",{"data":2254,"content":2255,"nodeType":304},{"uri":563},[2256],{"data":2257,"marks":2258,"value":566,"nodeType":256},{},[],{"data":2260,"marks":2261,"value":2262,"nodeType":256},{},[]," to automatically add URLs to the blocklist or to sync with other threat intelligence sources of known-bad sites.",{"data":2264,"content":2265,"nodeType":252},{},[2266,2270,2275],{"data":2267,"marks":2268,"value":2269,"nodeType":256},{},[],"Push administrators can configure SSO password protection in Monitor, Warn, or Block modes to first observe how often employees are re-using IdP credentials on other sites, eliminating any false positives by adding them to an ignore list, and then turning on Warn or Block to ",{"data":2271,"marks":2272,"value":2274,"nodeType":256},{},[2273],{"type":532},"show a custom message",{"data":2276,"marks":2277,"value":2278,"nodeType":256},{},[]," that either provides a speedbump for users (“Are you sure this isn’t a phishing site?”) or prevents them from logging in altogether.",{"data":2280,"content":2283,"nodeType":243},{"target":2281},{"sys":2282},{"id":1744,"type":248,"linkType":249},[],{"data":2285,"content":2286,"nodeType":252},{},[2287],{"data":2288,"marks":2289,"value":2290,"nodeType":256},{},[],"Supported identity providers include Okta, Microsoft 365, Google Workspace, JumpCloud, Duo and Ping Identity. ",{"data":2292,"content":2293,"nodeType":252},{},[2294,2298,2306],{"data":2295,"marks":2296,"value":2297,"nodeType":256},{},[],"You can also ",{"data":2299,"content":2301,"nodeType":304},{"uri":2300},"https://pushsecurity.redoc.ly/webhooks-v1/",[2302],{"data":2303,"marks":2304,"value":2305,"nodeType":256},{},[],"get alerted",{"data":2307,"marks":2308,"value":2309,"nodeType":256},{},[]," via webhook when Push detects a suspected phishing event.",{"data":2311,"content":2312,"nodeType":252},{},[2313,2317,2326],{"data":2314,"marks":2315,"value":2316,"nodeType":256},{},[],"Learn more about how it works and the end-user experience in our ",{"data":2318,"content":2321,"nodeType":261},{"target":2319},{"sys":2320},{"id":590,"type":248,"linkType":249},[2322],{"data":2323,"marks":2324,"value":2325,"nodeType":256},{},[],"help article",{"data":2327,"marks":2328,"value":644,"nodeType":256},{},[],{"data":2330,"content":2331,"nodeType":825},{},[2332],{"data":2333,"marks":2334,"value":2335,"nodeType":256},{},[],"But what about … ",{"data":2337,"content":2338,"nodeType":252},{},[2339,2343,2348,2352,2357],{"data":2340,"marks":2341,"value":2342,"nodeType":256},{},[],"Yes, we believe ",{"data":2344,"marks":2345,"value":2347,"nodeType":256},{},[2346],{"type":532},"MFA",{"data":2349,"marks":2350,"value":2351,"nodeType":256},{},[]," and ",{"data":2353,"marks":2354,"value":2356,"nodeType":256},{},[2355],{"type":532},"conditional access policies",{"data":2358,"marks":2359,"value":2360,"nodeType":256},{},[]," are important parts of a defense-in-depth strategy against phishing — in addition to protecting IdP credentials directly in the browser.",{"data":2362,"content":2363,"nodeType":252},{},[2364],{"data":2365,"marks":2366,"value":2367,"nodeType":256},{},[],"Here’s why MFA and conditional access policies aren’t enough:",{"data":2369,"content":2370,"nodeType":337},{},[2371,2381],{"data":2372,"content":2373,"nodeType":341},{},[2374],{"data":2375,"content":2376,"nodeType":252},{},[2377],{"data":2378,"marks":2379,"value":2380,"nodeType":256},{},[],"MFA is not infallible and not all MFA methods are created equal. Methods such as SMS, TOTP, or even push notifications are phishable. Even if your employees are also using more phishing-resistant forms of MFA, such as WebAuthn, it’s common for accounts to use multiple MFA methods and an attacker need only target the weakest one. An attacker in possession of an SSO password also has leverage to socially engineer an authentication reset, including an MFA reset.",{"data":2382,"content":2383,"nodeType":341},{},[2384],{"data":2385,"content":2386,"nodeType":252},{},[2387],{"data":2388,"marks":2389,"value":2390,"nodeType":256},{},[],"It’s worryingly common for us to deploy Push and find that a customer’s conditional access policies aren’t implemented as they are designed to be. The most common reason is that admins have to create so many exceptions to allow for real-world situations that policies become complex and full of gaps.",{"data":2392,"content":2393,"nodeType":252},{},[2394,2398,2404],{"data":2395,"marks":2396,"value":2397,"nodeType":256},{},[],"And of course, protecting ",{"data":2399,"marks":2400,"value":2403,"nodeType":256},{},[2401],{"type":2402},"italic","all",{"data":2405,"marks":2406,"value":2407,"nodeType":256},{},[]," your organization’s passwords is important. In fact, we’re currently developing this feature further so it will do just that! We focus here on IdP passwords because they’re a higher-value target for attackers — and the frequent target of recent real-world attacks.",{"data":2409,"content":2410,"nodeType":825},{},[2411],{"data":2412,"marks":2413,"value":2414,"nodeType":256},{},[],"Why IdP accounts?",{"data":2416,"content":2417,"nodeType":252},{},[2418,2422,2431],{"data":2419,"marks":2420,"value":2421,"nodeType":256},{},[],"IdP accounts have been targeted in several high-profile recent attacks, like those carried out by Scattered Spider against MGM resorts and in the Retool breach. You can read more about them in our ",{"data":2423,"content":2426,"nodeType":261},{"target":2424},{"sys":2425},{"id":286,"type":248,"linkType":249},[2427],{"data":2428,"marks":2429,"value":2430,"nodeType":256},{},[],"identity attacks in the wild",{"data":2432,"marks":2433,"value":2434,"nodeType":256},{},[]," blog article.",{"data":2436,"content":2437,"nodeType":252},{},[2438],{"data":2439,"marks":2440,"value":2441,"nodeType":256},{},[],"In the cloud-first world, a compromised IdP account is like a compromised user workstation. It gives an attacker a solid initial foothold from which they can operate:",{"data":2443,"content":2444,"nodeType":337},{},[2445,2467],{"data":2446,"content":2447,"nodeType":341},{},[2448],{"data":2449,"content":2450,"nodeType":252},{},[2451,2455,2464],{"data":2452,"marks":2453,"value":2454,"nodeType":256},{},[],"They instantly get access to all the apps the compromised user was accessing with SSO. It’s easy to move laterally to sensitive apps or to apps where the user has admin privileges. This obviously enables an attacker to directly exfiltrate data from these apps or to use them maliciously, as in the ",{"data":2456,"content":2459,"nodeType":261},{"target":2457},{"sys":2458},{"id":286,"type":248,"linkType":249},[2460],{"data":2461,"marks":2462,"value":2463,"nodeType":256},{},[],"Mandiant and SEC Twitter/X breaches",{"data":2465,"marks":2466,"value":644,"nodeType":256},{},[],{"data":2468,"content":2469,"nodeType":341},{},[2470],{"data":2471,"content":2472,"nodeType":252},{},[2473,2477,2486,2490,2499,2502,2512],{"data":2474,"marks":2475,"value":2476,"nodeType":256},{},[],"Assuming an attacker hasn’t initially gotten access to a privileged IdP account, they can escalate their privileges by performing ",{"data":2478,"content":2482,"nodeType":261},{"target":2479},{"sys":2480},{"id":2481,"type":248,"linkType":249},"3F96pyn4qqkbVctSOH69vm",[2483],{"data":2484,"marks":2485,"value":1218,"nodeType":256},{},[],{"data":2487,"marks":2488,"value":2489,"nodeType":256},{},[]," on any low-risk app where the user is an admin or by using apps like ",{"data":2491,"content":2495,"nodeType":261},{"target":2492},{"sys":2493},{"id":2494,"type":248,"linkType":249},"2rjLrCo6KWwLicfpV2qTOZ",[2496],{"data":2497,"marks":2498,"value":1523,"nodeType":256},{},[],{"data":2500,"marks":2501,"value":2351,"nodeType":256},{},[],{"data":2503,"content":2507,"nodeType":261},{"target":2504},{"sys":2505},{"id":2506,"type":248,"linkType":249},"2cv7Yq1DQpm1Mho7fKDs44",[2508],{"data":2509,"marks":2510,"value":2511,"nodeType":256},{},[],"Teams",{"data":2513,"marks":2514,"value":2515,"nodeType":256},{},[]," to phish higher-privilege users.",{"data":2517,"content":2518,"nodeType":825},{},[2519],{"data":2520,"marks":2521,"value":2522,"nodeType":256},{},[],"It also protects against credential stuffing attacks",{"data":2524,"content":2525,"nodeType":252},{},[2526,2530,2535],{"data":2527,"marks":2528,"value":2529,"nodeType":256},{},[],"As well as protecting your users against phishing, the SSO password protection feature can prevent credential stuffing attacks succeeding against your IdP instance. How? By stopping your employees from reusing their SSO password on other apps.  \nPush monitors the identities of thousands of employees. Around ",{"data":2531,"marks":2532,"value":2534,"nodeType":256},{},[2533],{"type":532},"1 in 3 of them reuse passwords",{"data":2536,"marks":2537,"value":2538,"nodeType":256},{},[]," across multiple accounts. ",{"data":2540,"content":2541,"nodeType":252},{},[2542],{"data":2543,"marks":2544,"value":2545,"nodeType":256},{},[],"Employees know that their SSO password is one they’ll need to use a lot, and so they tend to choose one they know they will remember, because they are already using it successfully. That’s why we see higher levels of password reuse on IdP apps in particular.",{"data":2547,"content":2548,"nodeType":252},{},[2549],{"data":2550,"marks":2551,"value":2552,"nodeType":256},{},[],"Every time an SSO password is reused on another app, its exposure increases, along with the likelihood of it falling into the wrong hands. This can happen when another app experiences a breach and credentials are stolen. Or alternatively, when an attacker steals credentials in a phishing attack aimed at users of other apps where the password is being reused.",{"data":2554,"content":2555,"nodeType":252},{},[2556],{"data":2557,"marks":2558,"value":2559,"nodeType":256},{},[],"Armed with stolen credentials, an attacker can spray them across common cloud apps and see what additional accounts they can gain access to. IdP apps will be high on the list of cloud apps attackers will try because they provide much more in the way of access than a general SaaS user account.",{"data":2561,"content":2562,"nodeType":252},{},[2563],{"data":2564,"marks":2565,"value":2566,"nodeType":256},{},[],"You might be wondering if this feature can also be used to stop other password attacks such as password spraying and brute-forcing attacks. While this specific feature does not, Push’s other features do. ",{"data":2568,"content":2569,"nodeType":252},{},[2570,2574,2579],{"data":2571,"marks":2572,"value":2573,"nodeType":256},{},[],"These include ",{"data":2575,"marks":2576,"value":2578,"nodeType":256},{},[2577],{"type":532},"in-browser guidance",{"data":2580,"marks":2581,"value":2582,"nodeType":256},{},[]," that stops users from creating and using easily guessable passwords as well as Push’s ability to detect when employees are not registered for MFA (and whether the methods they are using are phishing-resistant or not).",{"data":2584,"content":2588,"nodeType":243},{"target":2585},{"sys":2586},{"id":2587,"type":248,"linkType":249},"uy6utpRA35spZFM7Da4Nt",[],{"data":2590,"content":2591,"nodeType":825},{},[2592],{"data":2593,"marks":2594,"value":651,"nodeType":256},{},[],{"data":2596,"content":2597,"nodeType":252},{},[2598,2601,2607],{"data":2599,"marks":2600,"value":658,"nodeType":256},{},[],{"data":2602,"content":2603,"nodeType":304},{"uri":663},[2604],{"data":2605,"marks":2606,"value":666,"nodeType":256},{},[],{"data":2608,"marks":2609,"value":2610,"nodeType":256},{},[],". We’ll be happy to show you this feature, along with how we discover all the apps your employees are using and how we detect vulnerable identities.","Use the Push browser agent’s unique vantage point to protect SSO credentials by blocking employees from entering their password into any other site. ","2024-04-29T00:00:00.000Z",{"items":2614},[2615,2617],{"sys":2616,"name":1610},{"id":1609},{"sys":2618,"name":2063},{"id":2062},{"items":2620},[2621],{"fullName":2622,"firstName":2623,"jobTitle":234,"profilePicture":2624},"Alex Henshall","Alex",{"url":2625},"https://images.ctfassets.net/y1cdw1ablpvd/2rz3Pre3b1MexPIQ4hzPUe/0ef8a092b7e7df00fbce3f7d1ccb96d1/Alex_Henshall.jpeg","introducing-aitm-phishing-toolkit-detection-powered-by-the-push-browser","blog/introducing-aitm-phishing-toolkit-detection-powered-by-the-push-browser",{"json":2629},{"data":2630,"content":2631,"nodeType":239},{},[2632],{"data":2633,"content":2634,"nodeType":252},{},[2635],{"data":2636,"marks":2637,"value":2638,"nodeType":256},{},[],"Push analyzes behavioral attributes of malware to identify advanced phishing tools like Evilginx and NakedPages in use on websites and immediately block end-users from visiting them.","Push analyzes behavioral attributes of malware to identify phishing tools like Evilginx and NakedPages and immediately block end-users from visiting them.",{"id":2641,"publishedAt":2642},"4EfGLsD4qOkE4AoTUoL83m","2026-01-30T09:23:05.343Z",{"items":2644},[2645,2647],{"sys":2646,"name":2063},{"id":2062},{"sys":2648,"name":1610},{"id":1609},"xAfKbIQ8558kTeUniRRm8dXhKskpV6JoKvJIR0zkTRk",1784196725475]