มูลนิธิสื่อเพื่อเยาวชน
ว่าที่ร้อยตรี จิรศักดิ์ กรรเจียกพงษ์

อยากรู้ว่าเว็บใช้ OS/ WebServer/ Database ? ต้องใช้คำสั่ง/โปรแกรมอะไรช่วยค้นหา


ผมลอง whois แล้วก็ไม่ใช่ ผมลอง nslookup แล้วก็ไม่ใช่ ผมลอง checkdomain.com แล้วก็ไม่ใช่ ถ้าอยากรู้ตามหัวข้อกระทู้ต้องใช้ คำสั่งหรือ Tool อะไรครับ
ตรวจ OS ใช้ NMAP ครับ (Linux & Unix)
#nmap -o 192.168.1.1
เพิ่มเติมที่ http://www.itwizard.info/technology/linux/nmap_command.html ครับผม
ส่วน database ที่เวปนั้นใช้นะครับ เราดูได้จากการอัดฉีดคำสั่งเข้าไปให้ eror ครับ เมื่อ eror แล้วมันก้อจะดูออกได้ ต้องอาศัยประสพการคับ และยังมีวิธีอื่นๆอีกคับ ^^

ใช้วิธียิง request แล้วดู header ก็ได้ครับมันมี signature อยู่

การยิง Request ทำได้ดังนี้ครับ (แย่งเค้าตอบจาโดนด่าไหมหว่า)

ให้เราเขียนโปรเกรมเพื่อรับรีเควสครับ ตัวอย่างนี้ผมใช้ภาษา perl ครับ โดยสร้าง socket ขึ้นมา


#เริ่มต้นโปรแกรมยิงรีเควสคับ
#!/usr/bin/perl
use IO::Socket;

print STDOUT "Please insert address ";
$min = ; #!Key input to min var.
chop $min; #!To STDIN Without new line
$socket = IO::Socket::INET->new(
Proto=> 'tcp',
PeerAddr=> "$min",
PeerPort=> 80,
Timeout=> 10,
);
unless($socket){
die("Could not connect to server...");
}
$header = "GET / HTTP/1.0 ";
$header .= "Accept: */* ";
$header .= "Accept-Language: en-us ";
$header .= "User-Agent: close ";
$socket->autoflush(1);
print $socket ($header);
$dat = "";
while (<$socket>) { $dat .= $_;}
close $socket;
print $dat;
#จบครับผม

ผลจากการยิง www.pantip.com จะได้เป็น header ดังนี้ครับ
HTTP/1.1 200 OK
Date:Fri, 13 Jan 2006 22:09:02 GMT
Server:Apache/1.3.33(Unix) mod_ssl/2.8.22 OpenSSL/0.9.7e mod_gzip/1.3.26.1a
Last-Modified: Thu, 29 Sep 2005 21:23.43 GMT
ETag: "250412-7-433c5b5f"
Accept-Ranges:bytes
Content-Length:7
Connection:close
Content-Type:text/html

ซึ่งถ้าอยากรู้ว่าเป็น Server ไร ก้อดูที่ Server: คับ
ที่โหลดตัวแปล perl มีอยู่ที่ http://www.activestate.com/Products/ActivePerl/

สำหรับผู้ที่ไม่สันทัด Perl หรือไม่ชอบการเขียนโปรเกรมนะครับ (ตัวแปลรู้สึกจะมีขนาดใหญ่พอควร)

ผมมีวิธียิงแบบอื่นให้

นั่นคือใช้โปรเกรมดักแพคเกจครับ (พวก สไนฟอร์อ่ะ)
ซึ่งจะให้ผลเหมือนกันเลย
ใช้ Ethereal ครับ โหลดที่นี่ครับผม http://ethereal.cbn.net.id/distribution/win32/ethereal-setup-0.10.14.exe ขนาด 12.1M
[เอ ใหญ่กว่าตัวแปลภาษา perl รึป่าว]

วิธีใช้อย่างง่าย โหลดเสร็จ Capture > option > start แล้วเข้าเวปที่อยากได้ header ครับ มันก็จะดัก header ไว้ให้ครับ
(วิธีใช้มันมากมายมหาศาลมากๆ อธิบายม่ายหมด)

และ ยังเหลืออีกวิธีคร้าบ คือวิธีที่ผมกล่าวไว้ตอนแรก นั่นคือ NMAP ซึ่ง NMAP นั้นใน linux และ unix จะอยู่ในแผ่นที่ไว้ลง

ส่วน Window สามารถใช้ได้เช่นกัน แต่ต้องไปโหลดคร้าบ
แต่การใช้ NMAP มันอาพับกว่าพวก linux unix ตรงที่ต้องการ
-winpcap 456 kb
http://www.winpcap.org/install/bin/WinPcap_3_1.exe
-nmap 605
kbhttp://download.insecure.org/nmap/dist/nmap-3.95-win32.zip
รวมก้อ 1 M กว่าๆ แต่คุณต้องเชี่ยวในการใช้คำสั่งพอควร

ลองนี่มั๊ยครับ
http://www.netcraft.com
http://uptime.netcraft.com/up/graph
Ref:: http://www.pantip.com/tech/developer/topic/DM2001373/DM2001373.html
หมายเลขบันทึก: 23944เขียนเมื่อ 14 เมษายน 2006 18:10 น. ()แก้ไขเมื่อ 22 มิถุนายน 2012 14:39 น. ()สัญญาอนุญาต: จำนวนที่อ่านจำนวนที่อ่าน:


ความเห็น (1)

ผมใช้ Nikto ครับง่ายดี
ติดตั้งก็ผ่าน ports

cd /usr/ports/security/nikto
# make config
เลือกออปชั่นตามจะใช้ (เลือกมันทั้ง 2 นั่นแหละ)
[X] SSLEAY Use NET::SSLeay for ssl scanning
[X] NMAP Use security/nmap for port scanning

สั่งติดตั้ง
# make install clean

หลังจากติดตั้งเสร็จ เพื่อให้ใช้งานได้เลยสั่ง rehash
# rehash

สั่งอัพเดทฐานข้อมูล
# nikto -update

จากนั้นลองสั่งตรวจสอบ Web server เราดูครับ จะมีคำแนะนำว่าให้เอาอะไรออกบ้าง คอนฟิกแบบไหนบ้าง มีอะไรอยู่บ้าง (มันก็คือเครื่องมือดีๆที่แฮ็กเกอร์ใช้กันนี่แหละครับเจ้าตัวนี้)
คำสั่งใช้แบบนี้ครับ
# nikto -h www.pantip.com

 

พบปัญหาการใช้งานกรุณาแจ้ง LINE ID @gotoknow
ClassStart
ระบบจัดการการเรียนการสอนผ่านอินเทอร์เน็ต
ทั้งเว็บทั้งแอปใช้งานฟรี
ClassStart Books
โครงการหนังสือจากคลาสสตาร์ท