# SAML, അണിയറയിൽ: കത്തിന്റെ ഉള്ളിലെ ഒപ്പ്

Published: 2026-09-24

SAML മിക്കവാറും എല്ലാ വർക്ക് ആപ്പുകളിലേക്കും നിങ്ങളെ ലോഗിൻ ചെയ്യക്കുന്നു, അതിൻ്റെ ഒപ്പ് അത് ഒപ്പിടുന്ന XML-ൽ ഉൾക്കൊള്ളുന്നു. അണിയറയിൽ: ആപ്പ്, ബ്രൗസർ, ഐഡന്റിറ്റി പ്രൊവൈഡർ എന്നിവ തമ്മിലുള്ള ലോഗിൻ ഡാൻസ്, ഒരു അസേർഷൻ എങ്ങനെയിരിക്കുന്നു, ഓരോ ബൈറ്റിലും കാനോനികലൈസേഷൻ എന്തിനാണ് യോജിക്കേണ്ടത്, 2012 മുതൽ 2025 വരെ ഒരേ ബഗ് ക്ലാസ്സ് എന്തുകൊണ്ട് തിരിച്ച് വരുന്നു. ട്രയൽ ഓഫ് ബിറ്റ്സിന്റെ "SAML: മോശം രൂപകൽപ്പനയുടെ ഒരു ഫ്രാക്റ്റൽ" (ഹാക്കർ ന്യൂസിൽ 312 പോയിന്റ്) എന്നതിനെത്തുടർന്ന്.

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

## ഈ വീഡിയോയിൽ ഉൾപ്പെടുന്ന കാര്യങ്ങൾ

- SAML: ഉള്ളിൽ നിന്ന് സ്വയം ഒപ്പിടുന്ന ലോഗിൻ
- 2002: നാല് XML ഫോർമാറ്റുകൾ, ഒരു കമ്മിറ്റി, ഒരു വ്യവസായം മുഴുവൻ
- ലോഗിൻ ഡാൻസ്: ആപ്പ് → ഐഡന്റിറ്റി പ്രൊവൈഡർ → നിങ്ങളുടെ ബ്രൗസറിലൂടെ തിരികെ
- അസേർഷൻ: ഒപ്പ് അത് ഒപ്പിടുന്നതിന് ഉള്ളിൽ നിലകൊള്ളുന്നു
- കാനോനികലൈസേഷൻ: ഓരോ ബൈറ്റിലും യോജിക്കുക, അല്ലെങ്കിൽ ആരും ലോഗിൻ ചെയ്യില്ല

## അധ്യായങ്ങൾ

- 0:00 SAML: ഉള്ളിൽ നിന്ന് സ്വയം ഒപ്പിടുന്ന ലോഗിൻ
- 0:34 2002: നാല് XML ഫോർമാറ്റുകൾ, ഒരു കമ്മിറ്റി, ഒരു വ്യവസായം മുഴുവൻ
- 0:46 ലോഗിൻ ഡാൻസ്: ആപ്പ് → ഐഡന്റിറ്റി പ്രൊവൈഡർ → നിങ്ങളുടെ ബ്രൗസറിലൂടെ തിരികെ
- 0:59 അസേർഷൻ: ഒപ്പ് അത് ഒപ്പിടുന്നതിന് ഉള്ളിൽ നിലകൊള്ളുന്നു
- 1:10 കാനോനികലൈസേഷൻ: ഓരോ ബൈറ്റിലും യോജിക്കുക, അല്ലെങ്കിൽ ആരും ലോഗിൻ ചെയ്യില്ല
- 1:32 2012: ചെക്കറും റീഡറും വ്യത്യസ്ത ഘടകങ്ങളെ നോക്കുന്നു
- 1:51 2018 ഉം 2025 ഉം: രണ്ട് പാർസറുകൾ, രണ്ട് വ്യത്യസ്ത ഉത്തരങ്ങൾ
- 2:08 എന്തുകൊണ്ടാണ് ഇത് തകരുന്നത്: മോശം രൂപകൽപ്പനയുടെ ഒരു ഫ്രാക്റ്റൽ
- 2:27 തിങ്കളാഴ്ച: ആദ്യം OIDC, ഒരു പരിപാലിക്കുന്ന ലൈബ്രറി, കർശനമായ രൂപങ്ങൾ
- 2:43 വിധി, അണിയറയിൽ: REVERT

## വിവർത്തനം ചെയ്ത ട്രാൻസ്ക്രിപ്റ്റ്

യഥാർത്ഥ ഇംഗ്ലീഷ് ആഖ്യാനത്തിൽ നിന്ന് വിവർത്തനം ചെയ്തത്. ലഭ്യമായ ഓഡിയോയും അടിക്കുറിപ്പുകളും YouTube നിയന്ത്രിക്കുന്നു.

### SAML: ഉള്ളിൽ നിന്ന് സ്വയം ഒപ്പിടുന്ന ലോഗിൻ

0:00 നിങ്ങളുടെ ഉടമസ്ഥതയിലുള്ള മിക്കവാറും എല്ലാ വർക്ക് ആപ്പുകളിലേക്കും നിങ്ങളെ ലോഗിൻ ചെയ്യുന്ന XML ആണ് SAML, അതിൻ്റെ ഒപ്പ് അത് ഒപ്പിടുന്ന ഡോക്യുമെൻ്റിനുള്ളിൽ ഉൾക്കൊള്ളുന്നു, ഒരു നോട്ട്ബുക്ക് സീൽ ചെയ്യുന്ന കവറിനുള്ളിൽ സ്റ്റാമ്പ് ചെയ്യുന്നതുപോലെ. ഒരു കമ്മിറ്റി ഇത് എഴുതി പത്ത് വർഷത്തിന് ശേഷം, ഗവേഷകർ പതിനാല് SAML ഫ്രെയിംവർക്കുകൾ പരീക്ഷിച്ചു. പതിനൊന്നെണ്ണം തകർന്നു. ഈ ആഴ്ച ട്രയൽ ഓഫ് ബിറ്റ്സ് ഇതിനെ മോശം രൂപകൽപ്പനയുടെ ഒരു ഫ്രാക്റ്റൽ എന്ന് വിളിച്ച പോസ്റ്റ് ഹാക്കർ ന്യൂസിന്റെ മുൻപേജിൽ എത്തി. മൂന്ന് മിനിറ്റിനുള്ളിൽ: ലോഗിൻ ഡാൻസ് എങ്ങനെ പ്രവർത്തിക്കുന്നു, ഒപ്പ് എവിടെയാണ് ഒളിച്ചിരിക്കുന്നത്,

0:27 എല്ലാവരും അംഗീകരിക്കുന്ന പരിഹാരം ഒരു വ്യത്യസ്ത പ്രോട്ടോക്കോൾ ആയതുകൊണ്ട്. ഇത് The Daily Diff, അണിയറയിൽ.

### 2002: നാല് XML ഫോർമാറ്റുകൾ, ഒരു കമ്മിറ്റി, ഒരു വ്യവസായം മുഴുവൻ

0:34 രണ്ടായിരത്തി രണ്ട്. ഒയാസിസിലെ ഒരു സുരക്ഷാ കമ്മിറ്റി നാല് വെണ്ടർ XML ഫോർമാറ്റുകൾ ഒന്നാക്കി മാറ്റുന്നു. സർവകലാശാലകൾ ആദ്യം ഇത് സ്വീകരിക്കുന്നു, തുടർന്ന് ഒക്ടാ ഇത് ഉപയോഗിച്ച് ഒരു കമ്പനി നിർമ്മിക്കുന്നു, ഒരു കമ്മിറ്റി ഡോക്യുമെൻ്റ് ഇത്രയും വേഗത്തിൽ വരുമാനമായി മാറിയത് ഇതാദ്യമായിരിക്കും. നിങ്ങൾ ആപ്പ് തുറക്കുന്നു.

### ലോഗിൻ ഡാൻസ്: ആപ്പ് → ഐഡന്റിറ്റി പ്രൊവൈഡർ → നിങ്ങളുടെ ബ്രൗസറിലൂടെ തിരികെ

0:46 ആപ്പിന് നിങ്ങളാരാണെന്ന് അറിയില്ല, അതിനാൽ അത് നിങ്ങളുടെ ബ്രൗസറിനെ ഐഡന്റിറ്റി പ്രൊവൈഡറിലേക്ക് തിരിക്കുന്നു, നിങ്ങളുടെ കമ്പനിയുടെ ഒക്ടാ എന്ന് കരുതുക. നിങ്ങൾ അവിടെ ലോഗിൻ ചെയ്യുന്നു. നിങ്ങളാരാണെന്ന് പറയുന്ന ഒരു ഒപ്പിട്ട XML ഡോക്യുമെൻ്റ് ഒക്ടാ നിങ്ങളുടെ ബ്രൗസറിന് നൽകുന്നു, ബ്രൗസർ അത് തിരികെ പോസ്റ്റ് ചെയ്യുന്നു.

### അസേർഷൻ: ഒപ്പ് അത് ഒപ്പിടുന്നതിന് ഉള്ളിൽ നിലകൊള്ളുന്നു

0:59 ആ ഡോക്യുമെൻ്റ് ആണ് അസേർഷൻ. അത് ഉപയോക്താവിൻ്റെ പേര് പറയുന്നു, ഒപ്പ് അതിനുള്ളിൽ ഇരിക്കുന്നു, അതിൻ്റെ ID ഉപയോഗിച്ച് അസേർഷനിലേക്ക് തിരികെ ചൂണ്ടിക്കാണിക്കുന്നു. മുഴുവൻ കാര്യവും നിങ്ങളുടെ ബ്രൗസറിലൂടെയാണ് പോകുന്നത്, അതായത്, ഉപയോക്താവിലൂടെ. പരിശോധിക്കാൻ, ആപ്പ്

### കാനോനികലൈസേഷൻ: ഓരോ ബൈറ്റിലും യോജിക്കുക, അല്ലെങ്കിൽ ആരും ലോഗിൻ ചെയ്യില്ല

1:11 ഒപ്പിട്ട കൃത്യമായ ബൈറ്റുകൾ പുനർനിർമ്മിക്കുന്നു. അത് ഒപ്പ് വെട്ടിമാറ്റുന്നു, വൈറ്റ്സ്പേസും ആട്രിബ്യൂട്ട് ക്രമവും സാധാരണമാക്കുന്നു, ഫലം ഹാഷ് ചെയ്യുന്നു. അതാണ് കാനോനികലൈസേഷൻ, രണ്ട് ഭാഗങ്ങളും ഒരു ബൈറ്റിൽ തെറ്റിയാൽ, ആരും ലോഗിൻ ചെയ്യില്ല. ഒരു JSON വെബ് ടോക്കൺ ഇത് വ്യത്യസ്തമായി ചെയ്യുന്നു. ഹെഡർ, പേലോഡ്, ഒപ്പ് എന്നിവ ഡോട്ട്സ് ഉപയോഗിച്ച് അടുത്തടുത്ത് ഇരിക്കുന്നു. ആദ്യം വെട്ടിമാറ്റാൻ ഒന്നുമില്ല.

### 2012: ചെക്കറും റീഡറും വ്യത്യസ്ത ഘടകങ്ങളെ നോക്കുന്നു

1:32 ഇതാണ് വിള്ളൽ. ഒപ്പ് പരിശോധിക്കുന്ന കോഡും ഉപയോക്തൃനാമം വായിക്കുന്ന കോഡും മിക്കപ്പോഴും രണ്ട് വ്യത്യസ്ത ഭാഗങ്ങളാണ്. രണ്ടായിരത്തി പന്ത്രണ്ടിൽ, On Breaking SAML എന്ന പേപ്പർ കാണിച്ചത് ഒപ്പിട്ട അസേർഷൻ റീഡർ അവഗണിക്കുന്നിടത്തേക്ക് മാറ്റാനും, അത് നോക്കുന്നിടത്ത് രണ്ടാമതൊന്ന് വെക്കാനും കഴിയുമെന്നാണ്. സെയിൽസ്ഫോഴ്സും ഷിബ്ബോലെത്തും ഇതിൽ വീണ പതിനൊന്നിൽ ഉൾപ്പെടുന്നു. സെയിൽസ്ഫോഴ്സും ഷിബ്ബോലെത്തും ഇതിൽ വീണ പതിനൊന്നിൽ ഉൾപ്പെടുന്നു. രണ്ടായിരത്തി പതിനെട്ടിൽ, ഡ്യുവോ കാണിച്ചത് ഒരു ഉപയോക്തൃനാമത്തിനുള്ളിലെ ഒരു കമന്റ് ചില

### 2018 ഉം 2025 ഉം: രണ്ട് പാർസറുകൾ, രണ്ട് വ്യത്യസ്ത ഉത്തരങ്ങൾ

1:55 ലൈബ്രറികളെ പേരിൻ്റെ പകുതി മാത്രം വായിക്കാൻ പ്രേരിപ്പിക്കുമെന്നും, അതേസമയം ഒപ്പ് ഇപ്പോഴും ശരിയായി പരിശോധിക്കുമെന്നും. രണ്ടായിരത്തി ഇരുപത്തിയഞ്ചിൽ, GitHub റൂബി SAML-നുള്ളിൽ രണ്ട് XML പാർസറുകൾ ഒരേ ഡോക്യുമെൻ്റിനെക്കുറിച്ച് വിയോജിപ്പുണ്ടെന്ന് കണ്ടെത്തി. ഒരേ ബഗ്, പുതിയ ദശകം. ട്രയൽ ഓഫ് ബിറ്റ്സ് ഇതിനെ ഒരു ഫ്രാക്റ്റൽ എന്ന് വിളിക്കുന്നു, കാരണം നിങ്ങൾ സൂം ചെയ്യുന്ന ഓരോ തലത്തിലും

### എന്തുകൊണ്ടാണ് ഇത് തകരുന്നത്: മോശം രൂപകൽപ്പനയുടെ ഒരു ഫ്രാക്റ്റൽ

2:12 ഒരേ പിഴവുണ്ട്. ഇത് XML-ൽ നിർമ്മിച്ചതാണ്, ഒപ്പ് എൻവലപ്പ് ചെയ്തതാണ്, യഥാർത്ഥ ലോഗിനുകൾ സ്പെക്കിന്റെ പത്തിൽ ഒരു ഭാഗം മാത്രമേ ഉപയോഗിക്കൂ. ഹാക്കർ ന്യൂസിലെ ഏറ്റവും മികച്ച മറുപടി വാങ്ങുന്നയാളിൽ നിന്നാണ് വരുന്നത്. നിങ്ങൾക്ക് SAML പിന്തുണയില്ലെങ്കിൽ, എനിക്ക് അത് നൽകുന്ന ഒരു ഉൽപ്പന്നം കണ്ടെത്താൻ കഴിയും. രണ്ടും സത്യമാണ്, അതാണ് പ്രശ്നം. അതിനാൽ, തിങ്കളാഴ്ച. ആദ്യം OpenID Connect SHIP IT, Fly, Tailscale എന്നിവ SAML ഇല്ലാതെ തന്നെ

### തിങ്കളാഴ്ച: ആദ്യം OIDC, ഒരു പരിപാലിക്കുന്ന ലൈബ്രറി, കർശനമായ രൂപങ്ങൾ

2:31 എന്റർപ്രൈസുകൾക്ക് വിൽക്കുന്നു. ഒരു ഉപഭോക്താവ് നിർബന്ധിക്കുകയാണെങ്കിൽ, ഒരു പരിപാലിക്കപ്പെട്ട ലൈബ്രറി ഉപയോഗിക്കുക, അത് പാച്ച് ചെയ്യുക, ഒക്ടാ അല്ലെങ്കിൽ ഗൂഗിൾ അയക്കുന്നവ പോലെ അല്ലാത്ത സന്ദേശങ്ങൾ നിരസിക്കുക. നിങ്ങളുടെ സ്വന്തം ഒപ്പ് പരിശോധന ഒരിക്കലും എഴുതരുത്.

### വിധി, അണിയറയിൽ: REVERT

2:43 വിധി, അണിയറയിൽ. REVERT. ഏകദേശം ഇരുപത്തിയഞ്ച് വർഷം, ഒരിക്കലും മരിക്കാത്ത ഒരു ബഗ് ക്ലാസ്, എല്ലാവരും അംഗീകരിക്കുന്ന പരിഹാരം ഒരു വ്യത്യസ്ത പ്രോട്ടോക്കോൾ ആണ്. കഴിഞ്ഞ ശനിയാഴ്ച ഞാൻ പാസ്‌കീകൾ വേർപെടുത്തി, അതിനാൽ അടുത്തതായി എന്ത് തുറക്കണമെന്ന് കമന്റുകളിൽ പറയുക. അതാണ് ഇന്നത്തെ DIFF. ഞാൻ Axrisi-യിൽ നിന്നുള്ള Niko ആണ്. മെർജ് ചെയ്യുക, ഉത്തരവാദിത്തത്തോടെ.

## ഉറവിടങ്ങൾ

- [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
