이 절차는 특별한 방법입니다. 사용 범위가 상대적으로 제한되어 있으며 어느 정도 위험이 있습니다. ASP 백도어에서 몇 가지 방법을 배웠습니다. 아래는 프로그램 코드입니다.
<%
희미한 원격 주소
Request.ServerVariables("HTTP_X_FORWARDED_FOR")=비어 있는 경우
원격주소=Request.ServerVariables("REMOTE_ADDR")
또 다른
원격주소=Request.ServerVariables("HTTP_X_FORWARDED_FOR")
Response.Write(GetMac(remoteaddr))
이면 끝납니다
.
'특정 IP의 네트워크 카드 MAC 주소를 읽어서 발생합니다.
'이 프로그램은 arp 명령을 호출하고 로컬 arp 테이블을 쿼리하여 특정 IP의 MAC 주소를 읽습니다.
'이 프로그램을 사용할 때 다음 사항에 유의하십시오.
' 이 프로그램에는 "WSCRIPT.SHELL"과 "Scripting.FileSystemObject"라는 두 가지 구성 요소가 필요합니다. 서버가 이 두 구성 요소를 정상적으로 사용할 수 있는지 확인하세요.
' 이 프로그램은 cmd.exe 프로그램을 호출해야 합니다. IIS 게스트 계정에 프로그램에 대한 액세스 권한이 있는지 확인하세요.
' 이 프로그램은 결과를 저장하기 위해 임시 파일이 필요합니다. IIS 게스트 계정에 임시 디렉터리에 대한 쓰기 권한이 있는지 확인하세요.
'
기능 GetMac(IP)
오류 발생 시 다음 재개
Dim oScript
희미한 oFileSys, oFile
모두 희미하게, szTempFile,ipc,phyc,typec
희미한 임시 경로
oScript = Server.CreateObject("WSCRIPT.SHELL") 설정
oFileSys = Server.CreateObject("Scripting.FileSystemObject") 설정
TempPath="d:temp" '임시 디렉터리
szTempFile = TempPath & oFileSys.GetTempName() ' 임시 파일 이름을 가져옵니다.
oScript.Run을 호출합니다("cmd.exe /c ping -n 2 " & IP, 0, True) ' 이 IP가 arp 테이블에 있는지 확인하세요.
oScript.Run("cmd.exe /c arp -a " & IP & " > " & szTempFile, 0, True)을 호출합니다.
oFile = oFileSys.OpenTextFile(szTempFile, 1, False, 0) 설정
모두=oFile.ReadAll()
o파일.닫기
If (IsObject(oFile)) 그러면
oFileSys.DeleteFile(szTempFile, True)을 호출합니다.
종료 조건
arr = 분할(모두, vbCrLf)
UBound(arr) = 4이면
ipc = InStr(1, arr(2), "인터넷 주소")
phyc = InStr(1, arr(2), "물리적 주소")
typec = InStr(1, arr(2), "유형")
typec > phyc And phyc > ipc And ipc > 0이면
GetMac=Ucase(Trim(CStr(Mid(arr(3), phyc, typec - phyc))))
종료 조건
종료 조건
기능 종료
%>