ʻIke anei ʻoe i ke ʻano o ka LDAP injection? He ʻenehana injection code ia e kuhikuhi ana i nā noi e kūkulu ana i nā nīnau injection me ka hoʻohana ʻana i ka mea hoʻohana i hoʻomaʻemaʻe ʻole ʻia. Hoʻohana pinepine ʻia ʻo LDAP (Lightweight Directory Access Protocol) no nā huli papa kuhikuhi, e like me ka hōʻoia ʻana i nā mea hoʻohana a i ʻole ka loaʻa ʻana o ka ʻikepili hui. Ke hāʻawi nā mea hoʻouka i ka mea hoʻokomo i hana kūikawā ʻia me nā metakaracharacters LDAP, hiki iā lākou ke hoʻololi i ka logic o nā nīnau papa kuhikuhi e komo a hoʻololi paha i ka ʻikepili me ka hewa. ʻO ka hopena, kū mai kahi nāwaliwali injection LDAP ke kūkulu ʻia nā kānana me ka dynamically mai nā waiwai i kāohi ʻia e ka mea hoʻohana me ka ʻole o ka hoʻomaʻemaʻe ʻana a i ʻole ka hōʻoia ʻana.
Pehea e hana ai: Nā hana o kahi hoʻouka ʻana i ka LDAP Injection #
Hana ʻia kahi hoʻouka ʻana o ka LDAP i ka wā e hoʻokomo ʻia ai ka ʻikepili i hāʻawi ʻia e ka mea hoʻohana me ka palekana ʻole i loko o kahi nīnau LDAP. E noʻonoʻo i kahi login hoʻopili:
(&(cn=” + inoa mea hoʻohana + “)(userPassword=” + ʻōlelo huna + “))Inā hoʻouna ka mea hoʻouka i nā kaʻina * a i ʻole terminator ma kahi o kahi inoa inoa kūpono, e hiolo ka logic kānana i loko o kahi loiloi ākea a i ʻole ke kūlana mau-ʻoiaʻiʻo, e kāpae pono ana i ka hōʻoia. ʻO kēia ke ʻano o ka hana ʻana o kēia injection: ke hoʻokomo nei i ka logic LDAP e hoʻololi i ka hana i manaʻo ʻia.
No laila, ʻo ka nāwaliwali o ka hoʻokomo ʻana o LDAP mai ke kūkulu ʻana i nā nīnau ma o ka hoʻokomo hilinaʻi ʻole ʻia e komo pū ana me nā huapalapala kūikawā, e like me nā parentheses, nā quotes, a me nā wildcards, e hoʻololi hou ana i ka semantics nīnau.
Eia kekahi, hana ʻia lākou ke kope ʻole ke code noi i ka ʻikepili mea hoʻohana i loko o kahi nīnau LDAP a hiki ʻole ke hoʻopau i nā metakaracter, e ʻae ana i nā mea hoʻouka e hoʻopilikia a hoʻoponopono paha i ka logic nīnau, komo i ka ʻikepili ʻae ʻole ʻia, a hoʻololi paha i ke kahe hoʻokō.
No ke aha he mea nui ka hoʻouka ʻana o ka LDAP Injection? #
Hiki i kahi hoʻouka ʻana o ka LDAP ke hoʻopilikia i ka hōʻoia, hoʻokahe i ka ʻike koʻikoʻi, a hoʻololi paha i ke ʻano o ka papa kuhikuhi. Hōʻike ʻo Imperva e hiki i nā mea hana hoʻoweliweli ke hoʻopilikia i nā kaʻina hana hōʻoia, nānā a hoʻololi paha i nā inoa inoa/ʻōlelo huna, hoʻokomo i nā polokalamu ʻino, a hoʻonui i nā pono, e hopena ana i ka uhaki ʻikepili, ka hōʻino ʻana i ka inoa, a me nā pohō kālā.
Hiki i nā nāwaliwali o ka hoʻokomo ʻana o LDAP ke kahe ma o nā lawelawe i hoʻopili ʻia, ʻoi aku hoʻi i loko enterprise nā wahi e hoʻohana ana i ka LDAP no ke kau inoa hoʻokahi (SSO), ka ʻae ʻana, a i ʻole ka hoʻonohonoho ʻana o ka ʻike mea hoʻohana a me nā ʻae.
Nā hōʻailona o kahi nāwaliwali o ka hoʻokomo ʻana o ka LDAP #
Ma ka cybersecurity, pili ka hoʻokele aupuni i ke ʻano o ke alakaʻi ʻana, nā kulekele, a me nā hae ʻulaʻula koʻikoʻi:
- Hoʻohui pololei ke code i ka mea hoʻohana i ka mea hoʻokomo i loko o nā kānana LDAP.
- ʻAʻohe hōʻoia o ka hoʻokomo a i ʻole ka pakele ʻana.
- Ka hoʻohana ʻana i nā huapalapala kūikawā e like me () * & | = i ka hoʻokomo me ke kaohi ʻole.
- ʻO nā hopena nīnau i manaʻo ʻole ʻia, no ka laʻana, holomua ka hōʻoia ʻana me ka nānā ʻole i nā palapala hōʻoia, a i ʻole nā papa inoa mea hoʻohana ākea e hoʻihoʻi ma ka hoʻokomo liʻiliʻi.
ʻO nā nīnau i hana hewa ʻia mai ka hoʻokomo ʻana o ka mea hoʻohana e ʻae i ka loaʻa ʻana o ka ʻikepili i ʻae ʻole ʻia a i ʻole ke kāpae ʻana i ka logic.
Pehea e hoʻomāhuahua ai iā lākou? #
ʻO ka hōʻemi ʻana i ka nāwaliwali o ka injection LDAP e pili ana i:
a. Hōʻoia Hoʻokomo / Papa inoa ʻae
E ʻae wale i nā huapalapala palekana a i ʻole nā mamana i ʻike ʻia. E hōʻole a hoʻomaʻemaʻe paha i nā huapalapala kaohi e like me *, (, ), &, |, =. Paipai ʻo PortsWigger i ka pale ʻana i nā mea i loaʻa nā metakaracharacters LDAP a i ʻole e hoʻokō i nā mamana alphanumeric koʻikoʻi.
b. Pakele / Hoʻopāʻālua
E hoʻohana i nā hana pakele kikoʻī LDAP: pakele ʻana o Distinguished Name no nā pōʻaiapili DN, a me ka pakele ʻana o ka kānana huli no nā predicate. Hāʻawi ʻo OWASP i kahi kikoʻī Palapala Hoʻopunipuni Palekana me ke alakaʻi i hana kūikawā ʻia
c. Nā Nīnau i Hoʻohālikelike ʻia / Nā API Palekana
E pale i ke kūkulu ʻana i nā kānana ma o ka hoʻohuihui kaula. E hoʻohana i nā waihona puke LDAP e kākoʻo ana i ka hoʻopaʻa ʻana i nā parameter a i ʻole nā API kūkulu kānana (e laʻa, ʻo UnboundID SDK's Filter.createANDFilter(…)) e hōʻoia i ka mālama ʻia ʻana o ka mea hoʻohana ma ke ʻano he ʻikepili, ʻaʻole ma ke ʻano syntax.
d. Kumu o ka Pono Li'ili'i (PoLP)
E hoʻopaʻa i ka LDAP me nā kuleana komo liʻiliʻi. ʻOiai inā hana ʻia kahi injection, kaupalena ia i nā hana a ka mea hoʻouka e hiki ai ke hana. Underscore PoLP i hui pū ʻia me ʻaʻohe hilinaʻi a me MFA e kaupalena i ka hopena.
e. Nā ʻōnaehana palekana / nā hale waihona puke
E hoʻohana i nā ʻōnaehana hana e pakele koke ai a hoʻomaʻemaʻe paha i nā mea hoʻokomo a hoʻohilahila i ke kūkulu ʻana i nā nīnau maka.
f. Nā Mea Hana Loiloi Kōmike
Ma .NET, e hoʻohana i ka loiloi CA3005 e ʻike i ka hoʻokomo HTTP hilinaʻi ʻole e hōʻea ana i nā ʻōlelo LDAP; e hoʻoponopono ma ka hoʻomaʻemaʻe ʻana, ka pakele ʻana, a i ʻole ka ʻae ʻana i ka hoʻokomo papa inoa.
g. Hoʻāʻo (Static, Dynamic, Pen-Testing)
Hoʻohui i nā Static AppSec ʻelua (SAST) a me ka Dynamic (ʻĀANA) ke nānā ʻana e hopu i ka nāwaliwali o ka inikini LDAP i ka wā hoʻomaha a me ka wā holo.
h. Ke kākau inoa ʻana, ka nānā ʻana, ka hoʻomaopopo ʻana
E ʻike i nā ʻano kānana ʻano ʻē, nā hoʻāʻo i hāʻule, a i ʻole nā ʻano nīnau i manaʻo ʻole ʻia. Paipai ʻo Semperis i ka nānā ʻana iā Active Directory no nā nīnau LDAP maʻamau ʻole a i ʻole ka hoʻopunipuni metadata.
Papa Hōʻuluʻulu Manaʻo #
| Paʻa | Meaning |
|---|---|
| Hoʻokomo LDAP | He ʻano hana hoʻokomo code e hoʻohana ana i ka mea hoʻohana i hoʻomaʻemaʻe ʻole ʻia i nā kānana LDAP. |
| He aha ka LDAP Injection | ʻO kahi nāwaliwali i loaʻa mai ke kūkulu ʻana i nā nīnau LDAP me ka hoʻokomo hilinaʻi ʻole ʻia. |
| Hoʻouka ʻana i ka LDAP Injection | ʻO ka hoʻohana maoli ʻana kahi e hoʻololi ai ka mea hoʻokomo i ka logic nīnau LDAP a loaʻa paha ke komo. |
| Ka nāwaliwali o ka inikini LDAP | ʻO ka hemahema pae code e hiki ai i nā hoʻouka ʻana o ka injection LDAP. |
No ke aha he mea nui kēia ma DevSecOps? #
no ka mea, Nā hui DevSecOps, ʻo ka pale ʻana i ka nāwaliwali o ka hoʻokomo ʻana o LDAP he mea nui ia no ka hoʻopaʻa ʻana i nā kahe hōʻoia a me ka mana komo i kākoʻo ʻia e ka papa kuhikuhi. Hoʻohui mau pipelinePono nā mea hoʻokele palekana e hoʻokomo i nā nānā code static no ke kūkulu ʻana i nā nīnau palekana ʻole a me ka hoʻāʻo ikaika no ka hoʻoponopono kānana. Pono nā luna palekana e hoʻokō i ka hoʻohana ʻana i nā hale waihona puke e pakele ana, ka hoʻohana ʻana i ka API parameterized, a me ka mālama ʻana i nā kulekele hōʻoia liʻiliʻi loa a me ka hoʻokomo.
Ke hoʻoikaika nei i ka DevSecOps Pipelineme Xygeni #
I kēia manawa ua ʻike ʻoe i ke ʻano o ka LDAP injection, ua ʻike ʻoe ʻo ka palekana ʻana i nā polokalamu hou e kūʻē iā lākou e pono ai ma mua o nā hoʻoponopono pae code. Pono nā hui DevSecOps e hoʻokō i ka palekana ma ka holoʻokoʻa polokalamu ola lifecycle, mai ke code a i ke kūkulu ʻana a hiki i ka hoʻolaha ʻana.
Mea hana like ʻO Xygeni e hoʻoikaika i nā hui e ʻike mua i kā lākou mau pilikia injection ma o ka hoʻohui ʻana i ka loiloi static, IaC ke nānā ʻana, a hoʻopaʻa pono i ka hoʻokō kulekele i loko CI/CD nā kahe hana. Ma ka nānā mau ʻana no ke kūkulu ʻana i nā nīnau palekana ʻole, nā pilikia hilinaʻi, a i ʻole nā hoʻonohonoho hewa, kōkua ʻo Xygeni i ka pale ʻana i nā hoʻouka ʻana o ka LDAP ma mua o ko lākou hiki ʻana i ka hana.
ʻO ka hoʻohui ʻana i nā kahua e like me Xygeni e hoʻohālikelike i ka palekana me ka wikiwiki o ka hoʻomohala ʻana, e hāʻawi ana i ka ʻike manawa maoli, nā mana hana ponoʻī, a me ke alakaʻi hoʻoponopono i hana ʻia no ka ʻenekinia palekana-e-hoʻolālā.

