<?
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>
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개
세상이슈
19년 전
수고하시네요
게시글 목록
| 번호 | 제목 |
|---|---|
| 9186 |
Flash
플래시 프리로딩 소스
3
|
| 9168 | |
| 9167 |
JavaScript
[FLV동영상] FLV 반복재생하기
|
| 28537 | |
| 9163 | |
| 28532 | |
| 9160 | |
| 9155 |
Flash
wmode
4
|
| 28530 |
HTML
특정 IP 차단하기...
1
|
| 9150 |
Flash
플래시 flv(동영상) 사용경험담
4
|
| 9144 | |
| 28529 | |
| 9143 |
기타
Top으로 ver2
|
| 9141 |
JavaScript
제목에 첫 글자만 스타일적용과 문장의 첫라인 스타일 적용
1
|
| 9138 | |
| 28523 |
HTML
전화 번호 숫자만 빼오기
5
|
| 9132 | |
| 28521 | |
| 9131 | |
| 9130 |
Flash
창크기 자동 조절
|
| 9129 |
Flash
플래시 메뉴
|
| 28517 |
HTML
사진을 액자에 넣기(액자 만들기)
3
|
| 9126 | |
| 28515 |
HTML
초간단 스크롤
1
|
| 9123 |
JavaScript
메모하지 않으면 깜빡깜빡 잊어버리는 것들
2
|
| 9122 |
기타
빈 무비클립 만들기
|
| 9119 | |
| 9118 | |
| 9114 |
JavaScript
euc-kr 문서를 utf-8 로 변환
3
|
| 9111 | |
| 28514 |
HTML
잘되는 센드메일 수신이 안될때...
|
| 9109 | |
| 9108 |
기타
Ajax 흉내 내기
|
| 9105 |
JavaScript
포토샵에서 트랜스폼과 카피를 동시에 하는 방법
2
|
| 9100 | |
| 9097 |
JavaScript
mod_rewrite 설치 법
2
|
| 9096 | |
| 9093 |
JavaScript
포토샵의 블렌딩 모드
2
|
| 9089 |
JavaScript
opacity(투명도) 값 쉽게 먹이기.
3
|
| 9083 | |
| 28511 | |
| 9081 |
기타
서버정보검색
1
현재글
|
| 9077 |
기타
텍스트시계
3
|
| 9073 | |
| 9070 |
기타
Key 관련
2
|
| 28510 |
HTML
textarea 에 Tab기능 넣기
|
| 9069 | |
| 9068 |
MySQL
초보일지 FC4에서 가상호스트설정과정
|
| 9067 |
기타
pop3서버 설치 방법
|
| 9065 |
JavaScript
메뉴 생성 클래스
1
|
| 9064 | |
| 9063 |
JavaScript
qpopper(pop3) 설치
|
| 9061 | |
| 9060 | |
| 9059 | |
| 28509 |
HTML
자바스크립트 오류 메시지 감추기
|
| 9058 |
JavaScript
RTL8201BL 랜카드 잡으려면
|
| 9057 |
MySQL
mysql 설치후 실행오류 처리
|
| 9056 | |
| 28508 | |
| 9055 |
JavaScript
RedHat(레드햇) 9 설치 후 yum 설치
|
| 9054 | |
| 28507 |
HTML
삼바 설정 간단 쉬운 쉽게
|
| 9053 | |
| 9052 |
JavaScript
메일 릴레이 테스트
|
| 9051 | |
| 9050 | |
| 9049 | |
| 9048 | |
| 9038 | |
| 9033 |
JavaScript
브러시 집안들 브러시 지름을 쉽고 빠르게 조절하자~~~
4
|
| 9032 |
정규표현식
페도라 코어 3에서 APM 설치하기
|
| 9031 |
Linux
rsync를 이용한 미러링
|
| 9029 | |
| 9026 | |
| 9024 |
기타
vi 서비스 편집
1
|
| 9023 |
MySQL
리눅스에서 mysql DB설정
|
| 9022 |
MySQL
리눅스 에서 아파치와 php 설치
|
| 9017 |
Flash
일러스트 CS2와 플래시에서 패스따기
4
|
| 9015 | |
| 28502 | |
| 9013 | |
| 9001 | |
| 8998 |
MySQL
exif 사용하기 (ms 윈도우용)
2
|
| 8994 |
JavaScript
Apache 보안 팁...--;;;
3
|
| 8993 |
기타
[펌] $_FILES
|
| 8992 | |
| 8989 |
JavaScript
scp 사용법
2
|
| 8988 | |
| 8987 |
Flash
선따라 움직이기(초보)
|
| 8981 |
JavaScript
옥션처럼 소스보기 안되는곳에 적용하니까, 소스 보이는 방법
5
|
| 8978 | |
| 8974 |
MySQL
실수로 삭제한 mysql DB 복구방법
3
|
| 8973 |
JavaScript
mozilla DHTML ROWS INSERT & DELETE
|
| 8971 | |
| 8970 | |
| 8963 |
JavaScript
제가 집에서 사용하는 서버를 살짝 공개합니다.^^
6
|
| 8959 | |
| 8953 |
JavaScript
ssh 무차별 로그인 공격 막기
5
|
| 8950 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기