엠

서버정보검색

<?
function query ($url, $osinfo) {
if ($url == "http://") { return; }
$array = parse_url($url);
$server = eregi_replace("[^0-9a-z\.\-]", "", $array[host]);
$port = $array[port] != "" ? $array[port] : 80;

// 웹서버 정보
$fp = fsockopen($server, $port);
if (!$fp) {
$wwwresult = "질의하신 웹서버에 접속할 수 없습니다.";
}
else {
fputs($fp, "HEAD $url HTTP/1.1\n\n");
while(!feof($fp)) {
$rt = fgets($fp, 255);
if (ereg("^Server", $rt)) { $wwwresult = "Web $rt"; }
}
fclose($fp);
$wwwresult = ereg_replace("[\r\n]", "", $wwwresult);
$wwwresult = ereg_replace("[^\n]{60}", "\\0\n", $wwwresult);
}
if ($wwwresult == "") {
$wwwresult = "질의하신 서버의 웹서버 정보를 파악할 수 없습니다."; }

// 운영체제 정보
if ($osinfo) {
$osresult = `nmap -O $server -p $port -P0`;
ereg(".*\n(Remote operating system guess|Remote OS guesses): ([^\r\n]+)", $osresult, $match);
$os = $match[2];
if ($os != "") {
$os = "Operating System: $os";
}
else {
$os = "질의하신 서버의 운영체제 정보를 파악할 수 없습니다.";
}
$os = ereg_replace("[^\n]{60}", "\\0\n", $os);
}

// 결과 출력
$server = strtoupper($server);
if ($os != "") { $wwwresult .= "\n\n$os"; }
$ip = @gethostbyname($server);
if (ereg("^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}", $ip)) {
$server .= "\n\nIP Address: $ip";
}
return "
<TABLE CELLSPACING=0 CELLPADDING=0 ALIGN=CENTER>
<TR>
<TD>
<BR>
<PRE>
Server Name: $server

$wwwresult
</PRE>
</TD>
</TR>
</TABLE>
";

}

// ########################################################################

// 운영체제 정보 예측 여부
$osguess = 0;

/*
*
* 1. 운영체제 정보를 예측하기 위해서는 위의 값을 1로 지정한다.
*
* 2. nmap이라는 유명한 해킹(포트스캐닝)도구는 목적시스템의
* 운영체제정보를 예측해내는 기능이 들어있다.
* 다만 root 사용자에게만 운영체제정보 예측기능을 허용하므로
* 다음과 같이 SetUserID를 부여하는 등의 조치가 필요하다.
* # chmod +s nmap
* http://www.insecure.org/nmap/
*
*/

if (!$osguess) { $osinfo = 0; }
if ($osinfo) { $osinfo_checked = "CHECKED"; }

// 질의
if (!ereg("^http://", $url)) { $url = "http://$url"; }
$result = query($url, $osinfo);

// ########################################################################

// HTML 출력
print "
<HTML>
<HEAD>
<TITLE>웹서버 정보 조회</TITLE>
<META http-equiv=\"content-type\" content=\"text/html; charset=EUC-KR\">
<STYLE TYPE=\"text/css\">
<!--
A, TD, BODY
{ text-decoration:none; font-size:9pt; color:black; }
A:hover
{ text-decoration:underline; font-size:9pt; color:red; }
// -->
</STYLE>
</HEAD>
<BODY $body>

<BR>
<BR>
<BR>

<TABLE CELLSPACING=0 CELLPADDING=0 ALIGN=CENTER>
<TR>
<TD BGCOLOR=SILVER>

<TABLE WIDTH=400 CELLSPACING=1 CELLPADDING=2 BORDER=0 ALIGN=CENTER>

<TR>
<TD ALIGN=CENTER BGCOLOR=BEIGE>
<BR>
<B>웹서버 정보 조회</B>
<BR>
<BR>
</TD>
</TR>

<TR>
<TD ALIGN=CENTER BGCOLOR=WHITE>
<FORM METHOD=POST ACTION=$PHP_SELF>
URL <INPUT TYPE=TEXT NAME=url VALUE=\"$url\" SIZE=30>
<INPUT TYPE=SUBMIT VALUE=\"조회!\">
";
if ($osguess) {
print "
<INPUT TYPE=CHECKBOX NAME=osinfo $osinfo_checked>OS
";
}
print "
</TD>
</FORM>
</TR>
";
if ($result != "") {
print "
<TR>
<TD ALIGN=CENTER BGCOLOR=#EEEEEE>
$result
</TD>
</TR>
";
}

print "
</TABLE>

</TD>
</TR>
</TABLE>

</BODY>
</HTML>
";

?><div class='small'>[이 게시물은 관리자님에 의해 2011-10-31 17:12:10 PHP & HTML에서 이동 됨]</div>
|

댓글 1개

세상이슈
2006-03-14 (화) 23:08:10
수고하시네요
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

8,188건
+
제목 글쓴이 날짜 조회
06-07-11 조회 3,528
06-07-11 조회 3,528
06-07-11 조회 4,585
06-07-11 조회 4,299
06-07-11 조회 3,900
06-07-11 조회 3,109
06-07-11 조회 2,864
06-07-11 조회 3,966
06-07-11 조회 2,846
06-07-11 조회 3,420
06-07-11 조회 5,020
06-07-11 조회 4,814
06-07-11 조회 4,500
06-07-11 조회 4,497
06-07-11 조회 2,626
06-07-11 조회 2,989
06-07-11 조회 2,932
06-07-11 조회 3,611
06-07-11 조회 5,771
06-07-11 조회 3,831
06-07-11 조회 2,963
06-07-11 조회 2,974
06-07-11 조회 2,874
06-07-11 조회 3,640
06-07-11 조회 9,259
06-07-11 조회 3,792
06-07-11 조회 3,834
06-07-11 조회 4,112
06-07-11 조회 3,342
06-07-11 조회 3,390
06-07-11 조회 3,337
06-07-11 조회 3,136
06-07-11 조회 3,422
06-07-11 조회 3,556
06-07-07 조회 4,177
06-07-05 조회 3,369
06-07-05 조회 3,044
06-07-02 조회 3,890
06-06-29 조회 6,133
06-06-27 조회 4,627
06-06-25 조회 4,531
06-06-24 조회 4,043
06-06-24 조회 3,497
06-06-22 조회 2,564
06-06-21 조회 4,294
06-06-21 조회 3,093
06-06-19 조회 6,507
06-06-16 조회 3,482
06-06-15 조회 4,519
06-06-15 조회 3,983
06-06-14 조회 2,911
06-06-14 조회 5,003
06-06-14 조회 3,509
06-06-14 조회 3,348
06-06-13 조회 4,118
06-06-13 조회 4,436
06-06-13 조회 3,540
06-06-13 조회 3,342
06-06-13 조회 3,335
06-06-12 조회 3,042
06-06-12 조회 4,150
06-06-12 조회 3,104
06-06-12 조회 3,144
06-06-12 조회 2,772
06-06-12 조회 3,338
06-06-11 조회 3,252
06-06-11 조회 3,615
06-06-10 조회 3,988
06-06-10 조회 3,446
06-06-09 조회 3,575
06-06-09 조회 4,531
06-06-08 조회 4,356
06-06-08 조회 4,264
06-06-08 조회 4,110
06-06-08 조회 3,129
06-06-08 조회 3,451
06-06-08 조회 3,315
06-06-08 조회 3,102
06-06-08 조회 3,550
06-06-08 조회 3,444
06-06-08 조회 3,861
06-06-08 조회 3,241
06-06-08 조회 4,510
06-06-07 조회 3,035
06-06-07 조회 3,735
06-06-07 조회 2,661
06-06-05 조회 3,957
06-06-05 조회 4,131
06-06-05 조회 3,231
06-06-05 조회 3,087
06-06-02 조회 3,536
06-06-02 조회 3,575
06-06-01 조회 4,197
06-06-01 조회 7,861
06-06-01 조회 3,819
06-05-31 조회 4,309
06-05-31 조회 4,217
06-05-31 조회 3,023
06-05-31 조회 4,440
06-05-31 조회 3,308