[{"data":1,"prerenderedAt":2395},["ShallowReactive",2],{"sc:header-data-no":3,"sc:footer-data-no":489,"author-no-thomas-naunheim-10be1ec7c4454b":519,"content-no-thomas-naunheim":549,"content-events-no-thomas-naunheim":2374,"authors_data:Christopher Brumm|Fabian Bader|Thomas Naunheim":2375},{"lang":4,"home":5,"navigation":17,"meta":479,"contact":485},"de",{"name":6,"folderSwitch":7,"imgLight":10,"img":11,"languages":12},"home",[8,9],"authors","blog","/logos/gk-Logo-sw.svg","/logos/gk-Logo-rgb.svg",{"no":13},{"title":14,"url":15,"alt":16},"Hjem","/no","glueckkanja Logo",[18,127,231,316,395,402],{"name":19,"languages":20,"children":24},"workplace",{"no":21},{"title":22,"description":23},"Workplace","Microsoft 365-drevet for smarte, sikre og fleksible arbeidsplasser som samler moderne teknologi og identitetstjenester.",[25,55,91],{"name":26,"languages":27,"children":30},"portfolio",{"no":28},{"title":29},"Portfolio",[31,37,43,49],{"name":32,"languages":33},"managed-intune",{"no":34},{"title":35,"url":36},"Managed Intune","/no/entra-intune/managed-intune",{"name":38,"languages":39},"managed-entra",{"no":40},{"title":41,"url":42},"Managed Entra","/no/entra-intune/managed-entra",{"name":44,"languages":45},"managed-workplace",{"no":46},{"title":47,"url":48},"Managed Workplace","/no/workplace/managed-workplace",{"name":50,"languages":51},"consulting-services",{"no":52},{"title":53,"url":54},"Consulting Services","/no/workplace/consulting-services",{"name":56,"languages":57,"children":60},"microsoft-365-endpoint",{"no":58},{"title":59},"Microsoft 365 Endpoint",[61,67,73,79,85],{"name":62,"languages":63},"microsoft-entra-suite",{"no":64},{"title":65,"url":66},"Microsoft Entra Suite","/no/workplace/microsoft-entra-suite",{"name":68,"languages":69},"microsoft-intune",{"no":70},{"title":71,"url":72},"Microsoft Intune","/no/workplace/microsoft-intune",{"name":74,"languages":75},"microsoft-windows",{"no":76},{"title":77,"url":78},"Microsoft Windows","/no/workplace/microsoft-windows",{"name":80,"languages":81},"windows-365-cloud-pc",{"no":82},{"title":83,"url":84},"Windows 365 Cloud PC","/no/workplace/windows365-cloud-pc",{"name":86,"languages":87},"cloud-workplace-foundation",{"no":88},{"title":89,"url":90},"Cloud Workplace Foundation","/no/workplace/cloud-workplace-foundation",{"name":92,"languages":93,"children":96},"microsoft-365-collaboration",{"no":94},{"title":95},"Microsoft 365 Collaboration",[97,103,109,115,121],{"name":98,"languages":99},"microsoft-copilot",{"no":100},{"title":101,"url":102},"Microsoft 365 Copilot","/no/workplace/microsoft-365-copilot",{"name":104,"languages":105},"microsoft-teams",{"no":106},{"title":107,"url":108},"Teams","/no/workplace/microsoft-teams",{"name":110,"languages":111},"sharepoint-powerplatform",{"no":112},{"title":113,"url":114},"SharePoint & Power Platform","/no/workplace/sharepoint-power-platform",{"name":116,"languages":117},"exchange-online",{"no":118},{"title":119,"url":120},"Exchange Online","/no/workplace/exchange-online",{"name":122,"languages":123},"information-protection-compliance",{"no":124},{"title":125,"url":126},"Information Protection & Compliance","/no/workplace/information-protection-compliance",{"name":128,"languages":129,"children":133},"azure",{"no":130},{"title":131,"description":132},"Azure","Driv vekst med Azure: kutt cloud-kostnader, øk effektiviteten og skap innovasjon gjennom IaaS og PaaS.",[134,151,181],{"name":135,"languages":136,"children":138},"azure-portfolio",{"no":137},{"title":29},[139,145],{"name":140,"languages":141},"azure-managed-services",{"no":142},{"title":143,"url":144},"Azure Managed Services","/no/azure/azure-managed-services",{"name":146,"languages":147},"azure-consulting",{"no":148},{"title":149,"url":150},"Azure Consulting","/no/azure/azure-consulting",{"name":152,"languages":153,"children":156},"azure-scenarios",{"no":154},{"title":155},"Scenarier",[157,163,169,175],{"name":158,"languages":159},"plan-your-cloud",{"no":160},{"title":161,"url":162},"Planlegg cloud-en din","/no/azure/plan-your-cloud",{"name":164,"languages":165},"migrate-to-the-cloud",{"no":166},{"title":167,"url":168},"Migrer til cloud","/no/azure/migrate-to-the-cloud",{"name":170,"languages":171},"innovate-your-business",{"no":172},{"title":173,"url":174},"Forny virksomheten din","/no/azure/innovate-your-business",{"name":176,"languages":177},"vmware-exit",{"no":178},{"title":179,"url":180},"Tenk nytt om VMware-strategien din","/no/azure/vmware-exit",{"name":182,"languages":183,"children":186},"azure-practices",{"no":184},{"title":185},"Practices",[187,193,199,202,208,213,219,225],{"name":188,"languages":189},"azure-foundation",{"no":190},{"title":191,"url":192},"Azure Foundation","/no/azure/azure-foundation",{"name":194,"languages":195},"azure-ai-foundation",{"no":196},{"title":197,"url":198},"Azure AI Foundation","/no/azure/azure-ai-foundation",{"name":86,"languages":200},{"no":201},{"title":89,"url":90},{"name":203,"languages":204},"azure-data-foundation",{"no":205},{"title":206,"url":207},"Azure Data Foundation","/no/azure/azure-data-foundation",{"name":188,"languages":209},{"no":210},{"title":211,"url":212},"Azure Container Foundation","/no/azure/azure-container-foundation",{"name":214,"languages":215},"dark-tenant",{"no":216},{"title":217,"url":218},"Managed Dark Tenant","/no/azure/managed-dark-tenant",{"name":220,"languages":221},"azure-cloud-adoption-framework",{"no":222},{"title":223,"url":224},"Cloud Adoption Framework","/no/azure/cloud-adoption-framework",{"name":226,"languages":227},"azure-cloud-competence-center",{"no":228},{"title":229,"url":230},"Cloud Competence Center","/no/azure/cloud-competence-center",{"name":232,"languages":233,"children":242},"security",{"no":234},{"title":235,"description":236,"emergency":237},"Security","Årvåkenhet i cloud med en prisbelønt 24/7 managed service, incident response og moderne beskyttelse av infrastrukturen din.",{"text":238,"href":239,"skin":240,"icon":241},"Under angrep?","/no/security/are-you-under-attack","primary","emergency",[243,268,289],{"name":244,"children":245},"security-security-consulting",[246,252,256,262],{"name":247,"languages":248},"managed-red-tenant",{"no":249},{"title":250,"url":251},"Managed Red Tenant","/no/security/managed-red-tenant",{"name":214,"languages":253},{"no":254},{"title":255,"url":218},"Dark Tenant",{"name":257,"languages":258},"sentinel-data-lake",{"no":259},{"title":260,"url":261},"Sentinel Data Lake","/no/security/sentinel-data-lake",{"name":263,"languages":264},"security-consulting",{"no":265},{"title":266,"url":267},"Security Consulting","/no/security/security-consulting",{"name":269,"children":270},"security-cloud-security-operations-center",[271,277,283],{"name":272,"languages":273},"cloud-security-operations-center",{"no":274},{"title":275,"url":276},"Cloud Security Operations Center","/no/security/cloud-security-operations-center",{"name":278,"languages":279},"global-secure-access",{"no":280},{"title":281,"url":282},"Global Secure Access","/no/security/global-secure-access",{"name":284,"languages":285},"my-work-id",{"no":286},{"title":287,"url":288},"MyWorkID","/no/security/my-work-id",{"name":290,"children":291},"security-preventive-services",[292,298,304,310],{"name":293,"languages":294},"preventive-services",{"no":295},{"title":296,"url":297},"Preventive Services","/no/security/preventive-services",{"name":299,"languages":300},"data-security-services",{"no":301},{"title":302,"url":303},"Data Security Service","/no/security/data-security-service",{"name":305,"languages":306},"security-copilot-agents",{"no":307},{"title":308,"url":309},"Security Copilot Agents","/no/security/security-copilot-agents",{"name":311,"languages":312},"nis2",{"no":313},{"title":314,"url":315},"Innføre NIS2","/no/security/red-dark-tenant-nis2",{"name":317,"languages":318,"children":322},"products",{"no":319},{"title":320,"description":321},"Produkter","Innovative tilleggsprodukter for et fullstendig sikkert, 100 % cloud-native Microsoft-miljø som styrker samarbeid, nettverksautentisering og programvarehåndtering.",[323,360],{"name":324,"products":325,"children":326},"lorem ipsum 1",true,[327,336,344,352],{"name":328,"img":329,"target":330,"languages":331},"realmjoin","products/realmjoin/realmjoin-nav-logo.svg","_blank",{"no":332},{"title":333,"url":334,"subtitle":335},"RealmJoin","https://www.realmjoin.com","Cloud-basert programvaredistribusjon",{"name":337,"img":338,"target":330,"languages":339},"scepman","products/scepman/scepman-nav-logo.svg",{"no":340},{"title":341,"url":342,"subtitle":343},"SCEPman","https://www.scepman.com","Sertifikatdistribusjon fra cloud",{"name":345,"img":346,"target":330,"languages":347},"konnekt","products/konnekt/konnekt-nav-logo.svg",{"no":348},{"title":349,"url":350,"subtitle":351},"KONNEKT","https://www.konnekt.io","Jobb med dine lokale office 365-data",{"name":353,"img":354,"target":330,"languages":355},"realmigrator","products/realmigrator/realmigrator-nav-logo.svg",{"no":356},{"title":357,"url":358,"subtitle":359},"RealMigrator","https://www.realmigrator.com","Migrer dataene dine fra én server til en annen",{"name":361,"products":325,"children":362},"lorem ipsum 2",[363,371,379,387],{"name":364,"img":365,"target":330,"languages":366},"terraprovider","products/terraprovider/terraprovider-nav-logo.svg",{"no":367},{"title":368,"url":369,"subtitle":370},"TerraProvider","https://www.terraprovider.com","Terraform Provider for Microsoft 365",{"name":372,"img":373,"target":330,"languages":374},"radiusaas","products/radius/radius-nav-logo.svg",{"no":375},{"title":376,"url":377,"subtitle":378},"RADIUSaaS","https://www.radius-as-a-service.com","Autentisering for nettverket ditt",{"name":380,"img":381,"target":330,"languages":382},"unifiedcontacts","products/unified-contacts/unifiedcontact-nav-logo.svg",{"no":383},{"title":384,"url":385,"subtitle":386},"Unified Contacts","https://www.unified-contacts.com","Finn kontakter i Microsoft Teams",{"name":388,"img":389,"target":330,"languages":390},"autopilotmonitor","products/autopilot-monitor/AutopilotMonitor-nav-logo.svg",{"no":391},{"title":392,"url":393,"subtitle":394},"Autopilot Monitor","https://www.autopilotmonitor.com","Windows Autopilot-overvåking i sanntid",{"name":396,"languages":397},"casestudies",{"no":398},{"title":399,"url":400,"description":401},"Case Studies","/no/casestudies","Pioner i cloud: din fremste Microsoft-partner for omfattende cloud-løsninger med en Blueprint-basert tilnærming og Infrastructure-as-Code-kompetanse.",{"name":403,"languages":404,"children":407},"company",{"no":405},{"title":406,"description":401},"Selskap",[408,438,462],{"name":409,"languages":410,"children":413},"company-about-us",{"no":411},{"title":412},"Om oss",[414,420,426,432],{"name":415,"languages":416},"company-facts-figures",{"no":417},{"title":418,"url":419},"Fakta og tall","/no/company/facts-and-figures",{"name":421,"languages":422},"company-contact",{"no":423},{"title":424,"url":425},"Kontakt og lokasjoner","/no/company/contact-and-locations",{"name":427,"languages":428},"switzerland",{"no":429},{"title":430,"url":431},"glueckkanja Sveits","/no/company/switzerland",{"name":433,"languages":434},"austria",{"no":435},{"title":436,"url":437},"glueckkanja Østerrike","/no/company/austria",{"name":439,"languages":440,"children":443},"company-career",{"no":441},{"title":442},"Karriere",[444,450,456],{"name":445,"languages":446},"company-career-overview",{"no":447},{"title":448,"url":449},"Karriereoversikt","/no/career",{"name":451,"languages":452},"company-young-professionals",{"no":453},{"title":454,"url":455},"Young Professionals","/no/young-professionals",{"name":457,"languages":458},"company-jobs",{"no":459},{"title":460,"url":461},"Ledige stillinger","/no/job-offers",{"name":463,"languages":464,"children":467},"company-latest",{"no":465},{"title":466},"Siste nytt",[468,474],{"name":469,"languages":470},"company-blog",{"no":471},{"title":472,"url":473},"Blogg","/no/blog",{"name":469,"languages":475},{"no":476},{"title":477,"url":478},"Arrangementer","/no/events",[480],{"name":481,"languages":482},"career-meta",{"no":483},{"title":442,"url":449,"active":484},false,{"languages":486},{"no":487},{"title":488,"url":425,"active":484},"Kontakt",{"data":490},{"bgColor":491,"number":492,"mail":493,"brandLogos":494,"logos":495,"links":499,"linksNo":509},"var(--color-gk-mid-blue)","+49 69 4005520","info@glueckkanja.com",null,[496],{"img":10,"alt":16,"url":497,"class":498},"index.html","max-w-19rem",[500,503,506],{"title":501,"url":502},"Datenschutz","/de/privacy",{"title":504,"url":505},"Impressum","/de/imprint",{"title":507,"url":508},"No Cookies","/de/cookies",[510,513,516],{"title":511,"url":512},"Personvern","/no/privacy",{"title":514,"url":515},"Juridisk informasjon","/no/imprint",{"title":517,"url":518},"Ingen cookies","/no/cookies",{"id":520,"title":521,"body":522,"description":528,"extension":533,"meta":534,"name":521,"navigation":325,"otherLanguages":535,"path":545,"seo":546,"stem":547,"__hash__":548},"authors/thomas-naunheim.md","Thomas Naunheim",{"type":523,"value":524,"toc":529},"minimal",[525],[526,527,528],"p",{},"Thomas Naunheim ist Cyber Security Architect und Microsoft MVP mit Schwerpunkt auf Identitäts- und Sicherheitslösungen in der Microsoft Cloud. Sein Wissen teilt er gerne mit der Community in Vorträgen auf Konferenzen und in Artikel auf seinem Blog \"cloud-architekt.net”, wie auch als Co-Autor des “Microsoft Entra Attack & Defense Playbook”. Im Organisation-Team von \"Azure Meetup Bonn\" sowie dem \"Cloud Identity Summit\" ist er ebenfalls aktiv und ist Co-Host des Podcasts “Cloud Inspires”.",{"title":530,"searchDepth":531,"depth":531,"links":532},"",2,[],"md",{},{"en":536,"es":537,"sv":538,"fi":539,"da":540,"ko":541,"nl":542,"no":543,"ja":544},"Thomas Naunheim is a Cyber Security Architect and Microsoft MVP specializing in identity and security solutions within the Microsoft Cloud. He actively shares his expertise with the community through conference talks, articles on his blog \"cloud-architekt.net\", and as a co-author of the \"Microsoft Entra Attack & Defense Playbook\". He is also part of the organization team for the \"Azure Meetup Bonn\" and the \"Cloud Identity Summit\" and co-hosts the podcast \"Cloud Inspires\".","Thomas Naunheim es Cyber Security Architect y Microsoft MVP, especializado en soluciones de identidad y seguridad en la Microsoft Cloud. Comparte con gusto su conocimiento con la comunidad en ponencias en conferencias y en artículos de su blog \"cloud-architekt.net\", así como en calidad de coautor del \"Microsoft Entra Attack & Defense Playbook\". También participa activamente en el equipo organizador de \"Azure Meetup Bonn\" y del \"Cloud Identity Summit\", y es coanfitrión del podcast \"Cloud Inspires\".","Thomas Naunheim är Cyber Security Architect och Microsoft MVP med inriktning på identitets- och säkerhetslösningar i Microsoft Cloud. Han delar gärna med sig av sin kunskap till communityn i föredrag på konferenser och i artiklar på sin blogg \"cloud-architekt.net\", liksom som medförfattare till \"Microsoft Entra Attack & Defense Playbook\". Han är även aktiv i organisationsteamet för \"Azure Meetup Bonn\" och \"Cloud Identity Summit\" och är medvärd för podcasten \"Cloud Inspires\".","Thomas Naunheim on Cyber Security Architect ja Microsoft MVP, jonka painopisteenä ovat identiteetti- ja tietoturvaratkaisut Microsoft Cloudissa. Hän jakaa mielellään tietämystään yhteisölle esityksissä konferensseissa ja artikkeleissa blogissaan \"cloud-architekt.net\", samoin kuin \"Microsoft Entra Attack & Defense Playbook\" -teoksen toisena kirjoittajana. Hän toimii aktiivisesti myös \"Azure Meetup Bonn\"- ja \"Cloud Identity Summit\" -tapahtumien järjestelytiimissä ja on \"Cloud Inspires\" -podcastin toinen juontaja.","Thomas Naunheim er Cyber Security Architect og Microsoft MVP med fokus på identitets- og sikkerhedsløsninger i Microsoft Cloud. Han deler gerne sin viden med community'et i foredrag på konferencer og i artikler på sin blog \"cloud-architekt.net\", samt som medforfatter til \"Microsoft Entra Attack & Defense Playbook\". Han er også aktiv i organisationsteamet for \"Azure Meetup Bonn\" og \"Cloud Identity Summit\" og er medvært på podcasten \"Cloud Inspires\".","Thomas Naunheim은 Cyber Security Architect이자 Microsoft MVP로, Microsoft Cloud의 ID 및 보안 솔루션을 중점적으로 다룹니다. 그는 컨퍼런스 강연과 자신의 블로그 \"cloud-architekt.net\" 게시글을 통해 커뮤니티와 기꺼이 지식을 공유하며, \"Microsoft Entra Attack & Defense Playbook\"의 공동 저자이기도 합니다. 또한 \"Azure Meetup Bonn\"과 \"Cloud Identity Summit\"의 조직 팀에서 활동하고 있으며, 팟캐스트 \"Cloud Inspires\"의 공동 진행자입니다.","Thomas Naunheim is Cyber Security Architect en Microsoft MVP met een focus op identity- en securityoplossingen in de Microsoft Cloud. Zijn kennis deelt hij graag met de community, in lezingen op conferenties en in artikelen op zijn blog \"cloud-architekt.net”, en ook als co-auteur van het “Microsoft Entra Attack & Defense Playbook”. Daarnaast is hij actief in het organisatieteam van \"Azure Meetup Bonn\" en van de \"Cloud Identity Summit\", en is hij co-host van de podcast “Cloud Inspires”.","Thomas Naunheim er Cyber Security Architect og Microsoft MVP med tyngdepunkt på identitets- og sikkerhetsløsninger i Microsoft cloud. Kunnskapen sin deler han gjerne med community-en i foredrag på konferanser og i artikler på bloggen sin \"cloud-architekt.net”, samt som medforfatter av “Microsoft Entra Attack & Defense Playbook”. Han er også aktiv i organisasjonsteamet for \"Azure Meetup Bonn\" og \"Cloud Identity Summit”, og er medvert for podkasten “Cloud Inspires”.","Thomas NaunheimはCyber Security ArchitectでありMicrosoft MVPです。専門はMicrosoft Cloudにおけるアイデンティティとセキュリティのソリューションです。その知見は、カンファレンスでの講演やブログ「cloud-architekt.net」の記事、さらに「Microsoft Entra Attack & Defense Playbook」の共著者として、コミュニティに積極的に共有しています。「Azure Meetup Bonn」と「Cloud Identity Summit」の運営チームでも活動しており、ポッドキャスト「Cloud Inspires」の共同ホストも務めています。","/thomas-naunheim",{"title":521,"description":528},"thomas-naunheim","wOs1-l_EjYboGLXMCGBeomaKEG_WQm6SbnP6GUz3vZo",[550,1294,1555],{"id":551,"title":552,"author":553,"body":556,"cta":494,"description":530,"eventid":494,"extension":533,"hideInRecent":484,"layout":1217,"meta":1218,"moment":1222,"navigation":325,"path":1286,"seo":1287,"stem":1288,"tags":1289,"webcast":484,"__hash__":1293},"content_no/posts/2025-01-14-compliant-device-bypass.md","Compliant Device Bypass - alt du trenger å vite",[554,555,521],"Fabian Bader","Christopher Brumm",{"type":523,"value":557,"toc":1199},[558,563,566,620,624,626,639,647,658,664,667,671,673,678,681,684,688,754,757,760,764,766,770,772,787,794,797,800,802,805,808,811,819,830,833,835,838,842,844,847,852,856,858,861,864,867,1030,1034,1036,1039,1079,1083,1085,1092,1095,1098,1113,1116,1119,1173,1181,1185,1187,1190,1193,1196],[559,560,562],"h2",{"id":561},"hva-har-skjedd-så-langt","Hva har skjedd så langt?",[526,564,565],{},"{: .h3-font-size}",[567,568,569,593,608,617],"ul",{},[570,571,572,573,580,581,586,587,592],"li",{},"I desember 2024 holdt ",[574,575,579],"a",{"href":576,"rel":577},"https://x.com/TEMP43487580",[578],"nofollow","Yuya Chudo"," foredraget «",[574,582,585],{"href":583,"rel":584},"https://www.blackhat.com/eu-24/briefings/schedule/#unveiling-the-power-of-intune-leveraging-intune-for-breaking-into-your-cloud-and-on-premise-42176",[578],"Unveiling the Power of Intune: Leveraging Intune for Breaking Into Your Cloud and On-Premise","» på konferansen Black Hat Europe. I sesjonen viste han hvordan man kan misbruke et hardkodet og lite kjent unntak i Conditional Access (CA) for device compliance i kombinasjon med den udokumenterte «",[574,588,591],{"href":589,"rel":590},"https://github.com/secureworks/family-of-client-ids-research",[578],"FOCI-funksjonen","» i Entra ID. I foredraget presenterte han også svaret fra Microsoft MSRC (VULN-123240) om at denne atferden er tilsiktet og nødvendig for at nye enheter skal kunne gjennomføre Intune Enrollment.",[570,594,595,596,601,602,607],{},"Noen dager etter konferansen publiserte Sunny Chau proof-of-concept-verktøyet ",[574,597,600],{"href":598,"rel":599},"https://github.com/JumpsecLabs/TokenSmith",[578],"TokenSmith"," sammen med et ",[574,603,606],{"href":604,"rel":605},"https://labs.jumpsec.com/tokensmith-bypassing-intune-compliant-device-conditional-access/",[578],"tilhørende blogginnlegg",", noe som gjorde teknikken tilgjengelig for et bredere publikum.",[570,609,610,611,616],{},"I tillegg har en ",[574,612,615],{"href":613,"rel":614},"https://github.com/zh54321/PoCEntraDeviceComplianceBypass/blob/main/poc_entra_compliance_bypass.ps1",[578],"PoC skrevet i PowerShell"," blitt publisert.",[570,618,619],{},"Siden slutten av desember har vi i glueckkanja AG undersøkt hvordan denne teknikken kan forhindres og oppdages. I dette blogginnlegget vil vi dele noen av innsiktene våre om angrepet og diskutere muligheter for tiltak og deteksjon.",[559,621,623],{"id":622},"tldr","TL;DR",[526,625,565],{},[526,627,628,629,634,635],{},"Det finnes enkelte ressurser med et innebygd unntak fra bestemte Grant Controls/Conditions i Conditional Access for å løse visse problemer. Ett av dem er unntaket for Company Portal-appen fra Device Compliance, som løser høna-og-egget-problemet med å få enheter registrert i Intune før de anses som compliant. Denne atferden er ",[574,630,633],{"href":631,"rel":632},"https://learn.microsoft.com/en-us/entra/identity/conditional-access/policy-alt-all-users-compliant-hybrid-or-mfa#:~:text=You%20can%20enroll,Company%20Portal%20application",[578],"dokumentert her",".\n",[636,637,638],"strong",{},"Det betyr at du kan hente access- og refresh-token for denne appen fra en uadministrert enhet, selv om en CA-policy håndhever Device Compliance for «All resources».",[526,640,641,646],{},[642,643],"img",{"alt":644,"src":645},"image.png","https://res.cloudinary.com/c4a8/image/upload/blog/pics/company-portal-ca-bypass-02.png","{: .post__screenshot}",[526,648,649,650,654,655],{},"Microsoft har implementert en funksjon som heter Family of Client IDs (FOCI), som lar en gruppe Microsoft OAuth-klientapplikasjoner hente access-token som hvilken som helst annen klient i familien ved hjelp av sin refresh-token. En atferd som ellers ikke er tillatt i OAuth2-standarden. Les ",[574,651,653],{"href":589,"rel":652},[578],"Secureworks opprinnelige arbeid"," for flere detaljer.\n",[636,656,657],{},"Ettersom Company Portal-appen er et «familiemedlem», kan de forespurte refresh-tokenene for den brukes til å hente token for andre apper i familien.",[526,659,660,661],{},"FOCI-funksjonen er begrenset, og samtykket mellom client id og ressursen må konfigureres og gis eksplisitt. For Company Portal-appen er dette samtykket blant annet gitt for tilgang til Microsoft Graph med et begrenset scope og til Azure AD Graph API med gjeldende brukers tillatelse.\n",[636,662,663],{},"Det betyr at en refresh-token for Company Portal kan brukes til å hente for eksempel access-token for Azure AD Graph API med scopet user_impersonation, noe som lar oss gjøre en rekke ting med for eksempel AADInternals eller ROADrecon.",[526,665,666],{},"For å gjennomføre angrepet trenger angriperen enten gyldige innloggingsopplysninger for offeret og mulighet til å utføre MFA hvis Conditional Access krever det, eller en gyldig refresh-token.",[559,668,670],{"id":669},"hvilken-risiko-og-hvilket-skadeomfang-finnes","Hvilken risiko og hvilket skadeomfang finnes?",[526,672,565],{},[674,675,677],"h3",{"id":676},"hvilke-av-de-mulige-ressursene-scopes-påvirkes-av-compliance-unntaket","Hvilke av de mulige ressursene (scopes) påvirkes av compliance-unntaket?",[526,679,680],{},"{: .h4-font-size}",[526,682,683],{},"Angriperen har muligheten til å be om token for en annen FOCI-applikasjon, slik det allerede er beskrevet. Microsoft har imidlertid kun implementert en omgåelse av kravene til device compliance for tilgang til token for visse ressursapplikasjoners ulike API-tillatelsesscoper. Særlig følgende delegerte API-tillatelser er sensitive og av interesse for angripere:",[685,686,687],"style",{},"\ntable {\n  font-family: arial, sans-serif;\n  border-collapse: collapse;\n  width: 100%;\n}\n\ntd, th {\n  border: 1px solid #dddddd;\n  text-align: left;\n  padding: 8px;\n}\n\ntr:nth-child(even) {\n  background-color: #dddddd;\n}\n",[689,690,691,707],"table",{},[692,693,694],"thead",{},[695,696,697,701,704],"tr",{},[698,699,700],"th",{},"Resource Application",[698,702,703],{},"Application Id",[698,705,706],{},"Delegated Permission Scope",[708,709,710,722,733,744],"tbody",{},[695,711,712,716,719],{},[713,714,715],"td",{},"AADGraph",[713,717,718],{},"00000002-0000-0000-c000-000000000000",[713,720,721],{},"user_impersonation",[695,723,724,727,730],{},[713,725,726],{},"Microsoft Graph API",[713,728,729],{},"00000003-0000-0000-c000-000000000000",[713,731,732],{},"“email\", \"openid\", \"profile\",\"Device.Read.All\", \"DeviceManagementConfiguration.Read.All\", \"DeviceManagementConfiguration.ReadWrite.All\", \"ServicePrincipalEndpoint.Read.All\", \"User.Read”",[695,734,735,738,741],{},[713,736,737],{},"Device Registration Service",[713,739,740],{},"01cb2876-7ebd-4aa4-9cc9-d28bd4d359a9",[713,742,743],{},"adrs_access",[695,745,746,749,752],{},[713,747,748],{},"Windows Azure Service Management API",[713,750,751],{},"797f4846-ba00-4fd7-ba43-dac1f8f63013",[713,753,721],{},[526,755,756],{},"Ettersom de tildelte tillatelsene ikke gjelder selve applikasjonen, avhenger effekten av privilegiene til den som kaller (brukerkontoen) og av hvilke delegerte tillatelsesscoper som er autorisert til å utføre API-kall innenfor scopet.",[526,758,759],{},"La oss se nærmere på hvor kritiske de viste delegerte tillatelsesscopene er og på potensiell autorisasjon til å kalle sensitive APIer.",[559,761,763],{"id":762},"hvilke-privilegier-og-delegerte-scoper-er-kritiske","Hvilke privilegier og delegerte scoper er kritiske?",[526,765,565],{},[674,767,769],{"id":768},"azure-ad-graph-api","Azure AD Graph API",[526,771,680],{},[526,773,774,775,780,781,786],{},"Det eldre programmatiske grensesnittet tilbyr mange APIer for å håndtere kataloginnstillinger og objekter i Entra ID (Azure AD). Det inkluderer Conditional Access-policyer, katalogroller, CRUD på grupper og enheter og operasjoner på den innloggede brukeren, for eksempel bytte av passord. En fullstendig liste over alle støttede operasjoner finnes i ",[574,776,779],{"href":777,"rel":778},"https://learn.microsoft.com/en-us/previous-versions/azure/ad/graph/api/api-catalog",[578],"referansen for Azure AD Graph API",". Dette APIet tas helt ut av bruk 30. juni 2025 (basert på ",[574,782,785],{"href":783,"rel":784},"https://learn.microsoft.com/en-us/graph/migrate-azure-ad-graph-overview",[578],"Microsofts siste kunngjøringer",").",[526,788,789,790,793],{},"Det tildelte delegerte scopet «user_impersonation» lar applikasjonen (i dette tilfellet Company Portal) handle på vegne av brukeren. Enhver tillatelse den innloggede brukeren har til et Entra-objekt, et scope eller på katalognivå kan altså brukes som autorisasjon i API-kallene. Brukeren kan være eier av et Entra ID-objekt (applikasjon, gruppe eller andre objekter), eller ha tildelte tillatelser via Entra ID-rolletildelinger. ",[636,791,792],{},"Ved aktive høyprivilegerte rolletildelinger vil dette la angriperen endre objekter eller kompromittere tenanten."," I det minste kan standard brukertillatelser, selv uten noen privilegier, brukes til omfattende rekognosering og opplisting av katalogobjekter i tenanten.",[526,795,796],{},"Scenarioene og effekten av å misbruke Azure AD Graph API avhenger derfor av den berørte brukerens aktive eller permanent tildelte privilegier. APIer for tilgang til Microsoft 365-tjenester (for eksempel for eksfiltrering av OneDrive) er ikke inkludert i Azure AD Graph.",[674,798,726],{"id":799},"microsoft-graph-api",[526,801,680],{},[526,803,804],{},"Sammenlignet med Azure AD Graph er det delegerte scopet til Microsoft Graph API begrenset til et bestemt scope. Ved siden av OpenID-scoper (openid, email, profile) og grunnleggende leseoperasjoner på vegne av brukeren (ServicePrincipalEndpoint.Read.All, User.Read).",[526,806,807],{},"Listing og lesing av alle enhetsobjekter kan gjøres ved å kalle «device»-endepunktet i Microsoft Graph med standardtillatelser via «Device.Read.All». Dette kan hjelpe angripere med å få innsikt i enhetsobjekter.",[526,809,810],{},"Ved en kompromittert bruker med tildeling til «Intune Administrator» eller en delegering i Microsoft Intune RBAC bør følgende tildelte delegerte API-tillatelser anses som problematiske:",[567,812,813,816],{},[570,814,815],{},"«DeviceManagementConfiguration.Read.All»",[570,817,818],{},"«DeviceManagementConfiguration.ReadWrite.All»",[526,820,821],{},[636,822,823,824,829],{},"Disse delegerte tillatelsene tillater CRUD-operasjoner, for eksempel på Device Compliance- og Configuration Policies, men også utrulling av ",[574,825,828],{"href":826,"rel":827},"https://learn.microsoft.com/en-us/graph/api/intune-shared-devicemanagementscript-create?view=graph-rest-beta",[578],"Management Scripts"," for videre ondsinnet aktivitet på målenheter.",[674,831,737],{"id":832},"device-registration-service",[526,834,680],{},[526,836,837],{},"Med denne tillatelsen kan angriperen joine eller registrere en enhet til Entra ID. Det gjør igjen at de til og med kan enrolle enheten i Intune og, avhengig av Intune-konfigurasjonen, få en gyldig og compliant enhet for å få tilgang til enda flere beskyttede tjenester.",[674,839,841],{"id":840},"andre-foci-applikasjoner","Andre FOCI-applikasjoner",[526,843,680],{},[526,845,846],{},"Å be om tilgang til andre privilegerte grensesnitt, for eksempel Azure Resource Manager API, ligger innenfor FOCI og er også av interesse for angriperen. Denne ressursen er imidlertid fortsatt beskyttet og omgås ikke av grant-kontrollen «compliant device» i Conditional Access.",[526,848,849],{},[642,850],{"alt":644,"src":851},"https://res.cloudinary.com/c4a8/image/upload/blog/pics/company-portal-ca-bypass-03.png",[559,853,855],{"id":854},"kan-vi-oppdage-denne-angrepsteknikken","Kan vi oppdage denne angrepsteknikken?",[526,857,565],{},[526,859,860],{},"Som beskrevet over kommer den største risikoen fra tilgang til MS Graph og Azure AD Graph.",[526,862,863],{},"Ettersom applikasjons-IDen til Microsoft Intune Company Portal-appen alltid brukes i dette tilfellet, er hovedoppgaven ved utforming av en deteksjon å utelukke legitim bruk gjennom for eksempel enhetsregistreringer, som ifølge våre observasjoner handler om hvilke ressurser som nås først i en sesjon → ved et angrep vanligvis MS Graph eller Azure AD Graph.",[526,865,866],{},"Her er en fungerende deteksjon som vi har testet i flere miljøer av ulik størrelse:",[868,869,871,872,875,876,881,882,886,890,893,894,896,893,900,875,902,904,905,893,909,911,893,914,875,916,918,919,921,893,924,875,926,928,929,932,933,936,937,940,941,875,943,946,947,949,893,952,875,954,932,957,959,960,962,963,965,966,893,969,962,971,974,975,978,979,981,982,946,985,987,893,990,875,992,994,995,875,997,999,1000,893,1003,1005,893,1007,875,1009,904,1011,893,1013,1015,893,1018,875,1020,928,1022,932,1024,936,1026,940,1028],"div",{"style":870},"background-color:#000000; font-family: 'Source Code Pro', 'Courier New', monospace; padding: 15px; color: #ffffff","\nAADSignInEventsBeta ",[873,874],"br",{},"\n| ",[877,878,880],"span",{"style":879},"color: #569CD6;","where"," Timestamp > ",[877,883,885],{"style":884},"color: #E6DB74;","ago(",[877,887,889],{"style":888},"color: #A6E22E;","7d",[877,891,892],{"style":884},")"," ",[873,895],{},[877,897,899],{"style":898},"color: #75715E;","// Access to Microsoft Intune Company Portal",[873,901],{},[877,903,880],{"style":879}," ApplicationId == ",[877,906,908],{"style":907},"color: #D69D85;","@\"9ba1a5c7-f17a-4de9-a1f1-6178c8d51223\"",[873,910],{},[877,912,913],{"style":898},"// From non joined/registered device",[873,915],{},[877,917,880],{"style":879}," isempty(AadDeviceId) ",[873,920],{},[877,922,923],{"style":898},"// Used to access resource Microsoft Graph or Windows Azure Active Directory",[873,925],{},[877,927,880],{"style":879}," ResourceId ",[877,930,931],{"style":879},"in"," (",[877,934,935],{"style":907},"\"00000002-0000-0000-c000-000000000000\"",", ",[877,938,939],{"style":907},"\"00000003-0000-0000-c000-000000000000\"",") ",[873,942],{},[877,944,945],{"style":879},"summarize by"," SessionId ",[873,948],{},[877,950,951],{"style":898},"// Find the initial logon event based on the session Id",[873,953],{},[877,955,956],{"style":879},"join kind=inner",[873,958],{},"\n    AADSignInEventsBeta ",[873,961],{},"\n    | ",[877,964,880],{"style":879}," ErrorCode == ",[877,967,968],{"style":888},"0",[873,970],{},[877,972,973],{"style":879},"summarize arg_min(","Timestamp, *",[877,976,977],{"style":879},") by"," SessionId)",[873,980],{},"\n    ",[877,983,984],{"style":879},"on",[873,986],{},[877,988,989],{"style":898},"// Ignore trusted and managed devices",[873,991],{},[877,993,880],{"style":879}," isempty(DeviceTrustType) ",[873,996],{},[877,998,880],{"style":879}," IsManaged != ",[877,1001,1002],{"style":888},"1",[873,1004],{},[877,1006,899],{"style":898},[873,1008],{},[877,1010,880],{"style":879},[877,1012,908],{"style":907},[873,1014],{},[877,1016,1017],{"style":898},"// when the first requested resource is Microsoft Graph or Windows Azure Active Directory",[873,1019],{},[877,1021,880],{"style":879},[877,1023,931],{"style":879},[877,1025,935],{"style":907},[877,1027,939],{"style":907},[873,1029],{},[559,1031,1033],{"id":1032},"hvordan-bør-vi-reagere-når-vi-oppdager-mistenkelig-aktivitet","Hvordan bør vi reagere når vi oppdager mistenkelig aktivitet?",[526,1035,565],{},[526,1037,1038],{},"Start incident response-prosessen din med en definert playbook som inneholder:",[567,1040,1041,1062,1070,1073,1076],{},[570,1042,1043,1044],{},"Jakt etter mistenkelig eller avvikende aktivitet fra den kompromitterte brukeren\n",[567,1045,1046,1053,1056,1059],{},[570,1047,1048,1049],{},"Oppsummering av ikke-interaktive innlogginger til ressursapplikasjoner, inkludert IP-adresser og UserAgents, basert på ",[1050,1051,1052],"code",{},"sessionId",[570,1054,1055],{},"Kontroll av om Microsoft Entra Audit Logs viser kritiske operasjoner utført av brukeren eller IP-adressene (for eksempel tillagte credentials på egne app-registreringer)",[570,1057,1058],{},"Identifisering av om brukeren har registrert enheter i den berørte sesjonen",[570,1060,1061],{},"Kontroll av Intune-revisjonsloggene for operasjoner fra applikasjonen «Company Portal» og den berørte brukeren",[570,1063,1064,1065],{},"Jakt etter relaterte varsler hos de påvirkede entitetene\n",[567,1066,1067],{},[570,1068,1069],{},"Søk etter entiteter i AlertEvidence-tabellen for å identifisere andre varsler basert på SessionId, IP-adresser og bruker",[570,1071,1072],{},"Identifisering av brukerens kritikalitet (basert på privilegier) i Exposure Management",[570,1074,1075],{},"Gjennomgang av jaktresultatene og verifisering av om handlingen var legitim som del av en enhetsregistrering.",[570,1077,1078],{},"Identifisering av den initiale tilgangsvektoren og tilbakestilling av brukerens innloggingsopplysninger og eventuelle enheter.",[559,1080,1082],{"id":1081},"kan-vi-motvirke-angrepet","Kan vi motvirke angrepet?",[526,1084,565],{},[526,1086,1087,1088,1091],{},"Ettersom det konfigurerte unntaket kreves for Intune-registrering, ",[636,1089,1090],{},"finnes det ingen tiltak som ikke samtidig bryter andre deler av Microsoft 365."," Tilgang til Azure AD Graph-ressursen kan ikke scopes eller blokkeres direkte. Enhver Conditional Access-policy som bruker «Block» som grant-kontroll vil hindre tilgang, men kan ha andre konsekvenser.",[526,1093,1094],{},"For tiltak er det imidlertid avgjørende å forstå at denne omgåelsen av Conditional Access ikke er et komplett angrep. Det er en teknikk som utgjør ett steg som muliggjør en rekke angrep.",[526,1096,1097],{},"En angrepssti kan være",[1099,1100,1101,1104,1107,1110],"ol",{},[570,1102,1103],{},"Kontokompromittering via phishing og AiTM",[570,1105,1106],{},"Omgåelse av Conditional Access",[570,1108,1109],{},"Rekognosering med for eksempel ROADrecon, GraphRunner eller AADInternals",[570,1111,1112],{},"Lateral bevegelse, privilegieeskalering eller persistens via en nyregistrert enhet enrollet i Intune",[526,1114,1115],{},"Ettersom vi ikke klarer å motvirke omgåelsen av Conditional Access uten å bryte Intune-registreringen, er det mer enn rimelig å innføre tiltak på de andre stegene i angrepsstien og også innføre fornuftige deteksjoner.",[526,1117,1118],{},"For å redusere sannsynligheten og effekten foreslår vi at du styrker andre kontroller og snart innfører følgende:",[567,1120,1121,1127,1133,1139,1145,1161,1167],{},[570,1122,1123,1126],{},[636,1124,1125],{},"Håndhev MFA for «All Users» og «All Cloud Apps» via Conditional Access."," Hvis du kun håndhever Device Compliance, holder enfaktorautentisering med denne teknikken.",[570,1128,1129,1132],{},[636,1130,1131],{},"Ikke bruk Device Compliance eller MFA i regelsettene dine, håndhev alltid begge."," Å bruke OR vil aldri begrense all tilgang til compliant enheter, ettersom en access-token med MFA i scope vil være nok til å få tilgang til tenanten.",[570,1134,1135,1138],{},[636,1136,1137],{},"Begrens registrering av sikkerhetsinformasjon til compliant enheter, phishing-resistent autentisering eller TAP."," I testene våre klarte vi ikke å omgå Device Compliance for registrering av sikkerhetsinformasjon.",[570,1140,1141,1144],{},[636,1142,1143],{},"Krev phishing-resistent autentisering eller TAP for å joine eller registrere enheter."," Uten det er det mulig å registrere en enhet med for eksempel AADInternals og denne teknikken.",[570,1146,1147,1150,1151],{},[636,1148,1149],{},"Krev MFA og «Sign-in frequency every time» for Microsoft Intune Enrollment."," Dette begrenser tidsrommet en angriper kan bruke ferske innloggingsopplysninger til å registrere en ny enhet i Intune.\n",[1152,1153,1154],"blockquote",{},[526,1155,1156,1157,1160],{},"🚧\n",[636,1158,1159],{},"NB: Sign-in frequency every time = hvert femte minutt","\nMicrosoft regner med fem minutters klokkeavvik når «every time» velges i en Conditional Access-policy, slik at brukerne ikke blir spurt oftere enn en gang hvert femte minutt.",[570,1162,1163,1166],{},[636,1164,1165],{},"Blokker privateide enheter i Intune Enrollment-restriksjonene."," Uten disse restriksjonene kan en angriper registrere en ny enhet og skaffe seg ytterligere fotfeste.",[570,1168,1169,1172],{},[636,1170,1171],{},"Sett device compliance til å feile når det ikke er tildelt en compliance-policy på en enhet i Intune."," Som standard betraktes hver enhet som compliant, selv om ingen policy faktisk er anvendt. Endre dette og gjør en device compliance-policy til et krav.",[526,1174,1175,1176,1180],{},"På lang sikt vil vi oppfordre deg til å investere i utrulling av passordløs, phishing-resistent autentisering som Windows Hello for Business og Passkeys (inkludert Platform Credentials via macOS Platform SSO). Det lar deg deretter håndheve phishing-resistent autentisering og blokkere AiTM-angrep. Tillat i stedet for passord bruk av Temporary Access Pass (TAP) i begrenset tid og for bestemte scenarioer, for eksempel onboarding av nye enheter eller ansatte. For å støtte bruken av TAP i ulike bruksområder har vi bygget ",[574,1177,287],{"href":1178,"rel":1179},"https://myworkid.cloud/",[578],".",[559,1182,1184],{"id":1183},"oppsummering","Oppsummering",[526,1186,565],{},[526,1188,1189],{},"Conditional Access som Zero Trust-motor for Entra ID er allerede komplisert i seg selv. Microsofts innebygde unntak i backend av Entra gjør det enda vanskeligere for mange å forstå hvilken effekt policyer og beskyttelser har. Likevel holder ideen om Zero Trust og forsvar i dybden.",[526,1191,1192],{},"Device compliance-policyen forhindrer de fleste AiTM-angrep, og multifaktorautentisering gjør det vanskeligere for en angriper å misbruke lekkede eller på annen måte kompromitterte innloggingsopplysninger.",[526,1194,1195],{},"Alle disse sikkerhetstiltakene må brukes sammen, ikke det ene i stedet for det andre. Det sikrer et trygt miljø, selv om ett av forsvarene manipuleres eller omgås.",[526,1197,1198],{},"Vi anbefaler sterkt at du ruller ut den angitte deteksjonen i Microsoft Defender XDR for å sikre at potensielt misbruk oppdages. Sørg for at SOCen din er klar til å etterforske slike hendelser, og gi dem de nødvendige playbookene.",{"title":530,"searchDepth":531,"depth":531,"links":1200},[1201,1202,1203,1207,1213,1214,1215,1216],{"id":561,"depth":531,"text":562},{"id":622,"depth":531,"text":623},{"id":669,"depth":531,"text":670,"children":1204},[1205],{"id":676,"depth":1206,"text":677},3,{"id":762,"depth":531,"text":763,"children":1208},[1209,1210,1211,1212],{"id":768,"depth":1206,"text":769},{"id":799,"depth":1206,"text":726},{"id":832,"depth":1206,"text":737},{"id":840,"depth":1206,"text":841},{"id":854,"depth":531,"text":855},{"id":1032,"depth":531,"text":1033},{"id":1081,"depth":531,"text":1082},{"id":1183,"depth":531,"text":1184},"post",{"lang":1219,"seoTitle":1220,"titleClass":1221,"date":1222,"categories":1223,"blogtitlepic":1224,"socialimg":1225,"customExcerpt":1226,"keywords":1227,"contactInContent":1228,"scripts":1285},"no","Compliant Device Bypass i Microsoft Intune: deteksjon, respons og tiltak","h2-font-size","2025-01-14",[235],"header-company-portal-ca-bypass","/blog/heads/header-company-portal-ca-bypass.png","I dette blogginnlegget samler glueckkanjas MVP Fabian Bader, Chris Brumm og Thomas Naunheim detaljene rundt Compliant Device Bypass i Microsoft Intune Company Portal. Etter videre undersøkelser har de funnet en tilnærming for å oppdage og reagere på den potensielle trusselen. Du får også veiledning om Conditional Access for å redusere angrepsflaten og detaljer om skadeomfanget.","Compliant Device Bypass, Microsoft Intune, Conditional Access, Entra ID, Intune Company Portal, device compliance, CA-unntak, TokenSmith PoC, cloud security, PowerShell PoC, Fabian Bader, Christopher Brumm, Thomas Naunheim, sikkerhetstrussel, Black Hat Europe, Intune Enrollment, MSRC-respons, angrepsdeteksjon, trusseltiltak, cloud compliance, FOCI-funksjon",{"quote":484,"infos":1229},{"bgColor":1230,"color":1231,"boxBgColor":1232,"boxColor":1233,"headline":1234,"subline":1235,"level":559,"textStyling":1236,"flush":1237,"person":1238,"form":1250},"var(--color-gk-violet)","var(--color-gk-white)","var(--color-gk-yellow)","var(--color-copy)","Kontakt oss nå","Vil du vite mer om Compliant Device Bypass og hvordan du oppdager og håndterer den effektivt? Ekspertene våre går gjerne gjennom funnene våre med deg og støtter deg med utprøvde strategier for bedre sikkerhet. Vi ser fram til å høre fra deg.","text-light","justify-content-end",{"image":1239,"cloudinary":325,"alt":1240,"name":1240,"detailsHeader":1241,"details":1242},"/people/people-pam-team.png","Project & Account Management","Vi ser fram til å høre fra deg",[1243,1247],{"text":492,"href":1244,"details":1245,"icon":1246},"tel:+49 69 4005520","Ring nå","site/phone",{"text":493,"href":1248,"icon":1249},"mailto:info@glueckkanja.com","site/mail",{"ctaText":1251,"cta":1252,"method":1217,"action":1254,"fields":1255},"Send",{"skin":1253},"primary on-surface","/send",[1256,1260,1265,1268,1272,1277,1280,1283],{"type":1257,"id":1258,"value":1259},"hidden","_next","successful",{"label":1261,"type":1262,"id":1263,"required":325,"requiredMsg":1264},"Navn*","text","name","Skriv inn navnet ditt.",{"label":1266,"type":1262,"id":403,"required":325,"requiredMsg":1267},"Firma*","Skriv inn firmaet ditt.",{"label":1269,"type":1270,"id":1270,"required":325,"requiredMsg":1271},"E-postadresse*","email","Skriv inn e-postadressen din.",{"label":1273,"type":1274,"id":1275,"required":325,"requiredMsg":1276},"Dataene dine lagres hos oss for å behandle og besvare henvendelsen din. Du finner mer informasjon om personvern i vår \u003Ca href=\"/no/privacy\">personvernerklæring\u003C/a>.","checkbox","dataprotection","Bekreft",{"type":1257,"id":1278,"value":1279},"_subject","Request Global Secure Access | NO",{"type":1257,"id":1281,"value":1282},"inbox_key","gkgab-contact-form",{"type":1257,"id":1284},"_gotcha",{"slick":325,"form":325},"/posts/2025-01-14-compliant-device-bypass",{"title":552,"description":530},"posts/2025-01-14-compliant-device-bypass",[235,1290,1291,1292,281],"Entra","Conditional Access","ITDR","CMHv6AwPsfsiovbZwSjhO6OEiwMwI-aK3YLCyBmXBEs",{"id":1295,"title":1296,"author":1297,"body":1298,"cta":494,"description":530,"eventid":494,"extension":533,"hideInRecent":484,"layout":1217,"meta":1512,"moment":1514,"navigation":325,"path":1547,"seo":1548,"stem":1549,"tags":1550,"webcast":484,"__hash__":1554},"content_no/posts/2025-09-25-gsa-unlocked.md","Global Secure Access Unlocked",[555,521],{"type":523,"value":1299,"toc":1498},[1300,1304,1306,1309,1312,1315,1319,1321,1324,1329,1332,1337,1340,1345,1349,1351,1354,1358,1360,1363,1366,1369,1372,1377,1381,1383,1386,1394,1399,1403,1405,1408,1411,1414,1419,1423,1425,1428,1431,1434,1439,1443,1445,1448,1451,1454,1462,1465,1470,1474,1476,1479,1482,1486,1490,1492,1495],[559,1301,1303],{"id":1302},"what-is-a-managed-red-tenant","What is a Managed Red Tenant?",[526,1305,565],{},[526,1307,1308],{},"Managed Red Tenant kombinerer vår omfattende erfaring innen managed services med utprøvde blueprints for workplace, Azure og security.",[526,1310,1311],{},"Resultatet er et isolert, fullt ut cloud-basert as-code-forvaltet miljø som effektivt beskytter administrative brukere og endepunkter, også i målmiljøer med flere Microsoft Entra-tenants og Active Directory-domener.",[526,1313,1314],{},"Løsningen vår bygger på native, cloud-baserte identitets- og sikkerhetsfunksjoner fra Microsoft og følger Zero Trust-prinsippene strengt.",[674,1316,1318],{"id":1317},"global-secure-access-as-security-service-edge","Global Secure Access as Security Service Edge",[526,1320,680],{},[526,1322,1323],{},"Vi har integrert de nyeste funksjonene fra Global Secure Access i ulike komponenter av Managed Red Tenant for å styrke sikkerheten ved tilgang til Virtual Access Workstations (VAW-er) og for å beskytte og begrense utgående privilegert tilgang.",[526,1325,1326],{},[636,1327,1328],{},"Microsoft Entra Internet Access",[526,1330,1331],{},"fungerer som en identitetssentrisk Secure Web Gateway (SWG) og er implementert for å blokkere offentlig internett-tilgang og bare tillate tilkobling til privilegerte grensesnitt og de autoriserte tenant-miljøene til virksomheten. Ekstra funksjoner som Universal Conditional Access Evaluation (CAE) gjør det mulig å blokkere tilgang i nær sanntid.",[526,1333,1334],{},[636,1335,1336],{},"Microsoft Entra Private Access",[526,1338,1339],{},"fungerer som en identitetssentrisk Zero Trust Network Access-løsning (ZTNA) og er kjernen i vår tilnærming til å gi sikker og privat tilgang til VAW-er. Integrasjonen i løsningen vår legger til et ekstra beskyttelseslag for privilegerte sesjoner på AVD-baserte endepunkter ved å håndheve Conditional Access på klienten som kobler seg til, før forbindelsen til VAW-en etableres. Å sikre tilgang og anvende Zero Trust-prinsippet for å administrere private eller on-premises ressurser er et annet bruksområde der vi drar nytte av Private Access.",[526,1341,1342],{},[642,1343],{"alt":644,"src":1344},"https://res.cloudinary.com/c4a8/image/upload/blog/pics/gsa-img-01.png",[559,1346,1348],{"id":1347},"use-cases-for-global-secure-access-in-the-managed-red-tenant","Use Cases for Global Secure Access in the Managed Red Tenant",[526,1350,565],{},[526,1352,1353],{},"Global Secure Access er en av kjernekomponentene i designet av vår Managed Red Tenant, og vi ser frem til å løfte både sikkerhet og brukervennlighet til et nytt nivå. Merverdien blir tydeligst når man ser på de enkelte bruksområdene, som vi presenterer i denne bloggen.",[674,1355,1357],{"id":1356},"access-to-virtual-access-workstations","Access to Virtual Access Workstations",[526,1359,680],{},[526,1361,1362],{},"Enkelte virksomheter velger å ikke utstyre alle administratorer med fysiske Privileged Admin Workstations (PAW-er). For disse lavprivilegerte administratorene tilbyr vi det vi kaller Virtual Access Workstations (VAW-er).",[526,1364,1365],{},"Det mest kritiske her er sikker tilgang til VAW-ene, og vi anser det som avgjørende å etablere et høyt sikkerhetsnivå, der Entra Private Access spiller en nøkkelrolle.",[526,1367,1368],{},"Administratorer kobler seg til VAW-ene fra sine enterprise-enheter og logger på med kontoen sin fra Managed Red Tenant. På grunn av dette identitetsbyttet kommer den tilkoblede brukeren fra en annen tenant enn den opprinnelige enheten og kan ikke framvise en device compliance-status.",[526,1370,1371],{},"Derfor bruker vi Global Secure Access til forhåndsautentisering med den opprinnelige brukeren fra enheten. Ettersom VAW-ene våre ikke eksponerer offentlige endepunkter og bare er tilgjengelige via Entra Private Access, kan vi sikre nettverkstilgangen i svært stor grad. Conditional Access i workforce-miljøet håndhever sterk bruker- og enhetsautentisering, inkludert device compliance og risikobaserte kontroller.",[526,1373,1374],{},[642,1375],{"alt":644,"src":1376},"https://res.cloudinary.com/c4a8/image/upload/blog/pics/gsa-img-02.png",[674,1378,1380],{"id":1379},"secure-web-filtering","Secure Web Filtering",[526,1382,680],{},[526,1384,1385],{},"Et sentralt kjennetegn ved administrative enheter er den strengt begrensede tilgangen til applikasjoner, utformet for å minimere angrepsflaten mest mulig. Der lokale løsninger som proxy.pac-filer eller delte sentraliserte proxyer (ikke T0-eksklusive) tidligere var vanlige, har vi valgt Entra Internet Access for enheter innenfor Managed Red Tenant.",[567,1387,1388,1391],{},[570,1389,1390],{},"Internett-tilgang tillates bare fra compliant-enheter og etter sterk brukerautentisering",[570,1392,1393],{},"Tilgangen er begrenset til eksplisitt godkjente URL-er, og ettersom HTTPS-trafikk (der det er mulig) dekrypteres og inspiseres, er det også mulig å begrense tilgangen til bestemte stier, for eksempel innenfor Azure DevOps eller GitHub",[526,1395,1396],{},[642,1397],{"alt":644,"src":1398},"https://res.cloudinary.com/c4a8/image/upload/blog/pics/gsa-img-03.png",[674,1400,1402],{"id":1401},"tenant-restrictions-for-saas-services-and-administrative-interfaces","Tenant Restrictions for SaaS Services and Administrative Interfaces",[526,1404,680],{},[526,1406,1407],{},"I SaaS-tjenester og administrative grensesnitt er det vanlig at URL-er er identiske på tvers av alle tenants, noe som gjør dem vanskelige å kontrollere med webfiltreringsmetodene beskrevet ovenfor.",[526,1409,1410],{},"For å sikre at bare kontoer fra Managed Red Tenant kan logge på Microsofts godkjente portaler fra en administrativ enhet, benytter vi Tenant Restriction-funksjonen i Global Secure Access.",[526,1412,1413],{},"Via Entra Internet Access signaliseres det til Entra ID hvilke tenants som er tillatt for pålogging. Det garanterer at alle policyer fra Managed Red Tenant håndheves, og at administrativ tilgang skjer utelukkende via B2B-samarbeid.",[526,1415,1416],{},[642,1417],{"alt":644,"src":1418},"https://res.cloudinary.com/c4a8/image/upload/blog/pics/gsa-img-04.png",[674,1420,1422],{"id":1421},"on-premises-access","On-Premises Access",[526,1424,680],{},[526,1426,1427],{},"En Managed Red Tenant kan selvsagt også brukes til å administrere on-premises- og IaaS-miljøer, noe som krever sikker tilgang til datasentrene. Entra Private Access gir oss Zero Trust Network Access som kombinerer sikkerhetsstandarder på øverste nivå med en fleksibel arkitektur og god ytelse.",[526,1429,1430],{},"Tilgang til datasentre og IaaS-miljøer bygger på robust bruker- og enhetsautentisering, inkludert device compliance og risikobaserte kontroller.",[526,1432,1433],{},"Å administrere enkeltmål som app-segmenter gjør det mulig med granulær tilgangskontroll som automatiseres med Entra Governance-funksjoner. Det utvider funksjoner som allerede er mye brukt i Managed Red Tenant, som Just-In-Time-administrasjon og godkjenningsflyter, til nettverkslaget.",[526,1435,1436],{},[642,1437],{"alt":644,"src":1438},"https://res.cloudinary.com/c4a8/image/upload/blog/pics/gsa-img-05.png",[674,1440,1442],{"id":1441},"revocation-access-in-near-real-time","Revocation Access in Near Real-Time",[526,1444,680],{},[526,1446,1447],{},"Zero Trust betyr også å være forberedt på å begrense trusler raskt og effektivt, selv innenfor den sikreste arkitekturen, og å isolere kompromitterte komponenter.",[526,1449,1450],{},"I et Managed Red Tenant-miljø er vi ikke bare forberedt på at brukere og enheter i selve tenanten kompromitteres, men også på det (mest sannsynlige) scenariet der et angrep utgår fra en administrators kontor-PC og deretter sprer seg til Virtual Admin Workstation.",[526,1452,1453],{},"Takket være funksjonen Universal Continuous Access Evaluation (CAE) i Global Secure Access utløses følgende tiltak automatisk:",[567,1455,1456,1459],{},[570,1457,1458],{},"Tilgang til Virtual Admin Workstation via Entra Private Access avbrytes hvis for eksempel brukerrisikonivået for kontoen i Workforce Tenant settes til High",[570,1460,1461],{},"Tilgang til administrative grensesnitt og datasentermiljøet trekkes tilbake hvis for eksempel sesjonene til kontoen i Managed Red Tenant avsluttes",[526,1463,1464],{},"I tillegg kan full isolering av alle enheter og kontoer i Managed Red Tenant startes når som helst av den integrerte CSOC-tjenesten.",[526,1466,1467],{},[642,1468],{"alt":644,"src":1469},"https://res.cloudinary.com/c4a8/image/upload/blog/pics/gsa-img-06.png",[674,1471,1473],{"id":1472},"enriched-sign-ins-and-token-insights","Enriched Sign-Ins and Token Insights",[526,1475,680],{},[526,1477,1478],{},"Utover de mange funksjonene for tilgangskontroll utgjør Global Secure Access et reelt løft når det kommer til logging. Vi får betydelig mer telemetri fra nettverkslaget og kan korrelere den med eksisterende sign-in- og auditlogger.",[526,1480,1481],{},"Det gjør at vårt CSOC kan identifisere hvilke handlinger som fortsatt ble utført etter at containment ble utløst, for eksempel i tilfeller der ikke alle tokens støttet Continuous Access Evaluation (CAE).",[526,1483,1484],{},[642,1485],{"alt":644,"src":1469},[559,1487,1489],{"id":1488},"final-thoughts","Final thoughts",[526,1491,565],{},[526,1493,1494],{},"Denne bloggen publiseres sammen med et webcast der vi utforsker Managed Red Tenant, Global Secure Access, integrasjonsprosessen og de relevante bruksområdene, understøttet av live-demoer.",[526,1496,1497],{},"Hvis denne bloggen har vekket interessen din, anbefaler vi at du tar en titt på webcasten. Og selvsagt hører vi alltid gjerne fra deg direkte.",{"title":530,"searchDepth":531,"depth":531,"links":1499},[1500,1503,1511],{"id":1302,"depth":531,"text":1303,"children":1501},[1502],{"id":1317,"depth":1206,"text":1318},{"id":1347,"depth":531,"text":1348,"children":1504},[1505,1506,1507,1508,1509,1510],{"id":1356,"depth":1206,"text":1357},{"id":1379,"depth":1206,"text":1380},{"id":1401,"depth":1206,"text":1402},{"id":1421,"depth":1206,"text":1422},{"id":1441,"depth":1206,"text":1442},{"id":1472,"depth":1206,"text":1473},{"id":1488,"depth":531,"text":1489},{"lang":1219,"seoTitle":1513,"titleClass":1221,"date":1514,"categories":1515,"blogtitlepic":1516,"socialimg":1517,"customExcerpt":1518,"keywords":1519,"maxContent":325,"textImageTeaser":1520,"asideNav":1535,"footer":1545,"scripts":1546,"published":325},"Sikring av administrativ tilgang til Microsoft 365 med Entra og Global Secure Access","2025-09-25",[235],"head-gsa-unlocked.jpg","/blog/heads/head-gsa-unlocked.jpg","Denne bloggen ser på hvordan Microsoft Global Secure Access styrker sikkerhet og kontroll i vår Managed Red Tenant. Med Entra Internet Access og Private Access kan virksomheter sikre administrative sesjoner, håndheve Zero Trust og forenkle tilgangen til cloud- og on-prem-ressurser. Konkrete bruksområder og arkitekturinnsikt viser hvordan du beskytter M365-miljøer effektivt.","Microsoft Global Secure Access, Entra Internet Access, Entra Private Access, Managed Red Tenant, Zero Trust, M365-sikkerhet, conditional access, kontroll av administrativ tilgang, sikker webfiltrering, virtuelle administratorarbeidsstasjoner, CAE, tenant restrictions, Microsoft 365, cloud security",{"image":1521,"cloudinary":325,"alt":1522,"bgColor":1523,"offset":325,"white":325,"list":1524,"left":484,"float":484,"firstColWidth":1529,"secondColWidth":1530,"copyClasses":1531,"headline":1532,"subline":1533,"spacing":1534},"/icons/shape-managed-red-tenant.svg","Copilot-ikon","#E44418",[1525],{"ctaText":1526,"ctaHref":1527,"ctaType":1528,"external":325},"Se hele sesjonen på YouTube","https://youtu.be/SpEOIdoA-uc","Button",5,7,"richtext","Global Secure Access Unlocked: reell implementering i Managed Red Tenant","\u003Cp>I Managed Red Tenant håndhever vi streng separasjon for privilegert tilgang. Live-demoer viser hvordan vi sikrer administrative arbeidsflyter med Global Secure Access.\u003Cbr /> \u003Cbr /> I den engelskspråklige sesjonen vår lærer du:\u003C/p> \u003Cul> \u003Cli>Hvordan PAW-er og VAW-er med identitetsbytte skaper sikre administratorarbeidsstasjoner\u003C/li> \u003Cli>Hvordan Tenant Restrictions og Cross-Tenant Access Policies bare tillater autorisert tilgang\u003C/li> \u003Cli>Hvordan Per-App Tunnels og Continuous Access Evaluation erstatter tradisjonelle VPN-er\u003C/li> \u003Cli>Hvordan Just-in-Time-administrasjon fungerer i praksis med Microsoft PIM\u003C/li> \u003C/ul> ","space-top-2 space-bottom-2 mt-10",{"menuItems":1536},[1537,1540,1543],{"href":1538,"text":1539},"#what-is-a-managed-red-tenant","Hva er en Managed Red Tenant?",{"href":1541,"text":1542},"#use-cases-for-global-secure-access-in-the-managed-red-tenant","Bruksområder for Global Secure Access i Managed Red Tenant",{"href":1544,"text":1184},"#final-thoughts",{"noMargin":325},{"slick":325},"/posts/2025-09-25-gsa-unlocked",{"title":1296,"description":530},"posts/2025-09-25-gsa-unlocked",[101,1551,1552,1553,281],"M365 Data Governance","SharePoint Security","AI Data Preparation","peZxvpptRLW3t3woqtSU-veDBrLzSs2XMjUWFjR5sWw",{"id":1556,"title":1557,"author":1558,"body":1559,"cta":494,"description":1563,"eventid":494,"extension":533,"hideInRecent":484,"layout":1217,"meta":2344,"moment":2346,"navigation":325,"path":2367,"seo":2368,"stem":2369,"tags":2370,"webcast":484,"__hash__":2373},"content_no/posts/2025-12-31-vulnerability-consentfix.md","AuthCodeFix aka ConsentFix",[554,555,521],{"type":523,"value":1560,"toc":2324},[1561,1564,1567,1570,1576,1579,1582,1591,1596,1604,1624,1627,1633,1636,1639,1645,1650,1654,1665,1671,1674,1677,1681,1684,1690,1696,1699,1719,1729,1733,1736,1739,1742,1745,1749,1752,1755,1772,1781,1785,1789,1809,1813,1818,1829,1832,1840,1844,1858,1862,1873,1877,1880,1888,1891,1899,1902,1910,1914,1917,1938,1941,2006,2009,2012,2015,2018,2021,2027,2030,2071,2075,2090,2094,2098,2112,2115,2118,2123,2126,2137,2141,2148,2152,2158,2163,2177,2183,2189,2195,2206,2209,2215,2218,2243,2251,2255,2275,2281,2284,2290,2294],[526,1562,1563],{},"Som tradisjonen tro rett før årsslutt dukker det opp en ny sårbarhet eller et smart angrepsvektor, og defenders sitter igjen og forsøker å beskytte brukerne sine. Samtidig følger andre angripere og red teamere nøye med og tilpasser seg.",[526,1565,1566],{},"I år oppdaget PushSecurity et angrep de har kalt «ConsentFix», en videreutvikling av ClickFix-angrepet som er avhengig av at brukeren gir angriperen en URI som i praksis overleverer nøkkelen til Entra-riket. Metoden som ble observert i det fri, var avhengig av at brukeren manuelt kopierte og limte inn for å virke. I løpet av få dager publiserte John Hammond en video som demonstrerte en forbedret variant av angrepet som ikke lenger krevde kopiering og innliming; i stedet kunne brukeren rett og slett dra og slippe autentiseringskoden sin til angriperen.",[526,1568,1569],{},"Når vi ser nærmere på de tekniske detaljene rundt hvorfor dette angrepet fungerer og tilsynelatende omgår enhetscompliance og andre Conditional Access-krav, havner vi midt i OAuth 2.0 authorization code flow.",[526,1571,1572],{},[642,1573],{"alt":1574,"src":1575},"OAuth 2.0 authorization code flow","https://res.cloudinary.com/c4a8/image/upload/blog/pics/consentfix-img-01.png",[526,1577,1578],{},"Angriperen konstruerer en Microsoft Entra-innloggings-URI som retter seg mot klienten «Microsoft Azure CLI» og ressursen «Azure Resource Manager», og åpner denne URI-en når brukeren besøker det ondsinnede nettstedet.",[526,1580,1581],{},"Mappet mot authorization code flow tilsvarer dette det første steget som en native public app som Azure CLI normalt ville kalt for å autentisere brukeren. Applikasjonen oppretter en listener på maskinen den kjøres på, på en tilfeldig høy port. Denne porten brukes som en såkalt reply URI.",[526,1583,1584,1585,1590],{},"Du kan enkelt reprodusere dette selv, for eksempel ved å bruke ",[574,1586,1589],{"href":1587,"rel":1588},"https://github.com/f-bader/TokenTacticsV2",[578],"TokenTacticsV2",", eller ved å konstruere URI-en manuelt.",[526,1592,1593],{},[642,1594],{"alt":1589,"src":1595},"https://res.cloudinary.com/c4a8/image/upload/blog/pics/consentfix-img-02.png",[526,1597,1598,1599,1603],{},"Etter at brukeren har logget inn hos Entra ID, blir vedkommende omdirigert til reply-URI-en, for eksempel ",[574,1600,1601],{"href":1601,"rel":1602},"http://localhost:3001",[578],". I et normalt scenario ville Azure CLI nå akseptert kallet til denne URI-en og mottatt den viktige og kritiske informasjonen som ligger i omdirigeringen:",[567,1605,1606,1616],{},[570,1607,1608,1610,1612,1613,1615],{},[636,1609,1050],{},[873,1611],{},"\nDette er authorization_code, som applikasjonen bruker for å be om en bearer token, bestående av access token, ID token og eventuelt refresh token.",[873,1614],{},"\nIfølge dokumentasjonen er denne koden gyldig i rundt 10 minutter og må innløses innenfor dette tidsvinduet.",[570,1617,1618,1621,1623],{},[636,1619,1620],{},"state",[873,1622],{},"\nDette er en valgfri parameter, og applikasjonen bør verifisere at den er identisk i forespørselen og i responsen.",[526,1625,1626],{},"I angrepsscenariet blir brukeren også omdirigert, men siden ingen applikasjon kjører på localhost, støter nettleseren på en feil.",[526,1628,1629],{},[642,1630],{"alt":1631,"src":1632},"The browser runs into an error","https://res.cloudinary.com/c4a8/image/upload/blog/pics/consentfix-img-03.png",[526,1634,1635],{},"URI-en inneholder likevel den sensitive informasjonen, og det er akkurat dette angriperen vil at brukeren skal levere. Hvis brukeren gjør det, vil angriperen innløse token-materialet og deretter kunne bruke access token og refresh token for å nå ressursen, i dette tilfellet Azure Resource Manager.",[526,1637,1638],{},"I dette skjermbildet ser du hvordan bearer token hentes ut ved hjelp av URI-en brukeren har oppgitt.",[526,1640,1641],{},[642,1642],{"alt":1643,"src":1644},"Bearer token using the URI provided by the user","https://res.cloudinary.com/c4a8/image/upload/blog/pics/consentfix-img-04.png",[1152,1646,1647],{},[526,1648,1649],{},"Hvis du vil teste deteksjonene dine, sørg for at du utfører det siste steget fra et annet system, i et annet nettverk.",[559,1651,1653],{"id":1652},"deteksjons-artefakter","Deteksjons-artefakter",[526,1655,1656,1657,1660,1661,1664],{},"Når du reproduserer angrepet og sjekker ",[1050,1658,1659],{},"SigninLogs"," og ",[1050,1662,1663],{},"AADNonInteractiveUserSignInLogs",", vil du se to hendelser for denne ene innloggingsaktiviteten. Den første hendelsen representerer selve brukerinnloggingen, mens den andre stammer fra angriperens infrastruktur.",[526,1666,1667],{},[642,1668],{"alt":1669,"src":1670},"Activity Log","https://res.cloudinary.com/c4a8/image/upload/blog/pics/consentfix-img-05.png",[526,1672,1673],{},"Den store forskjellen er at den første hendelsen er en interaktiv innloggingshendelse, mens den andre er ikke-interaktiv. Dette speiler de to trinnene i autentiseringsflyten: først brukeren, deretter applikasjonen, eller i vårt tilfelle angriperen.",[526,1675,1676],{},"Normal oppførsel for Azure CLI ville vært at begge sign-in-hendelsene stammer fra samme IP-adresse. I vårt tilfelle er IP-adressene derimot forskjellige, og de kommer fra ulike land. Sistnevnte er selvsagt ikke en pålitelig indikator, ettersom angriperen kan oppholde seg i samme land som offeret for å skjule sporene sine.",[674,1678,1680],{"id":1679},"missing-link","Missing link",[526,1682,1683],{},"Da vi lette etter en god måte å koble sammen disse to hendelsene, var den naturlige første tanken å sjekke Unique Token Identifier (UTI). Microsoft bruker imidlertid ulike verdier for authorization code-UTI og bearer token-UTI, så denne fremgangsmåten fungerer ikke som en pålitelig kobling.",[526,1685,1686],{},[642,1687],{"alt":1688,"src":1689},"Unique Token Identifier","https://res.cloudinary.com/c4a8/image/upload/blog/pics/consentfix-img-06.png",[526,1691,1692,1695],{},[1050,1693,1694],{},"SessionId"," er derimot en god kobling mellom de to, selv om det er en langlevende ID som kan inneholde flere slike hendelseskombinasjoner, også legitime.",[526,1697,1698],{},"Med tilleggskunnskap om begrensningene i auth code flow, samt bruker- og applikasjons-ID som ytterligere koblinger, kan du bruke tid som en viktig deteksjonsfaktor:",[567,1700,1701,1704,1707,1710,1713,1716],{},[570,1702,1703],{},"Begge hendelsene deler samme SessionId",[570,1705,1706],{},"Begge hendelsene deler samme ApplicationId",[570,1708,1709],{},"Begge hendelsene deler samme UserId",[570,1711,1712],{},"Den andre hendelsen må komme etter den første",[570,1714,1715],{},"Den andre hendelsen må skje innenfor et tidsvindu på omtrent 10 minutter etter den første. Du bør ikke bruke nøyaktig 10 minutter, siden Microsoft skriver «[...] they expire after about 10 minutes»",[570,1717,1718],{},"Du bør kun ta hensyn til den aller neste hendelsen nummer to, ikke etterfølgende hendelser",[1152,1720,1721],{},[526,1722,1723,1726,1728],{},[636,1724,1725],{},"Fun fact",[873,1727],{},"\nResourceIdentity er ikke en god kobling, ettersom angriperen kan endre ressursen siden den ikke er bundet til auth code. Den målrettede applikasjons-ID-en kan ikke endres.",[559,1730,1732],{"id":1731},"reduser-støyen","Reduser støyen",[526,1734,1735],{},"Denne kunnskapen ga oss allerede en god fungerende deteksjon, men det var også godartede positive treff i miksen. Moderne utviklere bruker skyressurser som ser ut som lokale instanser, men som gir uregelmessige innloggingsmønstre i loggene.",[526,1737,1738],{},"Den avgjørende forskjellen er tidskomponenten. Mens angrepet krever brukerinteraksjon for å kopiere og lime inn eller dra og slippe URI-en, er GitHub Codespace-bruksscenarioet vi identifiserte som kilde til de godartede positive varslene, helt automatisert og innløser auth code i løpet av få sekunder.",[526,1740,1741],{},"Å filtrere bort alt som gjennomfører denne autentiseringsdansen i løpet av noen få sekunder, kan derfor med stor sannsynlighet fjernes som godartet.",[526,1743,1744],{},"En annen støykilde kan være skiftende egress-punkter for internettrafikken din, spesielt i SD-WAN-, ZTNA- eller Secure Web Gateway-scenarier.",[559,1746,1748],{"id":1747},"berørte-first-party-applikasjoner","Berørte first-party-applikasjoner",[526,1750,1751],{},"Selv om den opprinnelige rapporten viser «Microsoft Azure CLI» som den misbrukte applikasjonen, finnes det en rekke ulike Microsoft first-party-apper med pre-consent i hver tenant som tilbyr localhost som redirect. Og det er ikke bare disse som er mål. Angriperen kan også misbruke reply-, test- og dev-URL-er som ikke er offentlig oppløsbare.",[526,1753,1754],{},"Her er en liste over de mest bemerkelsesverdige applikasjonene som også har høye pre-consented tillatelser til ressurser.",[567,1756,1757,1760,1763,1766,1769],{},[570,1758,1759],{},"Microsoft Azure CLI (04b07795-8ddb-461a-bbee-02f9e1bf7b46)",[570,1761,1762],{},"Microsoft Azure PowerShell (1950a258-227b-4e31-a9cf-717495945fc2)",[570,1764,1765],{},"Visual Studio (04f0c124-f2bc-4f59-8241-bf6df9866bbd)",[570,1767,1768],{},"Visual Studio Code (aebc6443-996d-45c2-90f0-388ff96faa56)",[570,1770,1771],{},"MS Teams PowerShell Cmdlets (12128f48-ec9e-42f0-b203-ea49fb6af367)",[526,1773,1774,1775,1780],{},"En fullstendig liste over disse appene er nå inkludert i ",[574,1776,1779],{"href":1777,"rel":1778},"https://entrascopes.com/?authcodeFix=true",[578],"EntraScopes.com"," av kollegaen vår Fabian Bader.",[559,1782,1784],{"id":1783},"tiltak-og-beskyttelse","Tiltak og beskyttelse",[674,1786,1788],{"id":1787},"begrens-angrepsflaten-og-målgruppen","Begrens angrepsflaten og målgruppen",[868,1790,1793,1796,1797,1799,1802,1803,1805,1808],{"className":1791},[1792],"option-block",[636,1794,1795],{},"Innføringsinnsats:"," Lav til høy (avhenger av innsatsen for å identifisere legitime brukere)",[873,1798],{},[636,1800,1801],{},"Tiltak:"," Middels (reduserer den potensielle målgruppen for angrepet)",[873,1804],{},[636,1806,1807],{},"Omfang:"," begrenset\n",[674,1810,1812],{"id":1811},"alternativ-1-krev-user-assignment","Alternativ 1: Krev User Assignment",[1814,1815,1817],"h4",{"id":1816},"forutsetninger","Forutsetninger:",[567,1819,1820,1823,1826],{},[570,1821,1822],{},"Legg til service principal for berørte first-party-apper ved hjelp av Microsoft Graph API eller PowerShell",[570,1824,1825],{},"Aktiver user assignment-kravet på service principal-objektet via Microsoft Graph API eller PowerShell",[570,1827,1828],{},"Etabler en prosess for å tildele brukere ved forespørsel, via Access Packages, PIM-for-Groups (for just-in-time-tilgang), eller en kombinasjon av begge.",[685,1830,1831],{},"\n.code-block {\n  background-color: #f6f8fa;\n  padding: 0 16px 16px 16px;\n  border-radius: 6px;\n  font-family: Menlo, Consolas, Monaco, \"Courier New\", monospace;\n  font-size: 14px;\n  line-height: 1.5;\n  overflow-x: auto;\n  white-space: pre;\n  border: 1px solid #d0d7de;\n}\n",[1833,1834,1837],"pre",{"className":1835},[1836],"code-block",[1050,1838,1839],{},"\n// Example for Microsoft Graph PowerShell\nConnect-MgGraph -Identity\n$AppId = \"04b07795-8ddb-461a-bbee-02f9e1bf7b46\" // Microsoft Azure CLI\n$sp = Get-MgServicePrincipal -Filter \"appId eq '$AppId'\"\nUpdate-MgServicePrincipal -ServicePrincipalId $sp.Id -AppRoleAssignmentRequired:$false\n",[1814,1841,1843],{"id":1842},"fordel","Fordel:",[567,1845,1846,1849,1852,1855],{},[570,1847,1848],{},"Muliggjør styring av brukertildelinger gjennom Access Packages eller manuelt gruppemedlemskap for å begrense eksponeringen mot denne angrepsteknikken.",[570,1850,1851],{},"Mulighet til å tilby just-in-time-tilgang kombinert med tildeling av eligible gruppemedlemskap, som gir midlertidig tilgang til CLI-verktøy og dermed reduserer angrepsflaten ytterligere.",[570,1853,1854],{},"Anvendes før Conditional Access-policyer evalueres.",[570,1856,1857],{},"Begrenser angrepsflaten også i andre scenarier.",[1814,1859,1861],{"id":1860},"ulempe","Ulempe:",[567,1863,1864,1867,1870],{},[570,1865,1866],{},"Kan kun avgrenses til spesifikke brukere og kan ikke kombineres med andre krav som bruk av bestemte enheter",[570,1868,1869],{},"Alle legitime CLI-brukere må identifiseres",[570,1871,1872],{},"Sideeffekter og organisatorisk påvirkning må vurderes nøye ved å gjennomgå tidligere sign-ins.",[674,1874,1876],{"id":1875},"alternativ-2-blokker-tilgang-ved-hjelp-av-conditional-access-policyer","Alternativ 2: Blokker tilgang ved hjelp av Conditional Access-policyer",[1814,1878,1817],{"id":1879},"forutsetninger-1",[567,1881,1882,1885],{},[570,1883,1884],{},"Opprett en Conditional Access-policy som blokkerer tilgang til CLI-verktøy, med unntak for legitime brukere, ved å målrette «Microsoft Graph Command Line Tools» og «Windows Azure Service Management API»",[570,1886,1887],{},"Administrer unntak via gruppemedlemskap, enten manuelt eller gjennom entitlement management (for eksempel Access Packages).",[1814,1889,1843],{"id":1890},"fordel-1",[567,1892,1893,1896],{},[570,1894,1895],{},"Forhindrer tokenutstedelse for ikke-legitime eller ikke-privilegerte brukere.",[570,1897,1898],{},"Muliggjør granulær avgrensning basert på tilleggsbetingelser som enhet eller nettverk.",[1814,1900,1861],{"id":1901},"ulempe-1",[567,1903,1904,1907],{},[570,1905,1906],{},"Alle legitime CLI-brukere må identifiseres og ekskluderes.",[570,1908,1909],{},"Sideeffekter og organisatorisk påvirkning må vurderes nøye ved å gjennomgå tidligere sign-ins og evaluere policyen i report-only-modus.",[674,1911,1913],{"id":1912},"blokker-tokenutstedelse-via-authorization-code-flow","Blokker tokenutstedelse via authorization code flow",[685,1915,1916],{},"\n.option-block {\n  background-color: #f6f8fa;\n  padding: 16px;\n  margin-bottom:2rem;\n  border-radius: 6px;\n  overflow-x: auto;\n  border: 1px solid #d0d7de;\n}\n",[868,1918,1920,1923,1924,1926,1928,1929,1931,1928,1933,1935,1937],{"className":1919},[1792],[636,1921,1922],{},"Alternativ:"," Krev Token Protection",[873,1925],{},[636,1927,1795],{}," Høy",[873,1930],{},[636,1932,1801],{},[873,1934],{},[636,1936,1807],{}," Svært begrenset\n",[1814,1939,1817],{"id":1940},"forutsetninger-2",[567,1942,1943,1946,1949,1968],{},[570,1944,1945],{},"Microsoft Entra ID P1-lisenser",[570,1947,1948],{},"Entra ID Registered Devices, Hybrid- eller Entra ID-joined-enheter på Windows-plattformen",[570,1950,1951,1952,936,1957,1660,1962,1967],{},"Aktiver Web Account Manager (WAM) i ",[574,1953,1956],{"href":1954,"rel":1955},"https://learn.microsoft.com/en-us/cli/azure/authenticate-azure-cli-interactively?view=azure-cli-latest#sign-in-with-web-account-manager-wam-on-windows",[578],"Azure CLI",[574,1958,1961],{"href":1959,"rel":1960},"https://learn.microsoft.com/en-us/powershell/azure/configure-global-settings?view=azps-15.1.0#web-account-manager-wam",[578],"Azure PowerShell",[574,1963,1966],{"href":1964,"rel":1965},"https://learn.microsoft.com/en-us/powershell/module/microsoft.graph.authentication/set-mggraphoption?view=graph-powershell-1.0#set-web-account-manager-support",[578],"Microsoft Graph PowerShell"," (standard i nyeste versjoner)",[570,1969,1970,1971],{},"Konfigurer Conditional Access som retter seg mot:\n",[567,1972,1973,1987,1995],{},[570,1974,1975,1976],{},"Cloud App targeting mot følgende apper:\n",[567,1977,1978,1981,1984],{},[570,1979,1980],{},"Office 365 Exchange Online",[570,1982,1983],{},"Office 365 SharePoint Online",[570,1985,1986],{},"Microsoft Teams Services",[570,1988,1989,1990,1994],{},"Client apps under ",[1991,1992,1993],"em",{},"Mobile apps and desktop clients"," for å kreve Token Protection.",[570,1996,1997,1998,2001,2002,2005],{},"Velg ",[1991,1999,2000],{},"Windows"," som ",[1991,2003,2004],{},"device platform"," for målrettingen av policyen",[1814,2007,1843],{"id":2008},"fordel-2",[526,2010,2011],{},"Token protection i Microsoft Entra krever proof-of-possession (PoP), som kun kan håndheves når klienten kommuniserer direkte med en tiltrodd token broker som Web Account Manager (WAM) på Windows. Fordi nettlesere ikke kan etablere denne sikre kanalen, blir authorization code flow som initieres i en nettleser blokkert under token protection-policyer.",[526,2013,2014],{},"Når policyen håndhever token protection som krever broker-styrt PoP, kan ikke authorization code som returneres til en nettleser, innløses, ettersom nettleseren ikke kan produsere den nødvendige broker-signerte bekreftelsen under vekslingen fra code til token.",[526,2016,2017],{},"I dette tilfellet vil angrep med AuthCodeFix være fullstendig avverget, så lenge applikasjonen kan beskyttes av Token Protection.",[526,2019,2020],{},"Som vist i skjermbildet under, hindrer Token Protection innløsingen av authorization code flow som initieres av offeret gjennom en phishing-handling.",[526,2022,2023],{},[642,2024],{"alt":2025,"src":2026},"Token Protection successfully mitigates the redemption of the authorization code flow","https://res.cloudinary.com/c4a8/image/upload/blog/pics/consentfix-img-07.png",[1814,2028,1861],{"id":2029},"ulempe-2",[567,2031,2032,2062,2065,2068],{},[570,2033,2034,2035],{},"Kun følgende ressurser er offisielt støttet:\n",[567,2036,2037,2039,2041],{},[570,2038,1980],{},[570,2040,1983],{},[570,2042,1986,2043,2045,2047,2048,1660,2051,2055,2056,2061],{},[873,2044],{},[873,2046],{},"\nMicrosoft Graph API er indirekte dekket av de nevnte ressursene, og Microsoft Graph PowerShell er listet som en støttet klient. Vi kunne i testingen vår verifisere at angrepet blir avverget i dette scenariet. «Windows Azure Service Management API» er ikke oppført som støttet ressurs. Begge CLI-klientene (",[574,2049,1956],{"href":1954,"rel":2050},[578],[574,2052,1961],{"href":2053,"rel":2054},"https://learn.microsoft.com/en-us/powershell/azure/authenticate-interactive?view=azps-15.1.0#benefits-of-wam",[578],") støtter WAM, som er et klientside-krav for å bruke Token Protection. Microsoft har annonsert ",[574,2057,2060],{"href":2058,"rel":2059},"https://techcommunity.microsoft.com/blog/microsoft-entra-blog/how-to-break-the-token-theft-cyber-attack-chain/4062700",[578],"i et blogginnlegg"," at token protection-funksjonaliteten skal utvides til Azure management-scenarier.",[570,2063,2064],{},"Enkelte bugs i Microsoft Graph PowerShell tvinger deg til midlertidig å deaktivere WAM-integrasjonen",[570,2066,2067],{},"Sideeffekter og organisatorisk påvirkning må vurderes nøye ved å gjennomgå tidligere sign-ins og evaluere policyen i report-only-modus. Cloud app targeting vil også påvirke produktivitetstilgang til Microsoft 365.",[570,2069,2070],{},"Begrenset omfang på grunn av tilgjengelighet på støttede plattformer og Entra ID-integrerte enheter.",[674,2072,2074],{"id":2073},"blokker-videre-tokenutstedelse-via-compliant-network-sjekk-eller-trusted-network","Blokker videre tokenutstedelse via compliant network-sjekk eller trusted network",[868,2076,2078,2080,2081,2083,2080,2085,2087,2089],{"className":2077},[1792],[636,2079,1795],{}," Middels",[873,2082],{},[636,2084,1801],{},[873,2086],{},[636,2088,1807],{}," Bredt\n",[674,2091,2093],{"id":2092},"alternativ-blokker-tilgang-utenfor-compliant-network-med-global-secure-access","Alternativ: Blokker tilgang utenfor Compliant network med Global Secure Access",[1814,2095,2097],{"id":2096},"forutsetning","Forutsetning:",[567,2099,2100,2103,2106,2109],{},[570,2101,2102],{},"Entra ID P1-lisens",[570,2104,2105],{},"Entra ID Registered Devices, Hybrid- eller Entra ID-joined-enheter på Windows-, macOS-, Android- og iOS-plattformer",[570,2107,2108],{},"Global Secure Access-klient på alle berørte klienter og aktivert Entra Internet Access for M365 Traffic Profile",[570,2110,2111],{},"Conditional Access-policy for å håndheve network compliant-sjekken skal gjelde alle cloud apps",[1814,2113,1843],{"id":2114},"fordel-3",[526,2116,2117],{},"Blokker ytterligere tokenutstedelse ved å håndheve en trusted network-sjekk. Dette tiltaket sørger for at angripere ikke kan hente nye tokens ved hjelp av refresh token fra authorization code flow. Det forhindrer imidlertid ikke den opprinnelige innløsingen av authorization code eller utstedelsen av det første access token, som forblir gyldig utenfor compliant network fordi det opprinnelig ble bedt om av offeret.",[1152,2119,2120],{},[526,2121,2122],{},"Å håndheve GSA med Compliant Network-betingelsen blokkerer også andre Token Replay-scenarier og gir ekstra logger som kan være svært nyttige for deteksjon og hunting.",[1814,2124,1861],{"id":2125},"ulempe-3",[567,2127,2128,2131,2134],{},[570,2129,2130],{},"Gjelder kun for brukere og enheter som har Global Secure Access-klienten utplassert",[570,2132,2133],{},"Begrenset omfang på grunn av tilgjengelighet på Entra ID-integrerte enheter",[570,2135,2136],{},"Håndheving av Compliant Networks via CA vil kreve enkelte unntak, som Intune, for å unngå høna-og-egget-problemer. Grundig testing er nødvendig før utrulling",[559,2138,2140],{"id":2139},"hunting-spørringer","Hunting-spørringer",[526,2142,2143,2144,2147],{},"Når alle forutsetningene for token theft-tiltak er på plass, som utplassering av GSA-klienten (inkludert innhenting av ",[1050,2145,2146],{},"NetworkAccessTraffic","-logger) og bruk av WAM-autentisering, får vi flere muligheter for threat hunting og verifisering.",[674,2149,2151],{"id":2150},"bruk-av-gsa-logger-og-wam-autentisering-til-hunting-eller-verifisering-av-deteksjonstillit","Bruk av GSA-logger og WAM-autentisering til hunting eller verifisering av deteksjonstillit",[526,2153,2154,2155,2157],{},"Denne hunting-spørringen benytter ",[1050,2156,2146],{},"-logger fra Global Secure Access (GSA), som inkluderer den initierende prosessen for kommunikasjon med Microsoft Entra-tokenendepunktet. Dette gjør det mulig å avgjøre om en tokenforespørsel kommer direkte fra en nettleser, og om det er gjort ytterligere tokenforespørsler utenfor GSA-nettverket.",[1152,2159,2160],{},[526,2161,2162],{},"Denne spørringen fungerer og gir pålitelige resultater kun når forutsetningene er oppfylt; ellers gir den høy falsk-positiv-rate.",[526,2164,2165,2168,2169,2172,2173,2176],{},[636,2166,2167],{},"Hvorfor dette er viktig:"," Ved innlogging via CLI eller PowerShell-moduler med Web Account Manager (WAM) på Windows-enheter, involverer flyten ingen nettleserbasert authorization code. Denne sign-in-oppførselen er standard i den nyeste versjonen. Hvis den initierende prosessen er en nettleser-executable (for eksempel ",[1050,2170,2171],{},"msedge.exe","), er dette en sterk indikator på mistenkelig aktivitet. På macOS initieres prosessen av Company Portal-appen (",[1050,2174,2175],{},"com.microsoft.CompanyPortalMac.ssoextension",") når Platform SSO brukes.",[526,2178,2179,2182],{},[636,2180,2181],{},"Token Binding og PoP:"," WAM-autentisering binder normalt tokens til enheten ved å håndheve Proof-of-Possession (PoP). Angripere kan ikke utstede ytterligere bundne tokens uten PoP, så et ubundet refresh token er en annen sterk indikator.",[526,2184,2185,2188],{},[636,2186,2187],{},"Begrensninger:"," Alle de nevnte signalene er kun tilgjengelige når enheten som logger på er registrert hos eller joined til Microsoft Entra ID.",[526,2190,2191,2194],{},[636,2192,2193],{},"Logikk for konfidensskår:"," Spørringen kombinerer flere signaler for å beregne en konfidensskår:",[567,2196,2197,2200,2203],{},[570,2198,2199],{},"Tilstedeværelse av en nettleserprosess som initierer tokenforespørsler.",[570,2201,2202],{},"Deteksjon av og nedgradering til ubundne tokens.",[570,2204,2205],{},"Endringer i nettverksleverandør (inkludert Compliant til non-compliant) mellom sign-ins.",[526,2207,2208],{},"Disse signalene kan brukes i spørringen til å jakte på aktivitet, eller til å utlede en konfidensskår i en hendelse basert på tidligere deteksjon.",[526,2210,2211],{},[642,2212],{"alt":2213,"src":2214},"Signals for the hunting query","https://res.cloudinary.com/c4a8/image/upload/blog/pics/consentfix-img-08.png",[526,2216,2217],{},"Følgende skår vises avhengig av betingelsene:",[526,2219,2220,2223,2224,2226,2227,2229,2231,2234,2235,2237,2239,2242],{},[636,2221,2222],{},"En svært høy konfidensskår"," vises når ",[1050,2225,2146],{},"-logger indikerer en kjent nettleserprosess i stedet for initiering av en tokenforespørsel, og en nedgradering av et ubundet token er oppdaget.",[873,2228],{},[873,2230],{},[636,2232,2233],{},"En høy konfidensskår"," vises når sign-in skjer fra en annen Network Provider (ASN) og et non-compliant network som involverer ubundne tokens.",[873,2236],{},[873,2238],{},[636,2240,2241],{},"En middels konfidensskår"," vises når kun en endring i Network Provider og compliant network identifiseres, sammen med en endring i typen token som er brukt.",[526,2244,2245,2246,1180],{},"Du finner den siste versjonen av hunting-spørringen på ",[574,2247,2250],{"href":2248,"rel":2249},"https://github.com/Cloud-Architekt/AzureSentinel/blob/main/Hunting%20Queries/EID-Authentication/ConsentFix-HuntingConfidenceOnTokenAndNetworkSignals.kusto",[578],"GitHub",[674,2252,2254],{"id":2253},"jakt-etter-aktivitet-via-utstedte-tokens","Jakt etter aktivitet via utstedte tokens",[526,2256,2257,2258,2263,2264,2267,2268,2270,2271,2274],{},"Du bør vurdere å utvide undersøkelsen din utover sign-in-hendelser til også å omfatte aktivitet utført med tokens utstedt av angriperen. Kollegaen vår Thomas Naunheim har ",[574,2259,2262],{"href":2260,"rel":2261},"https://github.com/Cloud-Architekt/AzureSentinel/blob/main/Hunting%20Queries/EID-TokenHunting/MicrosoftCloudActivity.func",[578],"publisert en KQL-funksjon"," kalt ",[1050,2265,2266],{},"MicrosoftCloudActivity",", som kan bistå i denne utvidede hunting-prosessen. I tillegg kan berørt ",[1050,2269,1694],{}," korreleres med mistenkelige ",[1050,2272,2273],{},"UniqueId","-verdier identifisert under tidligere hunts for dypere analyse.",[526,2276,2277],{},[642,2278],{"alt":2279,"src":2280},"KQL function","https://res.cloudinary.com/c4a8/image/upload/blog/pics/consentfix-img-09.png",[526,2282,2283],{},"I dette eksempelet brukte angriperen refresh token som ble hentet under angrepet, til å utstede et access token for Microsoft Graph API. Dette tokenet ble deretter brukt til å opprettholde vedvarende tilgang og lateral movement ved å legge til en client secret på en applikasjon eid av offeret. Spørringen gir detaljer om Graph API-operasjonen, inkludert token protection-status og om operasjonen skjedde utenfor Global Secure Access-nettverket.",[526,2285,2286],{},[642,2287],{"alt":2288,"src":2289},"Graph API operation screenshot","https://res.cloudinary.com/c4a8/image/upload/blog/pics/consentfix-img-10.png",[559,2291,2293],{"id":2292},"videre-lesing","Videre lesing",[567,2295,2296,2303,2310,2317],{},[570,2297,2298],{},[574,2299,2302],{"href":2300,"rel":2301},"https://pushsecurity.com/blog/consentfix",[578],"ConsentFix: Analysing a browser-native ClickFix-style attack that hijacks OAuth consent grants - PushSecurity",[570,2304,2305],{},[574,2306,2309],{"href":2307,"rel":2308},"https://youtu.be/AAiiIY-Soak",[578],"Hacking Endpoint to Identity (Microsoft 365): \"ConsentFix\" - YouTube",[570,2311,2312],{},[574,2313,2316],{"href":2314,"rel":2315},"https://learn.microsoft.com/en-us/entra/identity-platform/v2-oauth2-auth-code-flow",[578],"Microsoft identity platform and OAuth 2.0 authorization code flow",[570,2318,2319],{},[574,2320,2323],{"href":2321,"rel":2322},"https://entrascopes.com/?appId=04b07795-8ddb-461a-bbee-02f9e1bf7b46",[578],"Microsoft Azure CLI on entrascpes.com",{"title":530,"searchDepth":531,"depth":531,"links":2325},[2326,2329,2330,2331,2339,2343],{"id":1652,"depth":531,"text":1653,"children":2327},[2328],{"id":1679,"depth":1206,"text":1680},{"id":1731,"depth":531,"text":1732},{"id":1747,"depth":531,"text":1748},{"id":1783,"depth":531,"text":1784,"children":2332},[2333,2334,2335,2336,2337,2338],{"id":1787,"depth":1206,"text":1788},{"id":1811,"depth":1206,"text":1812},{"id":1875,"depth":1206,"text":1876},{"id":1912,"depth":1206,"text":1913},{"id":2073,"depth":1206,"text":2074},{"id":2092,"depth":1206,"text":2093},{"id":2139,"depth":531,"text":2140,"children":2340},[2341,2342],{"id":2150,"depth":1206,"text":2151},{"id":2253,"depth":1206,"text":2254},{"id":2292,"depth":531,"text":2293},{"lang":1219,"seoTitle":2345,"titleClass":1221,"date":2346,"categories":2347,"blogtitlepic":2348,"socialimg":2349,"customExcerpt":2350,"keywords":2351,"scripts":2352,"asideNav":2353,"maxContent":325,"published":325},"ConsentFix: Hvordan et nytt OAuth-angrep omgår Microsoft Entra Conditional Access","2025-12-31",[235],"head-consentfix","/blog/heads/head-consentfix.jpg","Rett før årsslutt dukker ConsentFix opp: et smart OAuth-basert angrep som misbruker legitime autentiseringsflyter for å stjele autorisasjonskoden, og dermed i praksis overlate nøklene til Microsoft Entra til angriperen. Vi bryter ned hvorfor dette fungerer til tross for Conditional Access, hvilke signaler det etterlater seg i loggene, og hvordan defenders kan oppdage og stoppe det før reell skade oppstår.","ConsentFix angrep, OAuth authorization code tyveri, Microsoft Entra OAuth angrep, Azure CLI token misbruk, Entra ID Conditional Access bypass, authorization code phishing, token replay angrep Azure, Proof of Possession tokens, WAM authentication security, Azure sign-in log analyse, oppdag OAuth angrep Entra, Azure identity threat hunting, Global Secure Access token protection, Microsoft Entra security deteksjon",{"slick":325,"form":325},{"menuItems":2354},[2355,2357,2359,2361,2363,2365],{"href":2356,"text":1653},"#deteksjons-artefakter",{"href":2358,"text":1732},"#reduser-støyen",{"href":2360,"text":1748},"#berørte-first-party-applikasjoner",{"href":2362,"text":1784},"#tiltak-og-beskyttelse",{"href":2364,"text":2140},"#hunting-spørringer",{"href":2366,"text":2293},"#videre-lesing","/posts/2025-12-31-vulnerability-consentfix",{"title":1557,"description":1563},"posts/2025-12-31-vulnerability-consentfix",[2371,2372,281],"OAuth 2.0","Microsoft Entra ID","DHYE3AenJQBqstf4oXShyrYc2kfJN6JlX4fwy2FK8Ms",[],{"id":2376,"extension":2377,"meta":2378,"stem":8,"__hash__":2394},"authors_data/authors.json","json",{"Christopher Brumm":2379,"Fabian Bader":2385,"Thomas Naunheim":2390},{"display_name":555,"avatar":2380,"permalink":2381,"twitter":2382,"linkedin":2383,"imageOffsetTop":2384},"people/people-christopher-brumm.jpg","/authors/christopher-brumm","cbrhh","christopherbrumm","66%",{"display_name":554,"avatar":2386,"permalink":2387,"linkedin":2388,"twitter":2389},"people/people-fabian-bader.jpg","/authors/fabian-bader","fabianbader","fabian_bader",{"display_name":521,"avatar":2391,"permalink":2392,"linkedin":2393,"imageOffsetTop":2384},"people/people-thomas-naunheim.jpg","/authors/thomas-naunheim","thomasnaunheim","1csawlkJxRljy93GTOnXEkwLqAv9Lcj-apxRvoodAOY",1791383992221]