๐ Introduction
LDAP Injeciton์ LDAP(Lightweight Directory Access Protocol)์ ๋ํ Injection ๊ณต๊ฒฉ์ผ๋ก ์ฌ์ฉ์์ ์ ๋ ฅ๊ฐ์ด LDAP Query์ ์ง์ ์ํฅ์ ๋ผ์น ์ ์์ ๋ ์ด๋ฅผ ํตํด ๋น์ ์์ ์ธ LDAP ๋์์ ์ ๋ํ๋ ๊ณต๊ฒฉ ๋ฐฉ๋ฒ์ ๋๋ค. ๋ณดํต์ Injection ์ทจ์ฝ์ ๊ณผ ๋น์ทํ๊ฒ ์ ๋ฐ์ ์ธ ๊ณต๊ฒฉ ๋งค์ปค๋์ฆ์ SQL Injection ๋ฑ ๋๋ค์ Injection ๋ฐฉ์๊ณผ ๋์ผํฉ๋๋ค.
LDAP์ด๋?
LDAP ์์ฒด๋ TCP/IP ์์์ DS(Directory Service)๋ฅผ ์กฐํํ๊ณ ์์ ํ๋ Application Protocol ์ด์ง๋ง, ๋ณดํต์ ๊ธฐ์ ์ธํ๋ผ์์ ์ฌ๋, ๊ธฐ๊ธฐ ๋ฑ์ ์ธ์ฆ์์ ์ฌ์ฉ๋๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ๊ทธ๋์ LDAP Injection์ ๋ํ์ ์ธ ๋ฆฌ์คํฌ๊ฐ ์ธ์ฆ ์ฐํ์ ๋๋ค.
๐ก Offensive techniques
Detect
Error base
Response ๋ด ๋ ธ์ถ๋๋ ์๋ฌ๋ฅผ ํตํด LDAP ๊ตฌ๋ฌธ์ ์ผ๋ถ๊ฐ ๋ ธ์ถ๋๋ ๊ฒฝ์ฐ LDAP Injection์ ์ทจ์ฝํ ๊ฐ๋ฅ์ฑ์ด ๋์ต๋๋ค. ๊ณต๊ฒฉ์๋ ์ด ์ ๋ณด๋ฅผ ๊ธฐ๋ฐ์ผ๋ก LDAP Query๋ฅผ ์ ์ถํ์ฌ ์๋๋์ง ์์ ์ก์ ์ ์ํํ๋๋ก ์ ๋ํ ์ ์์ต๋๋ค.
|
|
Blind
|
|
Exploitation
|
|
|
|
Attribute List
|
|
๐ก Defensive techniques
ํน์๋ฌธ์ Escape
์๋ ํน์๋ฌธ์์ ๋ํด์ Escape ์ฒ๋ฆฌ๊ฐ ํ์ํฉ๋๋ค.
*
(
)
.
&
-
_
[
]
backktick
(`) ~
|
@
$
%
^
?
:
{
}
!
'
๊ทธ๋ฆฌ๊ณ ๊ฐ๋ฅํ๋ค๋ฉด framework, library ๋ฑ์์ ์ ๊ณตํ๋ ๋ณด์๊ธฐ๋ฅ์ ์ด์ฉํด ๋ง๋ ๊ฒ์ด ์ข์ต๋๋ค.
๐น Tools
- OWASP ZAP (https://www.zaproxy.org/docs/alerts/40015/)
- BurpSuite (https://portswigger.net/kb/issues/00100500_ldap-injection)
- Scripts (Python, Ruby)