Эта процедура является специальным методом. Сфера использования относительно ограничена и существует определенная степень опасности. Изучил некоторые методы бэкдора asp. Ниже приведен код программы.
<%
тусклый удаленный адрес
если Request.ServerVariables("HTTP_X_FORWARDED_FOR")=пусто, то
Remoteaddr=Request.ServerVariables("REMOTE_ADDR")
еще
Remoteaddr = Request.ServerVariables («HTTP_X_FORWARDED_FOR»)
конец, если
Response.Write(GetMac(remoteaddr))
'Из-за чтения MAC-адреса сетевой карты определенного IP-адреса
«Эта программа считывает MAC-адрес определенного IP-адреса, вызывая команду arp и запрашивая локальную таблицу arp.
«При использовании этой программы обратите внимание на следующее:
' Для этой программы требуются два компонента: «WSCRIPT.SHELL» и «Scripting.FileSystemObject». Убедитесь, что ваш сервер может нормально использовать эти два компонента.
' Эта программа должна вызвать программу cmd.exe. Убедитесь, что гостевая учетная запись IIS имеет права доступа к программе.
' Этой программе требуются временные файлы для сохранения результатов. Убедитесь, что гостевая учетная запись IIS имеет разрешения на запись во временный каталог.
'
функция GetMac(IP)
При ошибке Возобновить Далее
Тусклый скрипт
Тусклый 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()
oFile.Close
Если (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 И phyc > ipc И ipc > 0 Тогда
GetMac=Ucase(Trim(CStr(Mid(arr(3), phyc, typec - phyc))))
Конец, если
Конец, если
Конечная функция
%>