[{"data":1,"prerenderedAt":1737},["ShallowReactive",2],{"application-flags":3,"navbar":7,"always-visible-banner":36,"navbar-about-highlight":108,"navbar-resource-highlight":182,"blog/combining-the-powers-of-push-and-panther-to-stop-identity-attacks":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":693,"faqItemsCollection":694,"faqTitle":62,"featured":6,"hashTags":62,"meta":696,"metaTitle":697,"ogImage":62,"publishedDate":698,"relatedBlogPostsCollection":699,"slug":1713,"stem":1714,"subtitle":62,"summary":1715,"synopsis":1726,"sys":1727,"tagsCollection":1730,"__hash__":1736},"blog/blog/combining-the-powers-of-push-and-panther-to-stop-identity-attacks.json","Combining the powers of Push and Panther to stop identity attacks",{"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":647},{"nodeType":239,"data":240,"content":241},"document",{},[242,251,258,309,316,323,330,339,359,367,390,397,404,426,432,471,478,485,491,498,505,512,519,526,603,610,629],{"nodeType":243,"data":244,"content":245},"paragraph",{},[246],{"nodeType":247,"value":248,"marks":249,"data":250},"text","While Push’s official mission is to stop identity attacks, our unofficial motto might be described as “don’t make security teams log into another tool if they don’t have to.”",[],{},{"nodeType":243,"data":252,"content":253},{},[254],{"nodeType":247,"value":255,"marks":256,"data":257},"To that end, we’re thrilled to announce a new integration with Panther that makes it possible in a few clicks to:",[],{},{"nodeType":259,"data":260,"content":261},"unordered-list",{},[262,279,294],{"nodeType":263,"data":264,"content":265},"list-item",{},[266],{"nodeType":243,"data":267,"content":268},{},[269,275],{"nodeType":247,"value":270,"marks":271,"data":274},"Ingest Push logs",[272],{"type":273},"bold",{},{"nodeType":247,"value":276,"marks":277,"data":278}," into your Panther SIEM.",[],{},{"nodeType":263,"data":280,"content":281},{},[282],{"nodeType":243,"data":283,"content":284},{},[285,290],{"nodeType":247,"value":286,"marks":287,"data":289},"Use preconfigured data schemas",[288],{"type":273},{},{"nodeType":247,"value":291,"marks":292,"data":293}," for these logs without having to create your own.",[],{},{"nodeType":263,"data":295,"content":296},{},[297],{"nodeType":243,"data":298,"content":299},{},[300,305],{"nodeType":247,"value":301,"marks":302,"data":304},"Enable ready-made detections",[303],{"type":273},{},{"nodeType":247,"value":306,"marks":307,"data":308}," for Push webhook events, including session token theft and adversary-in-the-middle (AitM) phishing toolkits.",[],{},{"nodeType":243,"data":310,"content":311},{},[312],{"nodeType":247,"value":313,"marks":314,"data":315},"The combination of Push’s unique telemetry, powered by the Push browser agent, and Panther’s correlation and log normalization capabilities was a perfect match, explains Panther’s Head of Partnerships, Andrew Dooley.",[],{},{"nodeType":243,"data":317,"content":318},{},[319],{"nodeType":247,"value":320,"marks":321,"data":322},"“As a SIEM, we’re looking for where we can find the most impactful security information in our customers’ environments to bring into Panther,” Dooley says. ",[],{},{"nodeType":243,"data":324,"content":325},{},[326],{"nodeType":247,"value":327,"marks":328,"data":329},"“With identity-based attacks being so common and impactful, identity telemetry data directly from users' browsers is exactly the kind of high-impact logs we want to support our customers’ threat detection and investigation workflows.”",[],{},{"nodeType":331,"data":332,"content":338},"embedded-entry-block",{"target":333},{"sys":334},{"id":335,"type":336,"linkType":337},"77bCOg5nPKjyKdhH77dUox","Link","Entry",[],{"nodeType":243,"data":340,"content":341},{},[342,346,355],{"nodeType":247,"value":343,"marks":344,"data":345},"In this article, we’ll highlight some of the use cases you can achieve with the Push-Panther integration. Or, if you prefer, you can ",[],{},{"nodeType":347,"data":348,"content":350},"hyperlink",{"uri":349},"https://docs.panther.com/data-onboarding/supported-logs/push-security",[351],{"nodeType":247,"value":352,"marks":353,"data":354},"dive into the docs",[],{},{"nodeType":247,"value":356,"marks":357,"data":358}," right away.",[],{},{"nodeType":360,"data":361,"content":362},"heading-1",{},[363],{"nodeType":247,"value":364,"marks":365,"data":366},"How to detect session token theft with Push and Panther",[],{},{"nodeType":243,"data":368,"content":369},{},[370,374,386],{"nodeType":247,"value":371,"marks":372,"data":373},"A key use case we set out to solve with the Push-Panther integration is detecting ",[],{},{"nodeType":375,"data":376,"content":380},"entry-hyperlink",{"target":377},{"sys":378},{"id":379,"type":336,"linkType":337},"6Uvqu6LcWzOVfA9mxtu841",[381],{"nodeType":247,"value":382,"marks":383,"data":385},"session token theft",[384],{"type":273},{},{"nodeType":247,"value":387,"marks":388,"data":389},", a session hijacking technique where endpoint malware such as an infostealer is used to extract sessions and other valuable data from a device.",[],{},{"nodeType":243,"data":391,"content":392},{},[393],{"nodeType":247,"value":394,"marks":395,"data":396},"Using stolen tokens, attackers don’t even need to bypass MFA; they can just log in by importing the session cookie into their browser.",[],{},{"nodeType":243,"data":398,"content":399},{},[400],{"nodeType":247,"value":401,"marks":402,"data":403},"In the past, writing high-fidelity detections for session token theft has been extremely challenging because there was only squishy ground to stand on: IP-based or geo-based signals are noisy and frequently inaccurate.",[],{},{"nodeType":243,"data":405,"content":406},{},[407,411,422],{"nodeType":247,"value":408,"marks":409,"data":410},"Push recently released our ",[],{},{"nodeType":375,"data":412,"content":416},{"target":413},{"sys":414},{"id":415,"type":336,"linkType":337},"1UMZdjyNQt4Y7NBb2wuK4L",[417],{"nodeType":247,"value":418,"marks":419,"data":421},"session token theft detection",[420],{"type":273},{},{"nodeType":247,"value":423,"marks":424,"data":425}," feature, which uses the Push browser agent to inject a unique marker into the user agent string of sessions that occur in browsers enrolled in Push.",[],{},{"nodeType":331,"data":427,"content":431},{"target":428},{"sys":429},{"id":430,"type":336,"linkType":337},"3zQamWSaZFIbMUhQZtM2II",[],{"nodeType":243,"data":433,"content":434},{},[435,439,448,452,458,462,467],{"nodeType":247,"value":436,"marks":437,"data":438},"Things get interesting when you plug Push telemetry into Panther’s new ",[],{},{"nodeType":347,"data":440,"content":442},{"uri":441},"https://docs.panther.com/detections/correlation-rules",[443],{"nodeType":247,"value":444,"marks":445,"data":447},"Correlation Rules",[446],{"type":273},{},{"nodeType":247,"value":449,"marks":450,"data":451}," feature (or perform a correlation in your other SIEM of choice). By analyzing logs from your IdP, you can identify activity from the same session that both ",[],{},{"nodeType":247,"value":453,"marks":454,"data":457},"has",[455],{"type":456},"italic",{},{"nodeType":247,"value":459,"marks":460,"data":461}," and that ",[],{},{"nodeType":247,"value":463,"marks":464,"data":466},"lacks",[465],{"type":456},{},{"nodeType":247,"value":468,"marks":469,"data":470}," the Push marker, a high-fidelity signal that a stolen session token is being used by an adversary.",[],{},{"nodeType":243,"data":472,"content":473},{},[474],{"nodeType":247,"value":475,"marks":476,"data":477},"“Being able to correlate high-fidelity browser telemetry data with IdP logs and even more traditional endpoint logs is a powerful enabler for our users in catching bad actor behavior fast and early,” says Dooley, Panther’s Head of Partnerships.",[],{},{"nodeType":243,"data":479,"content":480},{},[481],{"nodeType":247,"value":482,"marks":483,"data":484},"Check out this video demo from Joe Stanulis, solutions engineer team lead at Push, and Nicholas Hakmiller, senior engineering manager at Panther, to see how Push and Panther combine their powers to detect session token theft.",[],{},{"nodeType":331,"data":486,"content":490},{"target":487},{"sys":488},{"id":489,"type":336,"linkType":337},"2hUt3IqTFlCMgC0jHTau58",[],{"nodeType":243,"data":492,"content":493},{},[494],{"nodeType":247,"value":495,"marks":496,"data":497},"As Dooley explains, “Push’s approach of generating visibility as well as security findings aligns well with Panther’s approach of centralizing customers’ security alerts but also combining multiple signals from different sources into one finding. For example, the Push agent can block phishing attacks when in Block mode, but when in Monitor mode, those findings can be sent to Panther to be correlated with other activity like unusual Okta logins to create a single alert that tells a more complete story of a user being compromised. ",[],{},{"nodeType":243,"data":499,"content":500},{},[501],{"nodeType":247,"value":502,"marks":503,"data":504},"“Similarly, the Push user agent string marker leaves a very visible fingerprint in logs from other systems, making it easy to incorporate this Push feature into Panther detections across a variety of log sources and use cases.”",[],{},{"nodeType":360,"data":506,"content":507},{},[508],{"nodeType":247,"value":509,"marks":510,"data":511},"What else can you do with Push and your SIEM?",[],{},{"nodeType":243,"data":513,"content":514},{},[515],{"nodeType":247,"value":516,"marks":517,"data":518},"As a browser agent, Push is uniquely positioned to provide telemetry on your identity infrastructure that you can’t easily get elsewhere. This data is a key element to stopping identity attacks and account takeover by providing the context security teams need to write detections and to perform correlations with existing log sources, such as an identity provider.",[],{},{"nodeType":243,"data":520,"content":521},{},[522],{"nodeType":247,"value":523,"marks":524,"data":525},"General use cases for ingesting Push data into your SIEM include:",[],{},{"nodeType":259,"data":527,"content":528},{},[529,558,573,588],{"nodeType":263,"data":530,"content":531},{},[532],{"nodeType":243,"data":533,"content":534},{},[535,540,544,554],{"nodeType":247,"value":536,"marks":537,"data":539},"Detecting phishing attempts",[538],{"type":273},{},{"nodeType":247,"value":541,"marks":542,"data":543}," from ",[],{},{"nodeType":375,"data":545,"content":549},{"target":546},{"sys":547},{"id":548,"type":336,"linkType":337},"4EfGLsD4qOkE4AoTUoL83m",[550],{"nodeType":247,"value":551,"marks":552,"data":553},"AitM phishing tools",[],{},{"nodeType":247,"value":555,"marks":556,"data":557}," like Evilginx or EvilNoVNC.",[],{},{"nodeType":263,"data":559,"content":560},{},[561],{"nodeType":243,"data":562,"content":563},{},[564,569],{"nodeType":247,"value":565,"marks":566,"data":568},"Monitoring for suspicious activity or high-risk changes",[567],{"type":273},{},{"nodeType":247,"value":570,"marks":571,"data":572}," such as MFA method changes or reuse of corporate SSO passwords on other apps.",[],{},{"nodeType":263,"data":574,"content":575},{},[576],{"nodeType":243,"data":577,"content":578},{},[579,584],{"nodeType":247,"value":580,"marks":581,"data":583},"Hardening identities and flagging poor hygiene behaviors",[582],{"type":273},{},{"nodeType":247,"value":585,"marks":586,"data":587},", such as logging into SSO-protected apps with local accounts or reusing passwords across business applications.",[],{},{"nodeType":263,"data":589,"content":590},{},[591],{"nodeType":243,"data":592,"content":593},{},[594,599],{"nodeType":247,"value":595,"marks":596,"data":598},"Detecting the use of stolen session tokens",[597],{"type":273},{},{"nodeType":247,"value":600,"marks":601,"data":602},", indicating a compromised identity and device, as discussed earlier.",[],{},{"nodeType":360,"data":604,"content":605},{},[606],{"nodeType":247,"value":607,"marks":608,"data":609},"Find out more",[],{},{"nodeType":243,"data":611,"content":612},{},[613,617,625],{"nodeType":247,"value":614,"marks":615,"data":616},"To see Push in action, ",[],{},{"nodeType":347,"data":618,"content":620},{"uri":619},"/demo/",[621],{"nodeType":247,"value":622,"marks":623,"data":624},"book a demo",[],{},{"nodeType":247,"value":626,"marks":627,"data":628},". We’ll be happy to show you our session theft detection 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.",[],{},{"nodeType":243,"data":630,"content":631},{},[632,636,643],{"nodeType":247,"value":633,"marks":634,"data":635},"For technical setup details on the Push-Panther integration, refer to the ",[],{},{"nodeType":347,"data":637,"content":638},{"uri":349},[639],{"nodeType":247,"value":640,"marks":641,"data":642},"Panther documentation",[],{},{"nodeType":247,"value":644,"marks":645,"data":646},".",[],{},{"entries":648},{"inline":649,"hyperlink":650,"block":666},[],[651,656,662],{"sys":652,"__typename":653,"title":654,"slug":655},{"id":379},"BlogPosts","Introducing session token theft detection: Why browser is best","introducing-session-token-theft-detection-why-browser-is-best",{"sys":657,"__typename":658,"title":659,"slug":660,"articleId":661},{"id":415},"HelpArticle","How does Push help detect session token theft?","how-does-push-help-detect-session-token-theft",10114,{"sys":663,"__typename":653,"title":664,"slug":665},{"id":548},"Introducing AitM phishing toolkit detection, powered by the Push browser agent","introducing-aitm-phishing-toolkit-detection-powered-by-the-push-browser",[667,676,684],{"sys":668,"__typename":669,"title":670,"caption":671,"layoutMode":62,"file":672},{"id":335},"Image","Panther configuration screen for Push custom log types","Panther configuration for Push custom log types",{"url":673,"width":674,"height":675},"https://images.ctfassets.net/y1cdw1ablpvd/2s4cvkCHZI0019FNQbHARA/125a9e84b1b3e062b705d34347688098/panther_push_integration_slideout.png",2558,1327,{"sys":677,"__typename":669,"title":678,"caption":679,"layoutMode":62,"file":680},{"id":430},"Illustration of detected session activity showing the missing Push marker","Illustration of detected session activity showing the missing Push marker.",{"url":681,"width":682,"height":683},"https://images.ctfassets.net/y1cdw1ablpvd/7CDurJgGW12KszlFzOr68K/482d37d80bc5f76ba70e6b8d3161e9bd/image1.png",1440,398,{"sys":685,"__typename":686,"title":687,"youTubeUrl":688,"imagePlaceholder":689},{"id":489},"ExternalVideo","Push-Panther session theft detection demo","https://www.youtube.com/watch?v=8JNoQ4EhDXA",{"url":690,"width":691,"height":692},"https://images.ctfassets.net/y1cdw1ablpvd/1eUEWHLBJD3ZVTyfbLUJLm/48965fb21cdaabfdb738217ee5b548b7/push-panther-title-card.png",1116,573,"json",{"items":695},[],{},"Integrate Push Security and Panther","2024-06-25T00:00:00.000Z",{"items":700},[701,1210],{"__typename":653,"sys":702,"content":703,"title":654,"synopsis":1195,"hashTags":62,"publishedDate":698,"slug":655,"tagsCollection":1196,"authorsCollection":1206},{"id":379},{"json":704},{"nodeType":239,"data":705,"content":706},{},[707,713,720,753,760,781,788,834,841,848,855,861,868,958,965,972,995,1002,1009,1016,1023,1030,1037,1086,1093,1098,1116,1122,1129,1136,1143,1150,1157,1164,1171,1177],{"nodeType":331,"data":708,"content":712},{"target":709},{"sys":710},{"id":711,"type":336,"linkType":337},"2HffP4X7owzpfj41jnzXmV",[],{"nodeType":243,"data":714,"content":715},{},[716],{"nodeType":247,"value":717,"marks":718,"data":719},"To detect session token theft, you need three things:",[],{},{"nodeType":259,"data":721,"content":722},{},[723,733,743],{"nodeType":263,"data":724,"content":725},{},[726],{"nodeType":243,"data":727,"content":728},{},[729],{"nodeType":247,"value":730,"marks":731,"data":732},"Robust logs that provide an identifier to help tie activity to a specific session",[],{},{"nodeType":263,"data":734,"content":735},{},[736],{"nodeType":243,"data":737,"content":738},{},[739],{"nodeType":247,"value":740,"marks":741,"data":742},"A well-oiled SOC to correlate observed activity in those logs",[],{},{"nodeType":263,"data":744,"content":745},{},[746],{"nodeType":243,"data":747,"content":748},{},[749],{"nodeType":247,"value":750,"marks":751,"data":752},"And telemetry to tie those logs to a trusted endpoint",[],{},{"nodeType":243,"data":754,"content":755},{},[756],{"nodeType":247,"value":757,"marks":758,"data":759},"The only problem? That third thing didn’t really exist. So we created it.",[],{},{"nodeType":243,"data":761,"content":762},{},[763,767,777],{"nodeType":247,"value":764,"marks":765,"data":766},"In this article, we’ll cover how Push’s recently released ",[],{},{"nodeType":347,"data":768,"content":770},{"uri":769},"https://pushsecurity.com/help/10114#start",[771],{"nodeType":247,"value":772,"marks":773,"data":776},"session theft detection",[774],{"type":775},"underline",{},{"nodeType":247,"value":778,"marks":779,"data":780}," 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":360,"data":782,"content":783},{},[784],{"nodeType":247,"value":785,"marks":786,"data":787},"(You probably already know) Why this matters",[],{},{"nodeType":243,"data":789,"content":790},{},[791,795,804,808,817,821,830],{"nodeType":247,"value":792,"marks":793,"data":794},"Session token theft is a ",[],{},{"nodeType":347,"data":796,"content":798},{"uri":797},"https://owasp.org/www-community/attacks/Session_hijacking_attack",[799],{"nodeType":247,"value":800,"marks":801,"data":803},"session hijacking",[802],{"type":775},{},{"nodeType":247,"value":805,"marks":806,"data":807}," technique where endpoint malware is used to extract sessions from an endpoint, and until recently it was ",[],{},{"nodeType":347,"data":809,"content":811},{"uri":810},"https://www.microsoft.com/en-us/security/blog/2022/11/16/token-tactics-how-to-prevent-detect-and-respond-to-cloud-token-theft/",[812],{"nodeType":247,"value":813,"marks":814,"data":816},"relatively rare",[815],{"type":775},{},{"nodeType":247,"value":818,"marks":819,"data":820},". It’s easier to ",[],{},{"nodeType":347,"data":822,"content":824},{"uri":823},"https://pushsecurity.com/blog/what-is-credential-stuffing/",[825],{"nodeType":247,"value":826,"marks":827,"data":829},"gain access via a password",[828],{"type":775},{},{"nodeType":247,"value":831,"marks":832,"data":833}," than it is to steal a session cookie. ",[],{},{"nodeType":243,"data":835,"content":836},{},[837],{"nodeType":247,"value":838,"marks":839,"data":840},"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":243,"data":842,"content":843},{},[844],{"nodeType":247,"value":845,"marks":846,"data":847},"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":243,"data":849,"content":850},{},[851],{"nodeType":247,"value":852,"marks":853,"data":854},"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":331,"data":856,"content":860},{"target":857},{"sys":858},{"id":859,"type":336,"linkType":337},"66B5MBFIhbmky7VuLGbuM3",[],{"nodeType":243,"data":862,"content":863},{},[864],{"nodeType":247,"value":865,"marks":866,"data":867},"A few recent stats show the scope of the problem:",[],{},{"nodeType":259,"data":869,"content":870},{},[871,893,915,937],{"nodeType":263,"data":872,"content":873},{},[874],{"nodeType":243,"data":875,"content":876},{},[877,881,890],{"nodeType":247,"value":878,"marks":879,"data":880},"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":347,"data":882,"content":884},{"uri":883},"https://news.sophos.com/en-us/2024/03/12/2024-sophos-threat-report/",[885],{"nodeType":247,"value":886,"marks":887,"data":889},"2024 Sophos Threat Report",[888],{"type":775},{},{"nodeType":247,"value":29,"marks":891,"data":892},[],{},{"nodeType":263,"data":894,"content":895},{},[896],{"nodeType":243,"data":897,"content":898},{},[899,903,912],{"nodeType":247,"value":900,"marks":901,"data":902},"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":347,"data":904,"content":906},{"uri":905},"https://redcanary.com/threat-detection-report/trends/info-stealers/",[907],{"nodeType":247,"value":908,"marks":909,"data":911},"2024 Red Canary Threat Detection Report",[910],{"type":775},{},{"nodeType":247,"value":29,"marks":913,"data":914},[],{},{"nodeType":263,"data":916,"content":917},{},[918],{"nodeType":243,"data":919,"content":920},{},[921,925,934],{"nodeType":247,"value":922,"marks":923,"data":924},"Stolen credentials continued to rank as the top initial access method for breaches analyzed by Verizon. Source: ",[],{},{"nodeType":347,"data":926,"content":928},{"uri":927},"https://www.verizon.com/business/resources/reports/dbir/",[929],{"nodeType":247,"value":930,"marks":931,"data":933},"2024 Data Breach Investigations Report",[932],{"type":775},{},{"nodeType":247,"value":29,"marks":935,"data":936},[],{},{"nodeType":263,"data":938,"content":939},{},[940],{"nodeType":243,"data":941,"content":942},{},[943,947,955],{"nodeType":247,"value":944,"marks":945,"data":946},"The number of token replay attacks is increasing, with Microsoft detecting 147,000 attacks in 2023, a 111% increase year-over-year. Source: ",[],{},{"nodeType":347,"data":948,"content":950},{"uri":949},"https://techcommunity.microsoft.com/t5/microsoft-entra-blog/how-to-break-the-token-theft-cyber-attack-chain/ba-p/4062700",[951],{"nodeType":247,"value":952,"marks":953,"data":954},"Microsoft Blog",[],{},{"nodeType":247,"value":29,"marks":956,"data":957},[],{},{"nodeType":360,"data":959,"content":960},{},[961],{"nodeType":247,"value":962,"marks":963,"data":964},"What's missing from current defenses",[],{},{"nodeType":243,"data":966,"content":967},{},[968],{"nodeType":247,"value":969,"marks":970,"data":971},"When defending against infostealer malware or other forms of session and credential theft, there are a few common challenges that organizations may face:",[],{},{"nodeType":259,"data":973,"content":974},{},[975,985],{"nodeType":263,"data":976,"content":977},{},[978],{"nodeType":243,"data":979,"content":980},{},[981],{"nodeType":247,"value":982,"marks":983,"data":984},"Their endpoint security tooling doesn’t provide complete coverage across their device fleet, though they thought it did.",[],{},{"nodeType":263,"data":986,"content":987},{},[988],{"nodeType":243,"data":989,"content":990},{},[991],{"nodeType":247,"value":992,"marks":993,"data":994},"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":243,"data":996,"content":997},{},[998],{"nodeType":247,"value":999,"marks":1000,"data":1001},"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":243,"data":1003,"content":1004},{},[1005],{"nodeType":247,"value":1006,"marks":1007,"data":1008},"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":360,"data":1010,"content":1011},{},[1012],{"nodeType":247,"value":1013,"marks":1014,"data":1015},"Generating unique telemetry via the browser",[],{},{"nodeType":243,"data":1017,"content":1018},{},[1019],{"nodeType":247,"value":1020,"marks":1021,"data":1022},"Push’s solution to detecting stolen sessions falls into the category of “so simple, why didn’t this already exist?”",[],{},{"nodeType":243,"data":1024,"content":1025},{},[1026],{"nodeType":247,"value":1027,"marks":1028,"data":1029},"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":243,"data":1031,"content":1032},{},[1033],{"nodeType":247,"value":1034,"marks":1035,"data":1036},"Here’s how it works:",[],{},{"nodeType":259,"data":1038,"content":1039},{},[1040,1050,1060],{"nodeType":263,"data":1041,"content":1042},{},[1043],{"nodeType":243,"data":1044,"content":1045},{},[1046],{"nodeType":247,"value":1047,"marks":1048,"data":1049},"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":263,"data":1051,"content":1052},{},[1053],{"nodeType":243,"data":1054,"content":1055},{},[1056],{"nodeType":247,"value":1057,"marks":1058,"data":1059},"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":263,"data":1061,"content":1062},{},[1063],{"nodeType":243,"data":1064,"content":1065},{},[1066,1070,1074,1078,1082],{"nodeType":247,"value":1067,"marks":1068,"data":1069},"By analyzing logs from the IdP, you can identify activity from the same session that both ",[],{},{"nodeType":247,"value":453,"marks":1071,"data":1073},[1072],{"type":456},{},{"nodeType":247,"value":1075,"marks":1076,"data":1077}," the Push marker and that ",[],{},{"nodeType":247,"value":463,"marks":1079,"data":1081},[1080],{"type":456},{},{"nodeType":247,"value":1083,"marks":1084,"data":1085}," the marker. This can only ever happen when a session is extracted from a browser and maliciously imported into a different browser.",[],{},{"nodeType":243,"data":1087,"content":1088},{},[1089],{"nodeType":247,"value":1090,"marks":1091,"data":1092},"This is a high-fidelity signal that a stolen session token is in use.",[],{},{"nodeType":331,"data":1094,"content":1097},{"target":1095},{"sys":1096},{"id":430,"type":336,"linkType":337},[],{"nodeType":243,"data":1099,"content":1100},{},[1101,1105,1113],{"nodeType":247,"value":1102,"marks":1103,"data":1104},"Learn more about configuring this feature in our ",[],{},{"nodeType":347,"data":1106,"content":1107},{"uri":769},[1108],{"nodeType":247,"value":1109,"marks":1110,"data":1112},"Help Center",[1111],{"type":775},{},{"nodeType":247,"value":644,"marks":1114,"data":1115},[],{},{"nodeType":331,"data":1117,"content":1121},{"target":1118},{"sys":1119},{"id":1120,"type":336,"linkType":337},"35dpGqNY6cTM0fSQRflLiO",[],{"nodeType":360,"data":1123,"content":1124},{},[1125],{"nodeType":247,"value":1126,"marks":1127,"data":1128},"Unlocking new capabilities for blue teams",[],{},{"nodeType":243,"data":1130,"content":1131},{},[1132],{"nodeType":247,"value":1133,"marks":1134,"data":1135},"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":243,"data":1137,"content":1138},{},[1139],{"nodeType":247,"value":1140,"marks":1141,"data":1142},"Where the browser agent approach particularly shines is that it’s application-agnostic. ",[],{},{"nodeType":243,"data":1144,"content":1145},{},[1146],{"nodeType":247,"value":1147,"marks":1148,"data":1149},"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":243,"data":1151,"content":1152},{},[1153],{"nodeType":247,"value":1154,"marks":1155,"data":1156},"This allows you to detect suspicious activity even on internal corporate assets, such as an intranet. ",[],{},{"nodeType":243,"data":1158,"content":1159},{},[1160],{"nodeType":247,"value":1161,"marks":1162,"data":1163},"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":243,"data":1165,"content":1166},{},[1167],{"nodeType":247,"value":1168,"marks":1169,"data":1170},"There are probably a few other creative use cases for this feature, so we look forward to seeing what you come up with!",[],{},{"nodeType":360,"data":1172,"content":1173},{},[1174],{"nodeType":247,"value":607,"marks":1175,"data":1176},[],{},{"nodeType":243,"data":1178,"content":1179},{},[1180,1183,1191],{"nodeType":247,"value":614,"marks":1181,"data":1182},[],{},{"nodeType":347,"data":1184,"content":1186},{"uri":1185},"https://pushsecurity.com/demo/",[1187],{"nodeType":247,"value":622,"marks":1188,"data":1190},[1189],{"type":775},{},{"nodeType":247,"value":1192,"marks":1193,"data":1194},". 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.",[],{},"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.",{"items":1197},[1198,1202],{"sys":1199,"name":1201},{"id":1200},"4ksQNCFeBf8H4QIORqpRLw","Detection & response",{"sys":1203,"name":1205},{"id":1204},"5jk0kqjSdSK2L0YiistQjY","Release notes",{"items":1207},[1208],{"fullName":232,"firstName":233,"jobTitle":234,"profilePicture":1209},{"url":236},{"__typename":653,"sys":1211,"content":1213,"title":1693,"synopsis":1694,"hashTags":62,"publishedDate":1695,"slug":1696,"tagsCollection":1697,"authorsCollection":1705},{"id":1212},"7yCGcUryKQGOHYHRtipn6W",{"json":1214},{"nodeType":239,"data":1215,"content":1216},{},[1217,1224,1231,1238,1245,1252,1259,1266,1273,1280,1298,1316,1324,1331,1351,1358,1370,1413,1420,1439,1447,1454,1461,1468,1475,1482,1549,1556,1562,1569,1576,1583,1590,1610,1617,1624,1631,1638,1645,1652,1659,1666,1673,1679,1686],{"nodeType":243,"data":1218,"content":1219},{},[1220],{"nodeType":247,"value":1221,"marks":1222,"data":1223},"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":243,"data":1225,"content":1226},{},[1227],{"nodeType":247,"value":1228,"marks":1229,"data":1230},"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":243,"data":1232,"content":1233},{},[1234],{"nodeType":247,"value":1235,"marks":1236,"data":1237},"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":243,"data":1239,"content":1240},{},[1241],{"nodeType":247,"value":1242,"marks":1243,"data":1244},"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":243,"data":1246,"content":1247},{},[1248],{"nodeType":247,"value":1249,"marks":1250,"data":1251},"Before we get on to detection opportunities in the browser, let’s take a deeper look at the web proxy situation.",[],{},{"nodeType":360,"data":1253,"content":1254},{},[1255],{"nodeType":247,"value":1256,"marks":1257,"data":1258},"Detection based on web proxy – how does it work and what are the limitations?",[],{},{"nodeType":243,"data":1260,"content":1261},{},[1262],{"nodeType":247,"value":1263,"marks":1264,"data":1265},"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":243,"data":1267,"content":1268},{},[1269],{"nodeType":247,"value":1270,"marks":1271,"data":1272},"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":243,"data":1274,"content":1275},{},[1276],{"nodeType":247,"value":1277,"marks":1278,"data":1279},"The traditional proxy setup has a number of limitations: ",[],{},{"nodeType":259,"data":1281,"content":1282},{},[1283],{"nodeType":263,"data":1284,"content":1285},{},[1286],{"nodeType":243,"data":1287,"content":1288},{},[1289,1294],{"nodeType":247,"value":1290,"marks":1291,"data":1293},"The proxy needs to be in a position to intercept traffic.",[1292],{"type":273},{},{"nodeType":247,"value":1295,"marks":1296,"data":1297}," 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":259,"data":1299,"content":1300},{},[1301],{"nodeType":263,"data":1302,"content":1303},{},[1304],{"nodeType":243,"data":1305,"content":1306},{},[1307,1312],{"nodeType":247,"value":1308,"marks":1309,"data":1311},"Most web traffic is protected by TLS – so a proxy has to decrypt this to inspect what’s inside.",[1310],{"type":273},{},{"nodeType":247,"value":1313,"marks":1314,"data":1315}," 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":1317,"data":1318,"content":1319},"heading-2",{},[1320],{"nodeType":247,"value":1321,"marks":1322,"data":1323},"Proxies under the hood",[],{},{"nodeType":243,"data":1325,"content":1326},{},[1327],{"nodeType":247,"value":1328,"marks":1329,"data":1330},"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":243,"data":1332,"content":1333},{},[1334,1338,1347],{"nodeType":247,"value":1335,"marks":1336,"data":1337},"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":347,"data":1339,"content":1341},{"uri":1340},"https://www.cyfirma.com/research/html-smuggling-a-stealthier-approach-to-deliver-malware/",[1342],{"nodeType":247,"value":1343,"marks":1344,"data":1346},"given rise to techniques like HTML smuggling",[1345],{"type":775},{},{"nodeType":247,"value":1348,"marks":1349,"data":1350}," to hide these file downloads from advanced proxies. ",[],{},{"nodeType":243,"data":1352,"content":1353},{},[1354],{"nodeType":247,"value":1355,"marks":1356,"data":1357},"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":243,"data":1359,"content":1360},{},[1361,1365],{"nodeType":247,"value":1362,"marks":1363,"data":1364},"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":247,"value":1366,"marks":1367,"data":1369},"Unfortunately, there are problems with both options. ",[1368],{"type":273},{},{"nodeType":259,"data":1371,"content":1372},{},[1373,1393],{"nodeType":263,"data":1374,"content":1375},{},[1376],{"nodeType":243,"data":1377,"content":1378},{},[1379,1384,1388],{"nodeType":247,"value":1380,"marks":1381,"data":1383},"There is too much HTTP data to store and manually analyze everything:",[1382],{"type":273},{},{"nodeType":247,"value":1385,"marks":1386,"data":1387}," 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":247,"value":1389,"marks":1390,"data":1392},"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…  ",[1391],{"type":456},{},{"nodeType":263,"data":1394,"content":1395},{},[1396],{"nodeType":243,"data":1397,"content":1398},{},[1399,1404,1408],{"nodeType":247,"value":1400,"marks":1401,"data":1403},"Each web app is custom, making automated analysis (virtually) impossible:",[1402],{"type":273},{},{"nodeType":247,"value":1405,"marks":1406,"data":1407}," 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":247,"value":1409,"marks":1410,"data":1412},"automating this process is not feasible as it requires constant reverse engineering of every web app. ",[1411],{"type":273},{},{"nodeType":243,"data":1414,"content":1415},{},[1416],{"nodeType":247,"value":1417,"marks":1418,"data":1419},"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":243,"data":1421,"content":1422},{},[1423,1428,1434],{"nodeType":247,"value":1424,"marks":1425,"data":1427},"It might be ",[1426],{"type":273},{},{"nodeType":247,"value":1429,"marks":1430,"data":1433},"theoretically",[1431,1432],{"type":456},{"type":273},{},{"nodeType":247,"value":1435,"marks":1436,"data":1438}," 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. ",[1437],{"type":273},{},{"nodeType":360,"data":1440,"content":1441},{},[1442],{"nodeType":247,"value":1443,"marks":1444,"data":1446},"Browser data: a better alternative?",[1445],{"type":273},{},{"nodeType":243,"data":1448,"content":1449},{},[1450],{"nodeType":247,"value":1451,"marks":1452,"data":1453},"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":243,"data":1455,"content":1456},{},[1457],{"nodeType":247,"value":1458,"marks":1459,"data":1460},"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":243,"data":1462,"content":1463},{},[1464],{"nodeType":247,"value":1465,"marks":1466,"data":1467},"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":243,"data":1469,"content":1470},{},[1471],{"nodeType":247,"value":1472,"marks":1473,"data":1474},"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":243,"data":1476,"content":1477},{},[1478],{"nodeType":247,"value":1479,"marks":1480,"data":1481},"Let’s look at a couple of examples based on how we’re using our browser agent to detect and block identity attacks. ",[],{},{"nodeType":259,"data":1483,"content":1484},{},[1485,1507,1528],{"nodeType":263,"data":1486,"content":1487},{},[1488],{"nodeType":243,"data":1489,"content":1490},{},[1491,1494,1503],{"nodeType":247,"value":29,"marks":1492,"data":1493},[],{},{"nodeType":347,"data":1495,"content":1497},{"uri":1496},"https://pushsecurity.com/blog/introducing-sso-password-protection/",[1498],{"nodeType":247,"value":1499,"marks":1500,"data":1502},"Pinning passwords to the legitimate site they are linked with",[1501],{"type":775},{},{"nodeType":247,"value":1504,"marks":1505,"data":1506},". 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":263,"data":1508,"content":1509},{},[1510],{"nodeType":243,"data":1511,"content":1512},{},[1513,1516,1524],{"nodeType":247,"value":29,"marks":1514,"data":1515},[],{},{"nodeType":347,"data":1517,"content":1519},{"uri":1518},"https://pushsecurity.com/blog/introducing-aitm-phishing-toolkit-detection-powered-by-the-push-browser/",[1520],{"nodeType":247,"value":1521,"marks":1522,"data":1523},"Detecting and blocking malicious phishing tools",[],{},{"nodeType":247,"value":1525,"marks":1526,"data":1527}," running on websites by observing behavioral attributes in the browser, such as Javascript calls being made or data structures saved to local storage.",[],{},{"nodeType":263,"data":1529,"content":1530},{},[1531],{"nodeType":243,"data":1532,"content":1533},{},[1534,1537,1545],{"nodeType":247,"value":29,"marks":1535,"data":1536},[],{},{"nodeType":347,"data":1538,"content":1540},{"uri":1539},"https://pushsecurity.com/blog/manage-third-party-data-access/",[1541],{"nodeType":247,"value":1542,"marks":1543,"data":1544},"Observing users signing up to and using risky apps",[],{},{"nodeType":247,"value":1546,"marks":1547,"data":1548},", or changing or removing authentication methods, MFA methods, and configuration methods, which could indicate account takeover. ",[],{},{"nodeType":243,"data":1550,"content":1551},{},[1552],{"nodeType":247,"value":1553,"marks":1554,"data":1555},"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":331,"data":1557,"content":1561},{"target":1558},{"sys":1559},{"id":1560,"type":336,"linkType":337},"HrK2xQak6KfjInDbeSgv8",[],{"nodeType":243,"data":1563,"content":1564},{},[1565],{"nodeType":247,"value":1566,"marks":1567,"data":1568},"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":360,"data":1570,"content":1571},{},[1572],{"nodeType":247,"value":1573,"marks":1574,"data":1575},"Won’t my app and IdP logs cover this?",[],{},{"nodeType":243,"data":1577,"content":1578},{},[1579],{"nodeType":247,"value":1580,"marks":1581,"data":1582},"App and IdP logs are useful (when you can get them), but neither give you the full picture. ",[],{},{"nodeType":1317,"data":1584,"content":1585},{},[1586],{"nodeType":247,"value":1587,"marks":1588,"data":1589},"App logs are limited in availability, scope, and ease of ingestion ",[],{},{"nodeType":243,"data":1591,"content":1592},{},[1593,1597,1606],{"nodeType":247,"value":1594,"marks":1595,"data":1596},"When relying on app logs, you’re naturally constrained by the app provider. Many smaller apps provide no security logging, while others ",[],{},{"nodeType":347,"data":1598,"content":1600},{"uri":1599},"https://audit-logs.tax/",[1601],{"nodeType":247,"value":1602,"marks":1603,"data":1605},"lock security logging behind the premium tier subscription",[1604],{"type":775},{},{"nodeType":247,"value":1607,"marks":1608,"data":1609},". When logs are available, you’re limited to the events that the third-party deems suitable to log. ",[],{},{"nodeType":243,"data":1611,"content":1612},{},[1613],{"nodeType":247,"value":1614,"marks":1615,"data":1616},"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":243,"data":1618,"content":1619},{},[1620],{"nodeType":247,"value":1621,"marks":1622,"data":1623},"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":243,"data":1625,"content":1626},{},[1627],{"nodeType":247,"value":1628,"marks":1629,"data":1630},"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":1317,"data":1632,"content":1633},{},[1634],{"nodeType":247,"value":1635,"marks":1636,"data":1637},"IdP logs cover only SSO integrated apps and are limited in scope",[],{},{"nodeType":243,"data":1639,"content":1640},{},[1641],{"nodeType":247,"value":1642,"marks":1643,"data":1644},"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":243,"data":1646,"content":1647},{},[1648],{"nodeType":247,"value":1649,"marks":1650,"data":1651},"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":1317,"data":1653,"content":1654},{},[1655],{"nodeType":247,"value":1656,"marks":1657,"data":1658},"Browser is best for stopping identity attacks",[],{},{"nodeType":243,"data":1660,"content":1661},{},[1662],{"nodeType":247,"value":1663,"marks":1664,"data":1665},"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":243,"data":1667,"content":1668},{},[1669],{"nodeType":247,"value":1670,"marks":1671,"data":1672},"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":331,"data":1674,"content":1678},{"target":1675},{"sys":1676},{"id":1677,"type":336,"linkType":337},"5jPCGPO1tnIkoI7MKW4oUi",[],{"nodeType":360,"data":1680,"content":1681},{},[1682],{"nodeType":247,"value":1683,"marks":1684,"data":1685},"Conclusion",[],{},{"nodeType":243,"data":1687,"content":1688},{},[1689],{"nodeType":247,"value":1690,"marks":1691,"data":1692},"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":1698},[1699,1701],{"sys":1700,"name":1201},{"id":1200},{"sys":1702,"name":1704},{"id":1703},"6A5RXS31ZQx3PwryGb1IMy","Browser-based attacks",{"items":1706},[1707],{"fullName":1708,"firstName":1709,"jobTitle":1710,"profilePicture":1711},"Dan Green","Dan","Threat Research",{"url":1712},"https://images.ctfassets.net/y1cdw1ablpvd/7jik1VhFgA3kgzXBXTm2Vw/fcd8c171da644903d0827eafcfbcaad0/Dan_Headshot_2025.png","combining-the-powers-of-push-and-panther-to-stop-identity-attacks","blog/combining-the-powers-of-push-and-panther-to-stop-identity-attacks",{"json":1716},{"data":1717,"content":1718,"nodeType":239},{},[1719],{"data":1720,"content":1721,"nodeType":243},{},[1722],{"data":1723,"marks":1724,"value":1725,"nodeType":247},{},[],"Push is excited to partner with Panther to help security teams correlate Push’s unique browser telemetry with existing log sources to detect and stop identity attacks, including session token theft and adversary-in-the-middle phishing toolkits.","Push is excited to partner with Panther, bringing our unique browser telemetry to your SIEM.",{"id":1728,"publishedAt":1729},"7qYHyqnkvqQRbYn3nTi5br","2026-01-30T09:21:13.147Z",{"items":1731},[1732,1734],{"sys":1733,"name":1201},{"id":1200},{"sys":1735,"name":1205},{"id":1204},"W01vry8PnrVvBTv_pXHKD_shbzCokTH82AfKIi3ggMg",1784196718732]