Friday, October 27, 2006

Security through Obscurity - II (Version hiding)

Энэ удаа "өнгөлөн далдлалт"-н нэг хэлбэр болох "version hiding" буюу серверийн хувилбарыг нуух аргын талаар товч дурдъя.

Ихэнх сервер софтверүүд өөрийн хувилбарын дугаарыг нийтэд зарлаж байдаг ба хялбархан scan хийснээр тухайн серверийн талаар бүх мэдээллийг олж болно. Хэрвээ Hacker хувилбарын дугаарыг мэдвэл... bug-р дамжин системд чинь нэвтрэх боломжтой болно. Энэ нь ямар нэг гадны автоматжсан скрипт/automated script-д өртөх магадлалыг бууруулж өгч байгаа хэдий ч, нууцлал хамгааллын шалгарсан арга биш гэдгийг манай админууд анхаарна бизээ.

Өөрийн веб серверийн хувилбарыг одоо шалгаад үзээрэй. Үүний тулд:

$ telnet IP 80

гарч ирсэн prompt дээр "HEAD / HTTP/1.0" гэж бичээд enter дарна. Ингэхэд таны серверээс ирсэн HTTP Header мэдээллийг танд харуулах болно. Санаснаас хавьгүй их мэдээллийг олж харвуу?...

1. Version hiding in Apache - httpd.conf дотор
ServerTokens directive-г ашиглан тохиргоог хийнэ.

ServerTokens Prod[uctOnly] -> Server: Apache
ServerTokens Major -> Server: Apache/2
ServerTokens Minor -> Server: Apache/2.0
ServerTokens Min[imal] -> Server: Apache/2.0.41
ServerTokens OS -> Server: Apache/2.0.41 (Unix)
ServerTokens Full (or not specified) -> Server: Apache/2.0.41 (Unix) PHP/4.2.2 MyMod/1.2

"ServerTokens Prod" гэсэн тохиргоог хийхэд хамгийн бага мэдээлэл өгөх нь. Хэрвээ та Apache ажиллаж байгааг мэдэгдүүлмээргүй байгаа бол эх кодод засвар оруулж дахин compile-дах хэрэгтэй. Үүний тулд include/ap_release.h файлын

#define AP_SERVER_BASEPRODUCT "Apache"


гэсэн мөрийг засах хэрэгтэй.

2. Version hiding in BIND - BIND-н хувьд named.conf файлын options{} directive дотор дараах байдлаар тохиргоог хийнэ.


options {
...
version "D00d!";
... };

3. Version hiding in ProFTP - ProFTP-н хувьд proftpd.conf дотор ServerIdent directive-г ашиглан тохиргоо хийнэ. Default мэндчилгээ, хувилбарын оронд хүссэн мэндчилгээг оруулж болно.

ServerIdent on "MobiNet ISP"

Хэрэв юу ч хэвлэхийг хүсэхгүй бол

ServerIdent off

гэсэн байдлаар тохиргоог хийж болно. Энэ тохиолдолд серверийн домэйн нэрнээс өөр мэдээллийг харуулахгүй.


Obscurity is not security, but... obscurity is a layer of security!

1 comment:

Oyunbodol said...

БЛОГ БИЧИГЧИД ЭЭ ...

http://oyunbodol.blogspot.com/2006/10/blog-post.html