# SAML, në thellësi: nënshkrimi brenda letrës

Published: 2026-09-24

SAML ju kyç pothuajse në çdo aplikacion pune dhe nënshkrimi i tij jeton brenda XML-së që nënshkruan. Në thellësi: vallja e hyrjes midis aplikacionit, shfletuesit dhe ofruesit të identitetit, si duket një pohim, pse kanonizimi duhet të pajtohet për çdo bajt, dhe pse i njëjti klasë e gabimeve vazhdon të kthehet nga viti 2012 në 2025. Nxitur nga "SAML: Një fraktal i dizajnit të keq" (312 pikë në Hacker News) të Trail of Bits.

Canonical: https://thedailydiff.dev/sq/video/2026-09-24-saml-under-the-hood/

## Çfarë mbulon kjo video

- SAML: kyçja që nënshkruan vetveten nga brenda
- 2002: katër formate XML, një komitet, një industri e tërë
- Vallja e kyçjes: aplikacion → ofrues identiteti → kthim përmes shfletuesit tuaj
- Pohimi: nënshkrimi jeton brenda asaj që nënshkruan
- Kanonizimi: pajtohuni për çdo bajt, ose askush nuk kyçet

## Kapitujt

- 0:00 SAML: kyçja që nënshkruan vetveten nga brenda
- 0:34 2002: katër formate XML, një komitet, një industri e tërë
- 0:46 Vallja e kyçjes: aplikacion → ofrues identiteti → kthim përmes shfletuesit tuaj
- 0:59 Pohimi: nënshkrimi jeton brenda asaj që nënshkruan
- 1:10 Kanonizimi: pajtohuni për çdo bajt, ose askush nuk kyçet
- 1:32 2012: kontrolluesi dhe lexuesi shikojnë elemente të ndryshme
- 1:51 2018 dhe 2025: dy parsera, dy përgjigje të ndryshme
- 2:08 Pse vazhdon të prishet: një fraktal i dizajnit të keq
- 2:27 E hënë: OIDC së pari, një bibliotekë e mirëmbajtur, forma të rrepta
- 2:43 Vendimi, në thellësi: REVERT

## Transkript i përkthyer

Përkthyer nga tregimi origjinal në anglisht. Audio dhe titrat e disponueshme kontrollohen nga YouTube.

### SAML: kyçja që nënshkruan vetveten nga brenda

0:00 SAML është XML që ju kyç pothuajse në çdo aplikacion pune që keni, dhe nënshkrimi i tij jeton brenda dokumentit që nënshkruan, si një noter që vendos vulën e tij brenda zarfit që po vulos. Dhjetë vjet pasi një komitet e shkroi, studiuesit testuan katërmbëdhjetë korniza SAML. Njëmbëdhjetë ranë. Dhe këtë javë, një postim i Trail of Bits që e quante atë një fraktal të dizajnit të keq u shfaq në faqen kryesore të Hacker News. Në tre minuta: si funksionon vallja e kyçjes, ku fshihet nënshkrimi,

0:27 dhe pse rregullimi për të cilin të gjithë bien dakord është një protokoll tjetër. Ky është The Daily Diff, në thellësi.

### 2002: katër formate XML, një komitet, një industri e tërë

0:34 Dymijë e dy. Një komitet sigurie në Oasis bashkon katër formate XML të shitësve në një. Universitetet e adoptojnë së pari, pastaj Okta ndërton një kompani mbi të, më shpejt se çdo dokument i komitetit që u kthye në të ardhura. Ju hapni aplikacionin.

### Vallja e kyçjes: aplikacion → ofrues identiteti → kthim përmes shfletuesit tuaj

0:46 Nuk ka asnjë ide se kush jeni, kështu që e kthen shfletuesin tuaj te ofruesi i identitetit, të themi Okta e kompanisë suaj. Ju kyçeni aty. Okta i jep shfletuesit tuaj një dokument XML të nënshkruar që tregon kush jeni, dhe shfletuesi e poston atë përsëri.

### Pohimi: nënshkrimi jeton brenda asaj që nënshkruan

0:59 Ai dokument është pohimi. Ai emërton përdoruesin, dhe nënshkrimi qëndron brenda tij, duke treguar përsëri tek pohimi me ID-në e tij. Dhe e gjithë kjo kalon përmes shfletuesit tuaj, që do të thotë, përmes përdoruesit. Për ta kontrolluar, aplikacioni

### Kanonizimi: pajtohuni për çdo bajt, ose askush nuk kyçet

1:11 rindërton bajtat e saktë që u nënshkruan. Ai pret nënshkrimin, normalizon hapësirën e bardhë dhe rendin e atributit, dhe hashohet rezultati. Kjo është kanonizimi, dhe nëse dy palët nuk pajtohen për një bajt të vetëm, askush nuk kyçet. Një shenjë uebi JSON e bën ndryshe. Koka, ngarkesa dhe nënshkrimi qëndrojnë pranë njëri-tjetrit me pika në mes. Asgjë për t'u prerë së pari.

### 2012: kontrolluesi dhe lexuesi shikojnë elemente të ndryshme

1:32 Ja çarja. Kodi që kontrollon nënshkrimin dhe kodi që lexon emrin e përdoruesit janë shpesh dy pjesë të ndryshme. Në dymijë e dymbëdhjetë, një punim i quajtur On Breaking Saml tregoi se mund të lëvizje pohimin e nënshkruar aty ku lexuesi e injoron, dhe të vendosësh një të dytë aty ku ai shikon. Salesforce dhe Shibboleth ishin ndër njëmbëdhjetë që ranë pre e kësaj. Në dymijë e tetëmbëdhjetë, Duo tregoi se një koment brenda një emri përdoruesi mund të bënte që disa

### 2018 dhe 2025: dy parsera, dy përgjigje të ndryshme

1:55 biblioteka të lexonin vetëm gjysmën e emrit, ndërsa nënshkrimi ende kontrollohej. Në dymijë e njëzet e pesë, GitHub gjeti dy parsera XML brenda ruby Saml që nuk pajtoheshin për të njëjtin dokument. I njëjti gabim, dekadë e re. Trail of Bits e quan atë një fraktal, sepse çdo nivel në të cilin zmadhoni ka të njëjtin

### Pse vazhdon të prishet: një fraktal i dizajnit të keq

2:12 defekt. Është ndërtuar mbi XML, nënshkrimi është i mbështjellë, dhe kyçjet reale përdorin ndoshta një të dhjetën e specifikimit. Dhe përgjigja kryesore në Hacker News vjen nga blerësi. Nëse nuk keni mbështetje SAML, mund të gjej një produkt që e ka. Të dyja janë të vërteta, gjë që është problemi. Pra, e hënë. SHIP OpenID Connect së pari, Fly dhe Tailscale u shesin

### E hënë: OIDC së pari, një bibliotekë e mirëmbajtur, forma të rrepta

2:31 ndërmarrjeve pa SAML fare. Nëse një klient e detyron, përdorni një bibliotekë të mirëmbajtur, mbajeni të përditësuar, dhe refuzoni mesazhet që nuk duken si ato që dërgojnë Okta ose Google. Mos shkruani kurrë kontrollin tuaj të nënshkrimit.

### Vendimi, në thellësi: REVERT

2:43 Vendimi, në thellësi. REVERT. Pothuajse njëzet e pesë vjet, një klasë gabimesh që nuk vdes kurrë, dhe zgjidhja për të cilën të gjithë bien dakord është një protokoll tjetër. Të shtunën e kaluar çmontova passkeys, kështu që më thoni çfarë të hap tjetër në komente. Dhe ky është ndryshimi për sot. Unë jam Niko nga Axrisi. Bashkohuni me përgjegjësi.

## Burimet

- [Trail of Bits, "SAML: A fractal of bad design" (Matt Schwager, Sep 21, 2026)](https://blog.trailofbits.com/2026/09/21/saml-a-fractal-of-bad-design/) — blog.trailofbits.com
- [Hacker News thread](https://news.ycombinator.com/item?id=49806335) — news.ycombinator.com
- [Somorovsky et al., "On Breaking SAML: Be Whoever You Want to Be", USENIX Security 2012](https://www.usenix.org/conference/usenixsecurity12/technical-sessions/presentation/somorovsky) — www.usenix.org
- [Duo Labs, SAML vulnerabilities affecting multiple implementations (2018): https://duo.com/blog/duo-finds-saml-vulnerabilities-affecting-multiple-implementations · CERT VU#475445](https://www.kb.cert.org/vuls/id/475445) — www.kb.cert.org
- [GitHub Security Lab, "Sign in as anyone: Bypassing SAML SSO authentication with parser differentials" (Mar 12, 2025)](https://github.blog/security/sign-in-as-anyone-bypassing-saml-sso-authentication-with-parser-differentials/) — github.blog
