[{"data":1,"prerenderedAt":2163},["ShallowReactive",2],{"application-flags":3,"navbar":7,"always-visible-banner":36,"navbar-about-highlight":108,"navbar-resource-highlight":182,"blog/introducing-session-token-theft-detection-why-browser-is-best":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":783,"faqItemsCollection":784,"faqTitle":62,"featured":6,"hashTags":62,"meta":786,"metaTitle":787,"ogImage":62,"publishedDate":788,"relatedBlogPostsCollection":789,"slug":2139,"stem":2140,"subtitle":62,"summary":2141,"synopsis":2152,"sys":2153,"tagsCollection":2156,"__hash__":2162},"blog/blog/introducing-session-token-theft-detection-why-browser-is-best.json","Introducing session token theft detection: Why browser is best",{"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":747},{"nodeType":239,"data":240,"content":241},"document",{},[242,251,260,295,302,324,332,378,385,392,399,405,412,502,509,516,539,546,553,560,567,574,581,633,640,646,665,671,678,685,692,699,706,713,720,727],{"nodeType":243,"data":244,"content":250},"embedded-entry-block",{"target":245},{"sys":246},{"id":247,"type":248,"linkType":249},"2HffP4X7owzpfj41jnzXmV","Link","Entry",[],{"nodeType":252,"data":253,"content":254},"paragraph",{},[255],{"nodeType":256,"value":257,"marks":258,"data":259},"text","To detect session token theft, you need three things:",[],{},{"nodeType":261,"data":262,"content":263},"unordered-list",{},[264,275,285],{"nodeType":265,"data":266,"content":267},"list-item",{},[268],{"nodeType":252,"data":269,"content":270},{},[271],{"nodeType":256,"value":272,"marks":273,"data":274},"Robust logs that provide an identifier to help tie activity to a specific session",[],{},{"nodeType":265,"data":276,"content":277},{},[278],{"nodeType":252,"data":279,"content":280},{},[281],{"nodeType":256,"value":282,"marks":283,"data":284},"A well-oiled SOC to correlate observed activity in those logs",[],{},{"nodeType":265,"data":286,"content":287},{},[288],{"nodeType":252,"data":289,"content":290},{},[291],{"nodeType":256,"value":292,"marks":293,"data":294},"And telemetry to tie those logs to a trusted endpoint",[],{},{"nodeType":252,"data":296,"content":297},{},[298],{"nodeType":256,"value":299,"marks":300,"data":301},"The only problem? That third thing didn’t really exist. So we created it.",[],{},{"nodeType":252,"data":303,"content":304},{},[305,309,320],{"nodeType":256,"value":306,"marks":307,"data":308},"In this article, we’ll cover how Push’s recently released ",[],{},{"nodeType":310,"data":311,"content":313},"hyperlink",{"uri":312},"https://pushsecurity.com/help/10114#start",[314],{"nodeType":256,"value":315,"marks":316,"data":319},"session theft detection",[317],{"type":318},"underline",{},{"nodeType":256,"value":321,"marks":322,"data":323}," feature works, why we built it, and why the unique control point provided by a browser agent unlocks new capabilities for blue teams fighting the effects of infostealer malware and other stolen credential-based attacks.",[],{},{"nodeType":325,"data":326,"content":327},"heading-1",{},[328],{"nodeType":256,"value":329,"marks":330,"data":331},"(You probably already know) Why this matters",[],{},{"nodeType":252,"data":333,"content":334},{},[335,339,348,352,361,365,374],{"nodeType":256,"value":336,"marks":337,"data":338},"Session token theft is a ",[],{},{"nodeType":310,"data":340,"content":342},{"uri":341},"https://owasp.org/www-community/attacks/Session_hijacking_attack",[343],{"nodeType":256,"value":344,"marks":345,"data":347},"session hijacking",[346],{"type":318},{},{"nodeType":256,"value":349,"marks":350,"data":351}," technique where endpoint malware is used to extract sessions from an endpoint, and until recently it was ",[],{},{"nodeType":310,"data":353,"content":355},{"uri":354},"https://www.microsoft.com/en-us/security/blog/2022/11/16/token-tactics-how-to-prevent-detect-and-respond-to-cloud-token-theft/",[356],{"nodeType":256,"value":357,"marks":358,"data":360},"relatively rare",[359],{"type":318},{},{"nodeType":256,"value":362,"marks":363,"data":364},". It’s easier to ",[],{},{"nodeType":310,"data":366,"content":368},{"uri":367},"https://pushsecurity.com/blog/what-is-credential-stuffing/",[369],{"nodeType":256,"value":370,"marks":371,"data":373},"gain access via a password",[372],{"type":318},{},{"nodeType":256,"value":375,"marks":376,"data":377}," than it is to steal a session cookie. ",[],{},{"nodeType":252,"data":379,"content":380},{},[381],{"nodeType":256,"value":382,"marks":383,"data":384},"But there’s an inverse relationship between session-based attacks and MFA adoption. As MFA becomes widespread, adversaries turn to new effective methods of initial entry.",[],{},{"nodeType":252,"data":386,"content":387},{},[388],{"nodeType":256,"value":389,"marks":390,"data":391},"An increasingly common approach involves the use of infostealer malware, which can extract saved credentials, browser cookies, cryptowallets, and other valuable data from the infected endpoint.",[],{},{"nodeType":252,"data":393,"content":394},{},[395],{"nodeType":256,"value":396,"marks":397,"data":398},"Using stolen tokens, adversaries don’t need to bypass MFA directly. They can simply import the tokens into their browser and assume an already authorized session.",[],{},{"nodeType":243,"data":400,"content":404},{"target":401},{"sys":402},{"id":403,"type":248,"linkType":249},"66B5MBFIhbmky7VuLGbuM3",[],{"nodeType":252,"data":406,"content":407},{},[408],{"nodeType":256,"value":409,"marks":410,"data":411},"A few recent stats show the scope of the problem:",[],{},{"nodeType":261,"data":413,"content":414},{},[415,437,459,481],{"nodeType":265,"data":416,"content":417},{},[418],{"nodeType":252,"data":419,"content":420},{},[421,425,434],{"nodeType":256,"value":422,"marks":423,"data":424},"Nearly half of the malware detected last year by Sophos targeted victims’ data specifically, and the majority of that malware was classified as infostealers. Source: ",[],{},{"nodeType":310,"data":426,"content":428},{"uri":427},"https://news.sophos.com/en-us/2024/03/12/2024-sophos-threat-report/",[429],{"nodeType":256,"value":430,"marks":431,"data":433},"2024 Sophos Threat Report",[432],{"type":318},{},{"nodeType":256,"value":29,"marks":435,"data":436},[],{},{"nodeType":265,"data":438,"content":439},{},[440],{"nodeType":252,"data":441,"content":442},{},[443,447,456],{"nodeType":256,"value":444,"marks":445,"data":446},"Information-stealing malware accounted for nearly 10 percent of activity that Red Canary was able to associate with named threats last year. They also found a rise in stealer malware targeting macOS compared to previous years. Source: ",[],{},{"nodeType":310,"data":448,"content":450},{"uri":449},"https://redcanary.com/threat-detection-report/trends/info-stealers/",[451],{"nodeType":256,"value":452,"marks":453,"data":455},"2024 Red Canary Threat Detection Report",[454],{"type":318},{},{"nodeType":256,"value":29,"marks":457,"data":458},[],{},{"nodeType":265,"data":460,"content":461},{},[462],{"nodeType":252,"data":463,"content":464},{},[465,469,478],{"nodeType":256,"value":466,"marks":467,"data":468},"Stolen credentials continued to rank as the top initial access method for breaches analyzed by Verizon. Source: ",[],{},{"nodeType":310,"data":470,"content":472},{"uri":471},"https://www.verizon.com/business/resources/reports/dbir/",[473],{"nodeType":256,"value":474,"marks":475,"data":477},"2024 Data Breach Investigations Report",[476],{"type":318},{},{"nodeType":256,"value":29,"marks":479,"data":480},[],{},{"nodeType":265,"data":482,"content":483},{},[484],{"nodeType":252,"data":485,"content":486},{},[487,491,499],{"nodeType":256,"value":488,"marks":489,"data":490},"The number of token replay attacks is increasing, with Microsoft detecting 147,000 attacks in 2023, a 111% increase year-over-year. Source: ",[],{},{"nodeType":310,"data":492,"content":494},{"uri":493},"https://techcommunity.microsoft.com/t5/microsoft-entra-blog/how-to-break-the-token-theft-cyber-attack-chain/ba-p/4062700",[495],{"nodeType":256,"value":496,"marks":497,"data":498},"Microsoft Blog",[],{},{"nodeType":256,"value":29,"marks":500,"data":501},[],{},{"nodeType":325,"data":503,"content":504},{},[505],{"nodeType":256,"value":506,"marks":507,"data":508},"What's missing from current defenses",[],{},{"nodeType":252,"data":510,"content":511},{},[512],{"nodeType":256,"value":513,"marks":514,"data":515},"When defending against infostealer malware or other forms of session and credential theft, there are a few common challenges that organizations may face:",[],{},{"nodeType":261,"data":517,"content":518},{},[519,529],{"nodeType":265,"data":520,"content":521},{},[522],{"nodeType":252,"data":523,"content":524},{},[525],{"nodeType":256,"value":526,"marks":527,"data":528},"Their endpoint security tooling doesn’t provide complete coverage across their device fleet, though they thought it did.",[],{},{"nodeType":265,"data":530,"content":531},{},[532],{"nodeType":252,"data":533,"content":534},{},[535],{"nodeType":256,"value":536,"marks":537,"data":538},"The malware is good enough to evade EDR detection, or it was able to execute and exfiltrate sessions or other data before it was stopped.",[],{},{"nodeType":252,"data":540,"content":541},{},[542],{"nodeType":256,"value":543,"marks":544,"data":545},"Existing approaches to detecting stolen sessions also pose a noisy problem. Relying on IP-based or geolocation-based signals can result in frequent false positives. (And not all identity provider logs include a session identifier that you can use to perform correlations in the first place.)",[],{},{"nodeType":252,"data":547,"content":548},{},[549],{"nodeType":256,"value":550,"marks":551,"data":552},"The missing piece is a trusted signal for legitimate sessions that you can use to correlate with other data in order to identify unexpected activity that indicates a compromised identity and device.",[],{},{"nodeType":325,"data":554,"content":555},{},[556],{"nodeType":256,"value":557,"marks":558,"data":559},"Generating unique telemetry via the browser",[],{},{"nodeType":252,"data":561,"content":562},{},[563],{"nodeType":256,"value":564,"marks":565,"data":566},"Push’s solution to detecting stolen sessions falls into the category of “so simple, why didn’t this already exist?”",[],{},{"nodeType":252,"data":568,"content":569},{},[570],{"nodeType":256,"value":571,"marks":572,"data":573},"The answer: Because you need to be in the browser to do it. The Push browser agent sits in a unique position that we can leverage to provide telemetry that otherwise would be extremely difficult to create.",[],{},{"nodeType":252,"data":575,"content":576},{},[577],{"nodeType":256,"value":578,"marks":579,"data":580},"Here’s how it works:",[],{},{"nodeType":261,"data":582,"content":583},{},[584,594,604],{"nodeType":265,"data":585,"content":586},{},[587],{"nodeType":252,"data":588,"content":589},{},[590],{"nodeType":256,"value":591,"marks":592,"data":593},"Via the Push browser agent, Push injects a unique marker into the user agent string of sessions that occur in browsers enrolled in Push.",[],{},{"nodeType":265,"data":595,"content":596},{},[597],{"nodeType":252,"data":598,"content":599},{},[600],{"nodeType":256,"value":601,"marks":602,"data":603},"Administrators then add the list of domains where they wish to inject the marker into sessions, such as an identity provider like Okta or Microsoft.",[],{},{"nodeType":265,"data":605,"content":606},{},[607],{"nodeType":252,"data":608,"content":609},{},[610,614,620,624,629],{"nodeType":256,"value":611,"marks":612,"data":613},"By analyzing logs from the IdP, you can identify activity from the same session that both ",[],{},{"nodeType":256,"value":615,"marks":616,"data":619},"has",[617],{"type":618},"italic",{},{"nodeType":256,"value":621,"marks":622,"data":623}," the Push marker and that ",[],{},{"nodeType":256,"value":625,"marks":626,"data":628},"lacks",[627],{"type":618},{},{"nodeType":256,"value":630,"marks":631,"data":632}," the marker. This can only ever happen when a session is extracted from a browser and maliciously imported into a different browser.",[],{},{"nodeType":252,"data":634,"content":635},{},[636],{"nodeType":256,"value":637,"marks":638,"data":639},"This is a high-fidelity signal that a stolen session token is in use.",[],{},{"nodeType":243,"data":641,"content":645},{"target":642},{"sys":643},{"id":644,"type":248,"linkType":249},"3zQamWSaZFIbMUhQZtM2II",[],{"nodeType":252,"data":647,"content":648},{},[649,653,661],{"nodeType":256,"value":650,"marks":651,"data":652},"Learn more about configuring this feature in our ",[],{},{"nodeType":310,"data":654,"content":655},{"uri":312},[656],{"nodeType":256,"value":657,"marks":658,"data":660},"Help Center",[659],{"type":318},{},{"nodeType":256,"value":662,"marks":663,"data":664},".",[],{},{"nodeType":243,"data":666,"content":670},{"target":667},{"sys":668},{"id":669,"type":248,"linkType":249},"35dpGqNY6cTM0fSQRflLiO",[],{"nodeType":325,"data":672,"content":673},{},[674],{"nodeType":256,"value":675,"marks":676,"data":677},"Unlocking new capabilities for blue teams",[],{},{"nodeType":252,"data":679,"content":680},{},[681],{"nodeType":256,"value":682,"marks":683,"data":684},"As we’ve said before, we see browser telemetry and browser-based controls as the missing piece in security strategies to stop identity attacks — particularly for modern organizations with complex identity ecosystems that span IdPs, SaaS apps, OAuth-connected apps, and more.",[],{},{"nodeType":252,"data":686,"content":687},{},[688],{"nodeType":256,"value":689,"marks":690,"data":691},"Where the browser agent approach particularly shines is that it’s application-agnostic. ",[],{},{"nodeType":252,"data":693,"content":694},{},[695],{"nodeType":256,"value":696,"marks":697,"data":698},"As long as the app you want to monitor provides robust logs, you can inject the Push-supplied marker into any session on any app. ",[],{},{"nodeType":252,"data":700,"content":701},{},[702],{"nodeType":256,"value":703,"marks":704,"data":705},"This allows you to detect suspicious activity even on internal corporate assets, such as an intranet. ",[],{},{"nodeType":252,"data":707,"content":708},{},[709],{"nodeType":256,"value":710,"marks":711,"data":712},"A tidy side effect is that you can also use this feature to identify unmanaged devices accessing sensitive corporate internal resources because they will lack the Push browser agent-supplied marker.",[],{},{"nodeType":252,"data":714,"content":715},{},[716],{"nodeType":256,"value":717,"marks":718,"data":719},"There are probably a few other creative use cases for this feature, so we look forward to seeing what you come up with!",[],{},{"nodeType":325,"data":721,"content":722},{},[723],{"nodeType":256,"value":724,"marks":725,"data":726},"Find out more",[],{},{"nodeType":252,"data":728,"content":729},{},[730,734,743],{"nodeType":256,"value":731,"marks":732,"data":733},"To see Push in action, ",[],{},{"nodeType":310,"data":735,"content":737},{"uri":736},"https://pushsecurity.com/demo/",[738],{"nodeType":256,"value":739,"marks":740,"data":742},"book a demo",[741],{"type":318},{},{"nodeType":256,"value":744,"marks":745,"data":746},". 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":748},{"hyperlink":749,"inline":750,"block":751},[],[],[752,761,768,776],{"sys":753,"__typename":754,"title":755,"youTubeUrl":756,"imagePlaceholder":757},{"id":247},"ExternalVideo","Introducing session token theft detection with Push","https://www.youtube.com/watch?v=p4UCfeTs_po",{"url":758,"width":759,"height":760},"https://images.ctfassets.net/y1cdw1ablpvd/3HHLFnvZ0hkovL7MJMGQN2/d82ab3a6757201d2cf9869ade89c9091/Screenshot_2024-08-15_at_07.15.04.png",3358,1888,{"sys":762,"__typename":763,"title":764,"caption":764,"layoutMode":62,"file":765},{"id":403},"Image","The 2024 Sophos Threat Report shows the prevalence of info stealer malware.",{"url":766,"width":33,"height":767},"https://images.ctfassets.net/y1cdw1ablpvd/ntLmjUBbgKFILEraHAiLC/dbefc5df68c0260dd6301237af4ba49a/image3.png",432,{"sys":769,"__typename":763,"title":770,"caption":771,"layoutMode":62,"file":772},{"id":644},"Illustration of detected session activity showing the missing Push marker","Illustration of detected session activity showing the missing Push marker.",{"url":773,"width":774,"height":775},"https://images.ctfassets.net/y1cdw1ablpvd/7CDurJgGW12KszlFzOr68K/482d37d80bc5f76ba70e6b8d3161e9bd/image1.png",1440,398,{"sys":777,"__typename":763,"title":778,"caption":778,"layoutMode":62,"file":779},{"id":669},"Sample syntax for querying session theft in a SIEM.",{"url":780,"width":781,"height":782},"https://images.ctfassets.net/y1cdw1ablpvd/1eutG6NRlAHZB3w335MJzR/7708168c4ae2a28e4f2470e5f49e8138/image2.png",735,115,"json",{"items":785},[],{},"Detecting session token theft using Push browser telemetry","2024-06-25T00:00:00.000Z",{"items":790},[791,1199,1701],{"__typename":792,"sys":793,"content":795,"title":1178,"synopsis":1179,"hashTags":62,"publishedDate":1180,"slug":1181,"tagsCollection":1182,"authorsCollection":1192},"BlogPosts",{"id":794},"4pXsh0RffPhT783P6CNlOA",{"json":796},{"nodeType":239,"data":797,"content":798},{},[799,806,813,819,826,833,840,847,854,861,925,931,938,945,961,968,975,982,989,996,1003,1014,1021,1027,1034,1041,1048,1055,1062,1068,1076,1096,1103,1110,1117,1160],{"nodeType":252,"data":800,"content":801},{},[802],{"nodeType":256,"value":803,"marks":804,"data":805},"When the media reports that a popular third-party service provider has suffered a breach and stolen credentials are being sold online, it’s inevitable for your security team to get asked, “Are we affected by this?”",[],{},{"nodeType":252,"data":807,"content":808},{},[809],{"nodeType":256,"value":810,"marks":811,"data":812},"Push helps its customers to answer this question in seconds and with absolute certainty. Here’s how.",[],{},{"nodeType":243,"data":814,"content":818},{"target":815},{"sys":816},{"id":817,"type":248,"linkType":249},"56lMG3VskDDU1dUHzgQxFK",[],{"nodeType":325,"data":820,"content":821},{},[822],{"nodeType":256,"value":823,"marks":824,"data":825},"Step 1: Are we using the breached service?",[],{},{"nodeType":252,"data":827,"content":828},{},[829],{"nodeType":256,"value":830,"marks":831,"data":832},"If this service is IT-managed in your organization, then you can probably answer this relatively quickly – at least for the tenant that is IT-managed. If it’s not, then you're going to need to check. ",[],{},{"nodeType":252,"data":834,"content":835},{},[836],{"nodeType":256,"value":837,"marks":838,"data":839},"That’s because end-users increasingly create SaaS accounts and tenants themselves without going through IT. When a third-party data breach hits the headlines, security teams are often surprised to find out that they have people in their organizations using that service.",[],{},{"nodeType":252,"data":841,"content":842},{},[843],{"nodeType":256,"value":844,"marks":845,"data":846},"Push uses a browser agent to track every login to every application made by your employees. It offers ground truth for answering questions like: Are we using the service? Who in the business is using it, and how are they accessing it?",[],{},{"nodeType":252,"data":848,"content":849},{},[850],{"nodeType":256,"value":851,"marks":852,"data":853},"Push can also highlight issues like missing MFA and if an employee is re-using the same password across multiple services — vital information if user credentials for the breached service have been leaked.",[],{},{"nodeType":252,"data":855,"content":856},{},[857],{"nodeType":256,"value":858,"marks":859,"data":860},"There are other data sources that can be used, but they all have their drawbacks:    ",[],{},{"nodeType":261,"data":862,"content":863},{},[864,880,895,910],{"nodeType":265,"data":865,"content":866},{},[867],{"nodeType":252,"data":868,"content":869},{},[870,876],{"nodeType":256,"value":871,"marks":872,"data":875},"Network or SWG",[873],{"type":874},"bold",{},{"nodeType":256,"value":877,"marks":878,"data":879}," can show you whose endpoints accessed an app website, but not if they've ever logged into the app.",[],{},{"nodeType":265,"data":881,"content":882},{},[883],{"nodeType":252,"data":884,"content":885},{},[886,891],{"nodeType":256,"value":887,"marks":888,"data":890},"IdP",[889],{"type":874},{},{"nodeType":256,"value":892,"marks":893,"data":894}," can show you that you're using an app if it’s accessed using SSO, but if that’s the case then you already know about it. It won’t show you non-SSO apps, tenants, or accounts that are more likely to be compromised using stolen credentials.",[],{},{"nodeType":265,"data":896,"content":897},{},[898],{"nodeType":252,"data":899,"content":900},{},[901,906],{"nodeType":256,"value":902,"marks":903,"data":905},"Email",[904],{"type":874},{},{"nodeType":256,"value":907,"marks":908,"data":909}," can be used to quickly tell you if employees have received email from an app – indicating an account might exist – but won’t tell you if they signed up using personal email, when they last logged in or if they are using the same password for everything.",[],{},{"nodeType":265,"data":911,"content":912},{},[913],{"nodeType":252,"data":914,"content":915},{},[916,921],{"nodeType":256,"value":917,"marks":918,"data":920},"Finance / contract records",[919],{"type":874},{},{"nodeType":256,"value":922,"marks":923,"data":924}," take time to search through and will only cover the services you pay for (many SaaS products offer a free tier). Obviously these records won’t tell you anything about vulnerable accounts.  \n",[],{},{"nodeType":243,"data":926,"content":930},{"target":927},{"sys":928},{"id":929,"type":248,"linkType":249},"3pLEarsM0oltdxGlkHATbB",[],{"nodeType":325,"data":932,"content":933},{},[934],{"nodeType":256,"value":935,"marks":936,"data":937},"Step 2: Are any of our accounts currently vulnerable to account takeover through stolen creds?",[],{},{"nodeType":252,"data":939,"content":940},{},[941],{"nodeType":256,"value":942,"marks":943,"data":944},"If credentials are being sold on the dark web for a service your employees use, then you need to quickly determine whether any workforce accounts can be accessed using just the stolen credentials. In other words, are any of these accounts using a leaked password and/or missing MFA?",[],{},{"nodeType":252,"data":946,"content":947},{},[948,952,957],{"nodeType":256,"value":949,"marks":950,"data":951},"At this point, you might reach for your IdP and make sure that MFA is enforced for all logins to the affected app. But that’s only going to cover apps and tenants already using SSO. To make things more complicated, most apps still allow username and password logins in addition to SSO logins. You need to see accounts with SSO logins ",[],{},{"nodeType":256,"value":953,"marks":954,"data":956},"and",[955],{"type":618},{},{"nodeType":256,"value":958,"marks":959,"data":960}," local logins. ",[],{},{"nodeType":252,"data":962,"content":963},{},[964],{"nodeType":256,"value":965,"marks":966,"data":967},"The data that Push collects in the browser provides rich web app context. That means Push shows you how your employees are authenticating on every app, whether it’s password, OIDC, or SAML. ",[],{},{"nodeType":252,"data":969,"content":970},{},[971],{"nodeType":256,"value":972,"marks":973,"data":974},"When you search for a breached third-party service in Push, you’ll see which employees are using usernames and passwords but missing MFA on their accounts. You can then prioritize these accounts for password resets and enabling MFA to stop any stolen credentials from being used to access those accounts. ",[],{},{"nodeType":252,"data":976,"content":977},{},[978],{"nodeType":256,"value":979,"marks":980,"data":981},"As well as highlighting accounts missing MFA, Push fingerprints every password using a shortened salted hash and checks in the browser whether it has been leaked and/or is easily guessable. Armed with this information, you can quickly get these vulnerabilities fixed to reduce the likelihood of an account takeover.",[],{},{"nodeType":325,"data":983,"content":984},{},[985],{"nodeType":256,"value":986,"marks":987,"data":988},"Step 3: Are the stolen credentials being used anywhere else? ",[],{},{"nodeType":252,"data":990,"content":991},{},[992],{"nodeType":256,"value":993,"marks":994,"data":995},"The next consideration is whether the stolen credentials can be used by an attacker in a credential-stuffing attack to compromise accounts on other applications. ",[],{},{"nodeType":252,"data":997,"content":998},{},[999],{"nodeType":256,"value":1000,"marks":1001,"data":1002},"This is an important, and often overlooked, ring of the third-party data breach blast radius. ",[],{},{"nodeType":1004,"data":1005,"content":1006},"blockquote",{},[1007],{"nodeType":252,"data":1008,"content":1009},{},[1010],{"nodeType":256,"value":1011,"marks":1012,"data":1013},"Here at Push, we see that on average 1 in 3 users in every business reuse passwords across multiple accounts.",[],{},{"nodeType":252,"data":1015,"content":1016},{},[1017],{"nodeType":256,"value":1018,"marks":1019,"data":1020},"The password checks performed by Push also identify password reuse between applications. So if there’s a chance that a password has been stolen as part of the third-party data breach, you can make sure it’s changed across all applications. ",[],{},{"nodeType":243,"data":1022,"content":1026},{"target":1023},{"sys":1024},{"id":1025,"type":248,"linkType":249},"X9axqTO6dWEe1Jy49hAyG",[],{"nodeType":325,"data":1028,"content":1029},{},[1030],{"nodeType":256,"value":1031,"marks":1032,"data":1033},"Take action before breaches hit the headlines",[],{},{"nodeType":252,"data":1035,"content":1036},{},[1037],{"nodeType":256,"value":1038,"marks":1039,"data":1040},"The workflow described above takes seconds to perform in Push. It enables you to quickly investigate a third-party data breach to determine if you could have been impacted, and if so, to take targeted action to mitigate the risks. ",[],{},{"nodeType":252,"data":1042,"content":1043},{},[1044],{"nodeType":256,"value":1045,"marks":1046,"data":1047},"That said, no one enjoys scrambling to respond to these kinds of incidents. If you use Push, you can actually get out ahead of these issues so you’re not stuck having to react.",[],{},{"nodeType":252,"data":1049,"content":1050},{},[1051],{"nodeType":256,"value":1052,"marks":1053,"data":1054},"Push integrates stolen account threat intelligence and alerts you when employees are currently using the same password that’s being sold on the dark web. This allows you to take action at the earliest possible opportunity and harden vulnerable accounts before any data breach is reported in the media. ",[],{},{"nodeType":252,"data":1056,"content":1057},{},[1058],{"nodeType":256,"value":1059,"marks":1060,"data":1061},"What this means for you is that next time you’re asked, “Does this affect us?” you can say you dealt with any issues way before it landed in the headlines. ",[],{},{"nodeType":243,"data":1063,"content":1067},{"target":1064},{"sys":1065},{"id":1066,"type":248,"linkType":249},"2vFMyWtMlxzTqqtvCPmlGW",[],{"nodeType":1069,"data":1070,"content":1071},"heading-2",{},[1072],{"nodeType":256,"value":1073,"marks":1074,"data":1075},"Do we need to log in to another security tool to do this?",[],{},{"nodeType":252,"data":1077,"content":1078},{},[1079,1083,1092],{"nodeType":256,"value":1080,"marks":1081,"data":1082},"No. Using the ",[],{},{"nodeType":310,"data":1084,"content":1086},{"uri":1085},"https://pushsecurity.com/help/audience/administrators/docs/getting-started/#api-and-webhooks",[1087],{"nodeType":256,"value":1088,"marks":1089,"data":1091},"Push API",[1090],{"type":318},{},{"nodeType":256,"value":1093,"marks":1094,"data":1095},", you can quickly gather relevant data to support the response to a third-party data breach in your SIEM or XDR solution.",[],{},{"nodeType":1069,"data":1097,"content":1098},{},[1099],{"nodeType":256,"value":1100,"marks":1101,"data":1102},"Why not eliminate the risk of password-based attacks altogether? ",[],{},{"nodeType":252,"data":1104,"content":1105},{},[1106],{"nodeType":256,"value":1107,"marks":1108,"data":1109},"Push gives you the ability to react quickly and decisively to a third-party data breach. But it also enables you to take proactive steps to eliminate the risk of password-based attacks altogether so stolen credentials from third-party data breaches no longer pose a threat to your business. ",[],{},{"nodeType":252,"data":1111,"content":1112},{},[1113],{"nodeType":256,"value":1114,"marks":1115,"data":1116},"Push does this by:",[],{},{"nodeType":261,"data":1118,"content":1119},{},[1120,1130,1140,1150],{"nodeType":265,"data":1121,"content":1122},{},[1123],{"nodeType":252,"data":1124,"content":1125},{},[1126],{"nodeType":256,"value":1127,"marks":1128,"data":1129},"Stopping your employees from creating accounts with leaked, weak and reused passwords.",[],{},{"nodeType":265,"data":1131,"content":1132},{},[1133],{"nodeType":252,"data":1134,"content":1135},{},[1136],{"nodeType":256,"value":1137,"marks":1138,"data":1139},"Pinning passwords to individual apps. ",[],{},{"nodeType":265,"data":1141,"content":1142},{},[1143],{"nodeType":252,"data":1144,"content":1145},{},[1146],{"nodeType":256,"value":1147,"marks":1148,"data":1149},"Helping you to get all apps and accounts behind SSO.",[],{},{"nodeType":265,"data":1151,"content":1152},{},[1153],{"nodeType":252,"data":1154,"content":1155},{},[1156],{"nodeType":256,"value":1157,"marks":1158,"data":1159},"Blocking phishing attacks against your employees so their credentials aren’t stolen.",[],{},{"nodeType":252,"data":1161,"content":1162},{},[1163,1167,1174],{"nodeType":256,"value":1164,"marks":1165,"data":1166},"If you want to find out more about how Push can help you mitigate the risks of employee credentials being stolen in the third-party data breach, then ",[],{},{"nodeType":310,"data":1168,"content":1169},{"uri":736},[1170],{"nodeType":256,"value":739,"marks":1171,"data":1173},[1172],{"type":318},{},{"nodeType":256,"value":1175,"marks":1176,"data":1177}," and we’ll be happy to show you. ",[],{},"Investigating and responding to a third-party data breach using Push","How to use Push to investigate and respond to a third-party data breach, which results in credentials being stolen and sold on criminal marketplaces.  ","2024-06-13T00:00:00.000Z","investigating-and-responding-to-a-third-party-data-breach-using-push",{"items":1183},[1184,1188],{"sys":1185,"name":1187},{"id":1186},"4ksQNCFeBf8H4QIORqpRLw","Detection & response",{"sys":1189,"name":1191},{"id":1190},"3pjES4THCIfSAwhGdNwBcy","Browser security",{"items":1193},[1194],{"fullName":1195,"firstName":1196,"jobTitle":234,"profilePicture":1197},"Alex Henshall","Alex",{"url":1198},"https://images.ctfassets.net/y1cdw1ablpvd/2rz3Pre3b1MexPIQ4hzPUe/0ef8a092b7e7df00fbce3f7d1ccb96d1/Alex_Henshall.jpeg",{"__typename":792,"sys":1200,"content":1202,"title":1681,"synopsis":1682,"hashTags":62,"publishedDate":1683,"slug":1684,"tagsCollection":1685,"authorsCollection":1693},{"id":1201},"7yCGcUryKQGOHYHRtipn6W",{"json":1203},{"nodeType":239,"data":1204,"content":1205},{},[1206,1213,1220,1227,1234,1241,1248,1255,1262,1269,1287,1305,1312,1319,1339,1346,1358,1401,1408,1427,1435,1442,1449,1456,1463,1470,1537,1544,1550,1557,1564,1571,1578,1598,1605,1612,1619,1626,1633,1640,1647,1654,1661,1667,1674],{"nodeType":252,"data":1207,"content":1208},{},[1209],{"nodeType":256,"value":1210,"marks":1211,"data":1212},"User web activity can be a rich source of attack detection data. To this end, most organizations today ingest some form of network traffic data for security monitoring purposes. ",[],{},{"nodeType":252,"data":1214,"content":1215},{},[1216],{"nodeType":256,"value":1217,"marks":1218,"data":1219},"Typically, network traffic data is gathered by analyzing web proxy and/or DNS logs. But, we regularly speak to organizations that are frustrated with the challenge of piecing together web traffic data, without understanding the opportunity presented by the alternatives.",[],{},{"nodeType":252,"data":1221,"content":1222},{},[1223],{"nodeType":256,"value":1224,"marks":1225,"data":1226},"Even with proxies that can terminate TLS-encrypted datastreams, it’s difficult for even expert security teams to collect and analyze any meaningful data from web proxy logs. While the kind of data needed might be technically possible to extract, the process of reconstructing proxy data to analyze the specific data points that you really need, at scale, is prohibitively complicated.",[],{},{"nodeType":252,"data":1228,"content":1229},{},[1230],{"nodeType":256,"value":1231,"marks":1232,"data":1233},"The old “needle in a haystack” adage is very apt here! Rather than trying to piece together half-broken data – overlaying noisy proxy logs with other sources such as app and IdP telemetry – we think that the browser presents a much simpler way of analyzing relevant data points, particularly when it comes to identity attacks. ",[],{},{"nodeType":252,"data":1235,"content":1236},{},[1237],{"nodeType":256,"value":1238,"marks":1239,"data":1240},"Before we get on to detection opportunities in the browser, let’s take a deeper look at the web proxy situation.",[],{},{"nodeType":325,"data":1242,"content":1243},{},[1244],{"nodeType":256,"value":1245,"marks":1246,"data":1247},"Detection based on web proxy – how does it work and what are the limitations?",[],{},{"nodeType":252,"data":1249,"content":1250},{},[1251],{"nodeType":256,"value":1252,"marks":1253,"data":1254},"Web proxies generate common data points that can be used for threat detection, particularly when looking for indicators of an endpoint compromise. They work by inspecting network traffic to and from the endpoint, which includes web activity in the browser. ",[],{},{"nodeType":252,"data":1256,"content":1257},{},[1258],{"nodeType":256,"value":1259,"marks":1260,"data":1261},"The classic use case would be inspecting traffic from an endpoint to networked servers and devices, either on the local network or over the internet (e.g. via VPN), to detect signs of suspicious/malicious behavior from the device (indicating a potential compromise). Data is then shipped to a central proxy server where it can be analyzed for indicators of malicious activity. ",[],{},{"nodeType":252,"data":1263,"content":1264},{},[1265],{"nodeType":256,"value":1266,"marks":1267,"data":1268},"The traditional proxy setup has a number of limitations: ",[],{},{"nodeType":261,"data":1270,"content":1271},{},[1272],{"nodeType":265,"data":1273,"content":1274},{},[1275],{"nodeType":252,"data":1276,"content":1277},{},[1278,1283],{"nodeType":256,"value":1279,"marks":1280,"data":1282},"The proxy needs to be in a position to intercept traffic.",[1281],{"type":874},{},{"nodeType":256,"value":1284,"marks":1285,"data":1286}," It may only be active when a user is in the office, on a VPN and/or for external web traffic only. It might not work if a user is on their home or other other Wi-Fi – e.g. when working from Starbucks, or visiting a customer site, which isn’t an ideal setup in the era of remote working.  ",[],{},{"nodeType":261,"data":1288,"content":1289},{},[1290],{"nodeType":265,"data":1291,"content":1292},{},[1293],{"nodeType":252,"data":1294,"content":1295},{},[1296,1301],{"nodeType":256,"value":1297,"marks":1298,"data":1300},"Most web traffic is protected by TLS – so a proxy has to decrypt this to inspect what’s inside.",[1299],{"type":874},{},{"nodeType":256,"value":1302,"marks":1303,"data":1304}," At the very least you’re going to need to deploy a CA cert to every endpoint. But, some websites use things like certificate pinning or other SSL-enforcement controls to straight up prevent this. Unless you’re doing TLS-termination at scale with a COTS solution, then the ability to do proxy-based monitoring is seriously limited. ",[],{},{"nodeType":1069,"data":1306,"content":1307},{},[1308],{"nodeType":256,"value":1309,"marks":1310,"data":1311},"Proxies under the hood",[],{},{"nodeType":252,"data":1313,"content":1314},{},[1315],{"nodeType":256,"value":1316,"marks":1317,"data":1318},"Let’s pop the hood and take a look at the data you can collect using a web proxy that is useful for threat detection. ",[],{},{"nodeType":252,"data":1320,"content":1321},{},[1322,1326,1335],{"nodeType":256,"value":1323,"marks":1324,"data":1325},"Typically, you’re looking at data points such as domain names or IP addresses. If the proxy is terminating TLS, you might also have web URLs, the type of web content accessed, and other HTTP-level metadata. Higher level data like file uploads/downloads can sometimes be reconstructed when using very vanilla methods. More advanced proxies might run or open downloaded files in a sandbox for dynamic analysis to identify potentially malicious properties, which has ",[],{},{"nodeType":310,"data":1327,"content":1329},{"uri":1328},"https://www.cyfirma.com/research/html-smuggling-a-stealthier-approach-to-deliver-malware/",[1330],{"nodeType":256,"value":1331,"marks":1332,"data":1334},"given rise to techniques like HTML smuggling",[1333],{"type":318},{},{"nodeType":256,"value":1336,"marks":1337,"data":1338}," to hide these file downloads from advanced proxies. ",[],{},{"nodeType":252,"data":1340,"content":1341},{},[1342],{"nodeType":256,"value":1343,"marks":1344,"data":1345},"In practice this means that you might see that an endpoint at IP address X accessed google.com. If it’s an authenticated proxy, you might see the user of the endpoint as well. Using this data, it’s possible to see which endpoint’s owner accessed the web domain, but not the identity/account they used, or whether they actually logged in at all. So for the majority of in-house proxy setups not doing TLS-termination… that’s it. Even then, without decrypting TLS you can’t be sure you’re seeing the actual/final domain because of technologies like domain fronting that are commonly implemented in modern CDNs. ",[],{},{"nodeType":252,"data":1347,"content":1348},{},[1349,1353],{"nodeType":256,"value":1350,"marks":1351,"data":1352},"With TLS termination, it’s possible to see a lot more by inspecting/unpacking the HTTP data. At this point there are two possible approaches: Manual analysis after the fact, or automated analysis on the fly. ",[],{},{"nodeType":256,"value":1354,"marks":1355,"data":1357},"Unfortunately, there are problems with both options. ",[1356],{"type":874},{},{"nodeType":261,"data":1359,"content":1360},{},[1361,1381],{"nodeType":265,"data":1362,"content":1363},{},[1364],{"nodeType":252,"data":1365,"content":1366},{},[1367,1372,1376],{"nodeType":256,"value":1368,"marks":1369,"data":1371},"There is too much HTTP data to store and manually analyze everything:",[1370],{"type":874},{},{"nodeType":256,"value":1373,"marks":1374,"data":1375}," Usually, organizations limit the data being stored to specific metadata as opposed to trying to store everything (terabytes of data per day), which would be impossibly expensive to store (and also to build the server infrastructure required to index and search it – effectively a mini-datacenter). ",[],{},{"nodeType":256,"value":1377,"marks":1378,"data":1380},"Not to mention that storing detailed HTTP body data presents a significant security risk, as it includes valid session tokens/cookies for all your identities…  ",[1379],{"type":618},{},{"nodeType":265,"data":1382,"content":1383},{},[1384],{"nodeType":252,"data":1385,"content":1386},{},[1387,1392,1396],{"nodeType":256,"value":1388,"marks":1389,"data":1391},"Each web app is custom, making automated analysis (virtually) impossible:",[1390],{"type":874},{},{"nodeType":256,"value":1393,"marks":1394,"data":1395}," Proxy-based solutions have to reconstruct the data after TLS encryption. HTTP data is usually stored in large application JSON/XML objects or even in totally custom encoding – per each app. This means that complex, custom code is required per each app to be able to perform automated analysis. When businesses today are using hundreds of apps on average, ",[],{},{"nodeType":256,"value":1397,"marks":1398,"data":1400},"automating this process is not feasible as it requires constant reverse engineering of every web app. ",[1399],{"type":874},{},{"nodeType":252,"data":1402,"content":1403},{},[1404],{"nodeType":256,"value":1405,"marks":1406,"data":1407},"So what does this mean? Well, even organizations with a TLS-terminating proxy are limited to manual analysis of select metadata after-the-fact, which massively reduces its utility. You could sink a day or more’s analysis into gathering a small amount of useful data, for example whether a URL was accessed, but not necessarily which device/user, or what account/creds were used to log in). This means you’re probably going to use proxy data to aid in the investigation of a known incident rather than anything proactive. ",[],{},{"nodeType":252,"data":1409,"content":1410},{},[1411,1416,1422],{"nodeType":256,"value":1412,"marks":1413,"data":1415},"It might be ",[1414],{"type":874},{},{"nodeType":256,"value":1417,"marks":1418,"data":1421},"theoretically",[1419,1420],{"type":618},{"type":874},{},{"nodeType":256,"value":1423,"marks":1424,"data":1426}," possible to sift through decrypted HTTP data to identify and correlate identities and actions, effectively reconstructing web pages from the network traffic automatically and on the fly (in the same way that it’s theoretically possible to remove my head and transplant it onto your body), but is it practical or reasonable for most organizations to do this? No. ",[1425],{"type":874},{},{"nodeType":325,"data":1428,"content":1429},{},[1430],{"nodeType":256,"value":1431,"marks":1432,"data":1434},"Browser data: a better alternative?",[1433],{"type":874},{},{"nodeType":252,"data":1436,"content":1437},{},[1438],{"nodeType":256,"value":1439,"marks":1440,"data":1441},"One way of overcoming some of the limitations of the classic web proxy setup is to use a browser-based solution. It’s much easier to collect data at the browser level before it’s encrypted. ",[],{},{"nodeType":252,"data":1443,"content":1444},{},[1445],{"nodeType":256,"value":1446,"marks":1447,"data":1448},"A browser agent isn’t just a proxy for pre-TLS HTML data, though. In the browser, you’re able to dynamically interact with the DOM or the rendered web application, including its JS code. This makes it easy to find, for example, input fields for usernames and passwords. You can see what information the user is inputting and where, without needing to figure out how the data is encoded and sent back to the app. These are fairly generic fields that can be identified across your suite of apps without needing complex custom code. To put it in perspective, approximately 10 login cases cover the entirety of the SaaS apps we support (~1000). Using a proxy-based solution, each of these would require custom development.   ",[],{},{"nodeType":252,"data":1450,"content":1451},{},[1452],{"nodeType":256,"value":1453,"marks":1454,"data":1455},"While it's technically possible to keep track of multiple sessions for thousands of users across hundreds of apps via proxy, it’s no mean feat – made much easier when each extension is tracking one user, in one browser, and even knows the browser tab it’s running in. You also get additional context at the identity layer such as the email address, authentication protocol, and credentials used, neatly mapped to that specific user and browser profile – no more trying to link the owner of an IP address to log events!",[],{},{"nodeType":252,"data":1457,"content":1458},{},[1459],{"nodeType":256,"value":1460,"marks":1461,"data":1462},"The browser also has the added benefit of being a natural enforcement point. You can collect and analyze data dynamically, and produce an immediate response – rather than taking info away, analyzing it, and coming back with a detection minutes or hours later (and potentially prompting a manual response). ",[],{},{"nodeType":252,"data":1464,"content":1465},{},[1466],{"nodeType":256,"value":1467,"marks":1468,"data":1469},"Let’s look at a couple of examples based on how we’re using our browser agent to detect and block identity attacks. ",[],{},{"nodeType":261,"data":1471,"content":1472},{},[1473,1495,1516],{"nodeType":265,"data":1474,"content":1475},{},[1476],{"nodeType":252,"data":1477,"content":1478},{},[1479,1482,1491],{"nodeType":256,"value":29,"marks":1480,"data":1481},[],{},{"nodeType":310,"data":1483,"content":1485},{"uri":1484},"https://pushsecurity.com/blog/introducing-sso-password-protection/",[1486],{"nodeType":256,"value":1487,"marks":1488,"data":1490},"Pinning passwords to the legitimate site they are linked with",[1489],{"type":318},{},{"nodeType":256,"value":1492,"marks":1493,"data":1494},". This is made possible by interacting with the DOM to observe passwords being entered – enabling the Push agent to intercept and block before an HTTP network request can even be made. ",[],{},{"nodeType":265,"data":1496,"content":1497},{},[1498],{"nodeType":252,"data":1499,"content":1500},{},[1501,1504,1512],{"nodeType":256,"value":29,"marks":1502,"data":1503},[],{},{"nodeType":310,"data":1505,"content":1507},{"uri":1506},"https://pushsecurity.com/blog/introducing-aitm-phishing-toolkit-detection-powered-by-the-push-browser/",[1508],{"nodeType":256,"value":1509,"marks":1510,"data":1511},"Detecting and blocking malicious phishing tools",[],{},{"nodeType":256,"value":1513,"marks":1514,"data":1515}," running on websites by observing behavioral attributes in the browser, such as Javascript calls being made or data structures saved to local storage.",[],{},{"nodeType":265,"data":1517,"content":1518},{},[1519],{"nodeType":252,"data":1520,"content":1521},{},[1522,1525,1533],{"nodeType":256,"value":29,"marks":1523,"data":1524},[],{},{"nodeType":310,"data":1526,"content":1528},{"uri":1527},"https://pushsecurity.com/blog/manage-third-party-data-access/",[1529],{"nodeType":256,"value":1530,"marks":1531,"data":1532},"Observing users signing up to and using risky apps",[],{},{"nodeType":256,"value":1534,"marks":1535,"data":1536},", or changing or removing authentication methods, MFA methods, and configuration methods, which could indicate account takeover. ",[],{},{"nodeType":252,"data":1538,"content":1539},{},[1540],{"nodeType":256,"value":1541,"marks":1542,"data":1543},"It’s always useful to refer back to the concept of the Pyramid of Pain in these situations. The opportunities to detect and block in the browser tend to align with indicators at the apex of the pyramid, meaning they are a significant obstruction for attackers – and difficult to circumvent. This contrasts the indicators aligned with proxy-based solutions, which are much easier to bypass through, for example, IP masking using residential proxy networks, or changing the domains and URLs used for phishing campaigns.  ",[],{},{"nodeType":243,"data":1545,"content":1549},{"target":1546},{"sys":1547},{"id":1548,"type":248,"linkType":249},"HrK2xQak6KfjInDbeSgv8",[],{"nodeType":252,"data":1551,"content":1552},{},[1553],{"nodeType":256,"value":1554,"marks":1555,"data":1556},"In summary: Browser data provides high-fidelity indicators of malicious activity, without the complications of proxy-based approaches. The scope for response in the browser is significant and immediate, meaning it’s a great enforcement point for security controls to be able to disrupt attacks. ",[],{},{"nodeType":325,"data":1558,"content":1559},{},[1560],{"nodeType":256,"value":1561,"marks":1562,"data":1563},"Won’t my app and IdP logs cover this?",[],{},{"nodeType":252,"data":1565,"content":1566},{},[1567],{"nodeType":256,"value":1568,"marks":1569,"data":1570},"App and IdP logs are useful (when you can get them), but neither give you the full picture. ",[],{},{"nodeType":1069,"data":1572,"content":1573},{},[1574],{"nodeType":256,"value":1575,"marks":1576,"data":1577},"App logs are limited in availability, scope, and ease of ingestion ",[],{},{"nodeType":252,"data":1579,"content":1580},{},[1581,1585,1594],{"nodeType":256,"value":1582,"marks":1583,"data":1584},"When relying on app logs, you’re naturally constrained by the app provider. Many smaller apps provide no security logging, while others ",[],{},{"nodeType":310,"data":1586,"content":1588},{"uri":1587},"https://audit-logs.tax/",[1589],{"nodeType":256,"value":1590,"marks":1591,"data":1593},"lock security logging behind the premium tier subscription",[1592],{"type":318},{},{"nodeType":256,"value":1595,"marks":1596,"data":1597},". When logs are available, you’re limited to the events that the third-party deems suitable to log. ",[],{},{"nodeType":252,"data":1599,"content":1600},{},[1601],{"nodeType":256,"value":1602,"marks":1603,"data":1604},"Out of the 100 most popular apps we see across our customers, and perhaps the few dozen or so that are security critical, only a small handful provide any useful logging. This means, naturally, that the majority of apps do not. ",[],{},{"nodeType":252,"data":1606,"content":1607},{},[1608],{"nodeType":256,"value":1609,"marks":1610,"data":1611},"To top it all off, the process of extracting these logs and feeding them into your SIEM (or equivalent) is also not straightforward. The lack of out-of-the-box connectors for many apps means that complex custom architectures are required for collecting data. Some vendors place constraints on the format and mechanism for extracting logs which can make ingestion difficult to feed reliable detections – even before any meaningful analysis of the data can take place. ",[],{},{"nodeType":252,"data":1613,"content":1614},{},[1615],{"nodeType":256,"value":1616,"marks":1617,"data":1618},"Until application security logs are made widely available (and at no additional cost) it’s unlikely you’re going to be able to get the visibility you need from app logs, for every app your employees use (though of course there are exceptions – and we hope to see more vendors in future treating security as a minimum requirement, not a chargeable addon). ",[],{},{"nodeType":1069,"data":1620,"content":1621},{},[1622],{"nodeType":256,"value":1623,"marks":1624,"data":1625},"IdP logs cover only SSO integrated apps and are limited in scope",[],{},{"nodeType":252,"data":1627,"content":1628},{},[1629],{"nodeType":256,"value":1630,"marks":1631,"data":1632},"You might think, “but all of our business apps are behind SSO, right?” In reality, only about 1 in 3 apps support SSO (and even fewer at the ‘free’ tier). And in practice, our data shows us that only 1 in 5 apps on average are actually behind SSO per organization. The theoretical security benefit of IdP logs is that they provide context, a foundation for the user’s activity across (and between) a suite of apps. But because of the lack of coverage, this isn’t the case. ",[],{},{"nodeType":252,"data":1634,"content":1635},{},[1636],{"nodeType":256,"value":1637,"marks":1638,"data":1639},"IdP logs are naturally focused on authentication, and so don’t compensate for any gaps in app logging. Naturally, they are only able to observe what happens on the IdP side – and so are blind to client side attacks like phishing (which we’ve already shown the browser provides superior visibility of compared to typical alternatives like proxy logs).   ",[],{},{"nodeType":1069,"data":1641,"content":1642},{},[1643],{"nodeType":256,"value":1644,"marks":1645,"data":1646},"Browser is best for stopping identity attacks",[],{},{"nodeType":252,"data":1648,"content":1649},{},[1650],{"nodeType":256,"value":1651,"marks":1652,"data":1653},"This is where the browser comes in. Think of your browser as your source of truth, a broad data baseline for user activity where the browser provides complete context of the browser profile, employee, accounts, credentials, auth methods, and MFA types – as well as employee interaction with web sites.",[],{},{"nodeType":252,"data":1655,"content":1656},{},[1657],{"nodeType":256,"value":1658,"marks":1659,"data":1660},"The TL;DR is that your visibility in the browser is theoretically limitless. Every page loaded (and its source, javascript state, local storage), every user interaction can be observed. And best of all, this analysis is done securely in the browser and only the results of detections are reported back, rather than decrypting the entire raw traffic stream including all session data in an additional centralized system. ",[],{},{"nodeType":243,"data":1662,"content":1666},{"target":1663},{"sys":1664},{"id":1665,"type":248,"linkType":249},"5jPCGPO1tnIkoI7MKW4oUi",[],{"nodeType":325,"data":1668,"content":1669},{},[1670],{"nodeType":256,"value":1671,"marks":1672,"data":1673},"Conclusion",[],{},{"nodeType":252,"data":1675,"content":1676},{},[1677],{"nodeType":256,"value":1678,"marks":1679,"data":1680},"As an industry, we need to start looking at browser-based detection and response as the next logical evolution to stop identity attacks. There are clear parallels with the emergence of EDR – which came about because existing endpoint log sources were not sufficient. Today, we wouldn’t dream of trying to detect and respond to endpoint-based attacks without EDR – it’s time we started thinking about cloud identity attacks and the browser in the same way.  ",[],{},"The web proxy is dead… long live the browser extension!","Right now the majority of detections for identity attacks rely on web proxy telemetry. Here’s why the browser can be a better alternative.","2024-06-11T00:00:00.000Z","the-web-proxy-is-dead-long-live-the-browser-extension",{"items":1686},[1687,1689],{"sys":1688,"name":1187},{"id":1186},{"sys":1690,"name":1692},{"id":1691},"6A5RXS31ZQx3PwryGb1IMy","Browser-based attacks",{"items":1694},[1695],{"fullName":1696,"firstName":1697,"jobTitle":1698,"profilePicture":1699},"Dan Green","Dan","Threat Research",{"url":1700},"https://images.ctfassets.net/y1cdw1ablpvd/7jik1VhFgA3kgzXBXTm2Vw/fcd8c171da644903d0827eafcfbcaad0/Dan_Headshot_2025.png",{"__typename":792,"sys":1702,"content":1704,"title":2123,"synopsis":2124,"hashTags":62,"publishedDate":2125,"slug":2126,"tagsCollection":2127,"authorsCollection":2135},{"id":1703},"4EfGLsD4qOkE4AoTUoL83m",{"json":1705},{"nodeType":239,"data":1706,"content":1707},{},[1708,1714,1736,1757,1776,1796,1819,1826,1847,1868,1875,1881,1888,1895,1902,1909,1916,1923,1930,1937,1944,1965,1972,1978,2003,2010,2029,2035,2056,2063,2070,2077,2084,2102,2108],{"nodeType":243,"data":1709,"content":1713},{"target":1710},{"sys":1711},{"id":1712,"type":248,"linkType":249},"B8i0EK90Dn7FLrJXR4ANh",[],{"nodeType":252,"data":1715,"content":1716},{},[1717,1721,1732],{"nodeType":256,"value":1718,"marks":1719,"data":1720},"Is the golden era of MFA protection over? Watch a demo of an ",[],{},{"nodeType":1722,"data":1723,"content":1727},"entry-hyperlink",{"target":1724},{"sys":1725},{"id":1726,"type":248,"linkType":249},"7DJnckJxP4CXyXhPJJpby5",[1728],{"nodeType":256,"value":1729,"marks":1730,"data":1731},"EvilNoVNC phishing attack",[],{},{"nodeType":256,"value":1733,"marks":1734,"data":1735}," and you may be left sweating a little and whispering “FIDO2” like a protection spell.",[],{},{"nodeType":252,"data":1737,"content":1738},{},[1739,1743,1753],{"nodeType":256,"value":1740,"marks":1741,"data":1742},"With the widespread adoption of MFA, attackers are ",[],{},{"nodeType":1722,"data":1744,"content":1748},{"target":1745},{"sys":1746},{"id":1747,"type":248,"linkType":249},"6XIts2UEnrsJDki8gKDXyI",[1749],{"nodeType":256,"value":1750,"marks":1751,"data":1752},"increasingly turning",[],{},{"nodeType":256,"value":1754,"marks":1755,"data":1756}," to more sophisticated methods of credential theft as their initial point of entry. ",[],{},{"nodeType":252,"data":1758,"content":1759},{},[1760,1764,1772],{"nodeType":256,"value":1761,"marks":1762,"data":1763},"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":310,"data":1765,"content":1767},{"uri":1766},"https://www.lab539.com/blog/6-months-tracking-aitm-campaigns",[1768],{"nodeType":256,"value":1769,"marks":1770,"data":1771},"on the rise",[],{},{"nodeType":256,"value":1773,"marks":1774,"data":1775},", an unsurprising response to the broad use of multi-factor authentication in many organizations.",[],{},{"nodeType":252,"data":1777,"content":1778},{},[1779,1783,1792],{"nodeType":256,"value":1780,"marks":1781,"data":1782},"What sets this generation of ",[],{},{"nodeType":1722,"data":1784,"content":1787},{"target":1785},{"sys":1786},{"id":1726,"type":248,"linkType":249},[1788],{"nodeType":256,"value":1789,"marks":1790,"data":1791},"Adversary-in-the-Middle (AitM) phishing tools",[],{},{"nodeType":256,"value":1793,"marks":1794,"data":1795}," apart? ",[],{},{"nodeType":261,"data":1797,"content":1798},{},[1799,1809],{"nodeType":265,"data":1800,"content":1801},{},[1802],{"nodeType":252,"data":1803,"content":1804},{},[1805],{"nodeType":256,"value":1806,"marks":1807,"data":1808},"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":265,"data":1810,"content":1811},{},[1812],{"nodeType":252,"data":1813,"content":1814},{},[1815],{"nodeType":256,"value":1816,"marks":1817,"data":1818},"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":1820,"content":1821},{},[1822],{"nodeType":256,"value":1823,"marks":1824,"data":1825},"These AitM tools are also difficult to detect — unless you have eyes in the browser.",[],{},{"nodeType":252,"data":1827,"content":1828},{},[1829,1833,1843],{"nodeType":256,"value":1830,"marks":1831,"data":1832},"Powered by the Push browser agent, Push now offers a ",[],{},{"nodeType":1722,"data":1834,"content":1838},{"target":1835},{"sys":1836},{"id":1837,"type":248,"linkType":249},"7KRnTSnJAbbiho69gNyN0B",[1839],{"nodeType":256,"value":1840,"marks":1841,"data":1842},"preconfigured set of detections",[],{},{"nodeType":256,"value":1844,"marks":1845,"data":1846}," 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":1848,"content":1849},{},[1850,1854,1864],{"nodeType":256,"value":1851,"marks":1852,"data":1853},"While Push already provides strong phishing protection by ",[],{},{"nodeType":1722,"data":1855,"content":1859},{"target":1856},{"sys":1857},{"id":1858,"type":248,"linkType":249},"4UtRVoFElDduWJBx9Sa4Cw",[1860],{"nodeType":256,"value":1861,"marks":1862,"data":1863},"preventing SSO password use",[],{},{"nodeType":256,"value":1865,"marks":1866,"data":1867}," 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":1869,"content":1870},{},[1871],{"nodeType":256,"value":1872,"marks":1873,"data":1874},"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":1876,"content":1880},{"target":1877},{"sys":1878},{"id":1879,"type":248,"linkType":249},"59q6klX2j7ClgUvmix93sG",[],{"nodeType":325,"data":1882,"content":1883},{},[1884],{"nodeType":256,"value":1885,"marks":1886,"data":1887},"Taking a page from EDR",[],{},{"nodeType":252,"data":1889,"content":1890},{},[1891],{"nodeType":256,"value":1892,"marks":1893,"data":1894},"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":1896,"content":1897},{},[1898],{"nodeType":256,"value":1899,"marks":1900,"data":1901},"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":1903,"content":1904},{},[1905],{"nodeType":256,"value":1906,"marks":1907,"data":1908},"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":1910,"content":1911},{},[1912],{"nodeType":256,"value":1913,"marks":1914,"data":1915},"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":1917,"content":1918},{},[1919],{"nodeType":256,"value":1920,"marks":1921,"data":1922},"By performing behavioral analysis on AitM automated proxy tools, we can directly analyze the application for a precise and immediate identification. ",[],{},{"nodeType":252,"data":1924,"content":1925},{},[1926],{"nodeType":256,"value":1927,"marks":1928,"data":1929},"Push researchers are regularly identifying and adding detections for new toolkits — think of this like Push’s database of threat research in action.",[],{},{"nodeType":325,"data":1931,"content":1932},{},[1933],{"nodeType":256,"value":1934,"marks":1935,"data":1936},"How it works",[],{},{"nodeType":252,"data":1938,"content":1939},{},[1940],{"nodeType":256,"value":1941,"marks":1942,"data":1943},"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":1945,"content":1946},{},[1947,1951,1961],{"nodeType":256,"value":1948,"marks":1949,"data":1950},"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":1722,"data":1952,"content":1956},{"target":1953},{"sys":1954},{"id":1955,"type":248,"linkType":249},"BtDLgVZRWQ3Ov4WgDQX1W",[1957],{"nodeType":256,"value":1958,"marks":1959,"data":1960},"security controls",[],{},{"nodeType":256,"value":1962,"marks":1963,"data":1964},", including preventing SSO password reuse, blocking malicious websites, or steering employees to approved apps only.",[],{},{"nodeType":252,"data":1966,"content":1967},{},[1968],{"nodeType":256,"value":1969,"marks":1970,"data":1971},"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":1973,"content":1977},{"target":1974},{"sys":1975},{"id":1976,"type":248,"linkType":249},"1LdHJjTDlOiie5mctbAVvZ",[],{"nodeType":252,"data":1979,"content":1980},{},[1981,1985,1990,1994,1999],{"nodeType":256,"value":1982,"marks":1983,"data":1984},"In ",[],{},{"nodeType":256,"value":1986,"marks":1987,"data":1989},"Block",[1988],{"type":874},{},{"nodeType":256,"value":1991,"marks":1992,"data":1993}," mode, users cannot proceed to the site where malicious software has been detected. In ",[],{},{"nodeType":256,"value":1995,"marks":1996,"data":1998},"Warn",[1997],{"type":874},{},{"nodeType":256,"value":2000,"marks":2001,"data":2002}," mode, users can choose to proceed if they are sure it’s not a phishing site.",[],{},{"nodeType":252,"data":2004,"content":2005},{},[2006],{"nodeType":256,"value":2007,"marks":2008,"data":2009},"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":2011,"content":2012},{},[2013,2017,2025],{"nodeType":256,"value":2014,"marks":2015,"data":2016},"Administrators can also consume phishing tool detection events via the ",[],{},{"nodeType":310,"data":2018,"content":2020},{"uri":2019},"https://pushsecurity.redoc.ly/rest-v1/",[2021],{"nodeType":256,"value":2022,"marks":2023,"data":2024},"Push REST API",[],{},{"nodeType":256,"value":2026,"marks":2027,"data":2028}," into their SIEM or use Push’s webhooks to alert when a warn or block event has occurred.",[],{},{"nodeType":243,"data":2030,"content":2034},{"target":2031},{"sys":2032},{"id":2033,"type":248,"linkType":249},"6oAhxLBPVxN3Rcw2kFeVtG",[],{"nodeType":252,"data":2036,"content":2037},{},[2038,2042,2052],{"nodeType":256,"value":2039,"marks":2040,"data":2041},"Pairing this phishing detection capability with Push’s ",[],{},{"nodeType":1722,"data":2043,"content":2047},{"target":2044},{"sys":2045},{"id":2046,"type":248,"linkType":249},"6FYHbkcRUrtznPo7RarRsz",[2048],{"nodeType":256,"value":2049,"marks":2050,"data":2051},"SSO password protection",[],{},{"nodeType":256,"value":2053,"marks":2054,"data":2055}," feature provides a strong defense-in-depth strategy for stopping credential theft.",[],{},{"nodeType":252,"data":2057,"content":2058},{},[2059],{"nodeType":256,"value":2060,"marks":2061,"data":2062},"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":2064,"content":2065},{},[2066],{"nodeType":256,"value":2067,"marks":2068,"data":2069},"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":325,"data":2071,"content":2072},{},[2073],{"nodeType":256,"value":2074,"marks":2075,"data":2076},"Looking ahead",[],{},{"nodeType":252,"data":2078,"content":2079},{},[2080],{"nodeType":256,"value":2081,"marks":2082,"data":2083},"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":2085,"content":2086},{},[2087,2091,2099],{"nodeType":256,"value":2088,"marks":2089,"data":2090},"Got feedback? We’d ",[],{},{"nodeType":310,"data":2092,"content":2094},{"uri":2093},"/contact/",[2095],{"nodeType":256,"value":2096,"marks":2097,"data":2098},"love to talk",[],{},{"nodeType":256,"value":662,"marks":2100,"data":2101},[],{},{"nodeType":325,"data":2103,"content":2104},{},[2105],{"nodeType":256,"value":724,"marks":2106,"data":2107},[],{},{"nodeType":252,"data":2109,"content":2110},{},[2111,2114,2120],{"nodeType":256,"value":731,"marks":2112,"data":2113},[],{},{"nodeType":310,"data":2115,"content":2116},{"uri":736},[2117],{"nodeType":256,"value":739,"marks":2118,"data":2119},[],{},{"nodeType":256,"value":744,"marks":2121,"data":2122},[],{},"Introducing AitM phishing toolkit detection, powered by the Push browser agent","Push analyzes behavioral attributes of malware to identify phishing tools like Evilginx and NakedPages and immediately block end-users from visiting them.","2024-06-06T00:00:00.000Z","introducing-aitm-phishing-toolkit-detection-powered-by-the-push-browser",{"items":2128},[2129,2133],{"sys":2130,"name":2132},{"id":2131},"5jk0kqjSdSK2L0YiistQjY","Release notes",{"sys":2134,"name":1187},{"id":1186},{"items":2136},[2137],{"fullName":232,"firstName":233,"jobTitle":234,"profilePicture":2138},{"url":236},"introducing-session-token-theft-detection-why-browser-is-best","blog/introducing-session-token-theft-detection-why-browser-is-best",{"json":2142},{"data":2143,"content":2144,"nodeType":239},{},[2145],{"data":2146,"content":2147,"nodeType":252},{},[2148],{"data":2149,"marks":2150,"value":2151,"nodeType":256},{},[],"Push identifies session token theft by adding telemetry to the user agent string – using the power of our browser agent to create a new high-fidelity signal for your security team.","Push's browser agent identifies session token theft by adding telemetry to the user agent string to create a new high-fidelity signal for your security team.",{"id":2154,"publishedAt":2155},"6Uvqu6LcWzOVfA9mxtu841","2026-06-30T14:18:37.097Z",{"items":2157},[2158,2160],{"sys":2159,"name":1187},{"id":1186},{"sys":2161,"name":2132},{"id":2131},"Bwe1UG9KUpf1tIJHaCD3JziDuQwxFiK2z-D_GrefR4M",1784196720101]