黑客必备基础知识
一次性进群,长期免费索取教程,没有付费教程。
教程列表见微信公众号底部菜单
进微信群回复公众号:微信群;QQ群:460500587
微信公众号:计算机与网络安全
ID:Computer-network
有的人会认为黑客掌握了很高深的计算机技术,其实不然,真正掌握了高深计算机技术的只有很少一部分,有的黑客只需掌握黑客的专业术语、网络应用技术以及常用的DOS命令,即可利用各种不同的黑客工具来入侵目标计算机。
一、网络应用技术
掌握了网络应用技术,黑客就能对网络发起攻击。所谓网络协议,就是指为计算机网络中进行数据交换而建立的规则、标准或约定的集合。常见的网络协议有TCP/IP协议族、ARP协议、ICMP协议和SMTP协议,除此之外,还有UDP协议、IPX/SPX协议等。
1、什么是TCP/IP协议?
TCP/IP协议又称网络通信协议,它定义了计算机接入Internet的方式以及数据传输的标准。
TCP/IP协议,全称是Transmission Control Protocol/Internet Protocol,中文译为传输控制协议/Internet互联协议,又叫网络通信协议。众所周知,如今计算机接入Internet后都要设置TCP/IP,因此TCP/IP协议是Internet最基本的协议,也是国际Internet的基础。TCP/IP定义了计算机如何连入Internet,以及数据如何在它们之间传输的标准。
TCP/IP包含两层协议,TCP协议和IP协议。其中高层的TCP协议负责收集信息或者把文件拆分成更小的数据包。发送端将这些数据包通过网络传送到接收端的TCP层,接收端的TCP层把数据包还原为原始文件;而低层的IP协议则处理每个数据包的地址部分,使得网络上的网关计算机能够识别数据包的地址并进行路由选择,让这些数据包能够正确地到达目的地。
2、什么是ARP协议?
ARP协议又称地址解析协议,它能够将已知的IP地址解析成与之对应的物理MAC地址。
在TCP/IP网络环境下,每个主机都分配了一个32bit(比特)的IP地址(如220.248.138.166),它是在网络中标识主机的一种逻辑地址,如果想要成功地将报文(网络中主机之间交换与传输的数据单元)传送给目的主机,则必须知道目的主机的物理地址,此时就可以使用ARP协议将目的主机的IP地址转换为物理地址。简单地说,ARP协议就是主机在发送报文之前将目标主机的IP地址转换成与之对应的MAC地址的过程。
SMTP协议,即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。SMTP协议属于TCP/IP协议族,它帮助每台计算机在发送或中转信件时找到下一个目的地,通过SMTP协议所指定的服务器就可以把电子邮件寄到收信人的服务器上了,整个过程只需要几分钟。
3、什么是ICMP协议?
ICMP协议又称控制报文协议,它用于在IP主机、路由器之间传递控制消息,并能将出错报文返回发送数据的主机。
ICMP,即控制报文协议,它是TCP/IP协议族中的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息包括网络通不通、主机是否存在、路由是否可用等网络本身的消息,这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着非常重要的作用。
ICMP在网络中提供了一致易懂的出错报告信息,将发送的出错报文返回到发送数据的主机。ICMP唯一的功能是报告问题而不是解决问题,解决问题的任务由发送方完成。
正是由于这一特点使得它非常容易被用于攻击网络上的路由器和主机。例如"Ping Of Death"攻击,在还没有发布限制发送ICMP数据包大小的补丁之前,操作系统规定了ICMP数据包的最大尺寸不超过64KB,因此"Ping Of Death"根据这一规定向主机发起攻击。其工作原理是:如果ICMP数据包的尺寸超过64KB上限时,主机出现内存分配错误,导致TCP/IP堆栈崩溃,致使主机死机。
洪水攻击是现在黑客比较常用的一种攻击技术,特点是实施简单,威力巨大,大多是无视防御的,常见的洪水攻击包含MAC泛洪,网络泛洪和应用程序泛洪。
MAC泛洪是指攻击者进入局域网内,将假冒的源MAC地址和目的MAC地址数据帧发送到以太网上,使得假冒的源MAC地址和目标MAC地址塞满交换机的MAC地址表,导致交换机无法正确地传送数据。
网络泛洪包括Smurf和DDos,其中Smurf是指攻击者假冒ICMP广播ping,如果路由器没有关闭定向广播,那攻击者就可以在某个网络内对其他网络发送定向广播ping,网络中的主机越多,造成的结果就越严重,因为每个主机默认都会响应这个ping,导致链路流量过大而拒绝服务。而DDos是指攻击者将DDos控制软件安装在连接到Internet的系统中并使其感染其他系统,然后攻击者将攻击指令发送给DDos控制软件,让受DDos控制的系统向某个IP发送大量假冒的网络流量,然后受攻击者的网络将被这些假的流量所占据,从而无法为他们的正常用户提供服务。
应用程序泛洪的目的就是消耗应用程序或者系统资源,常见的就是垃圾邮件。
二、DOS命令
DOS命令是黑客必须掌握的基础知识之一,所谓DOS命令,就是DOS操作系统的命令,它是一种面向磁盘的操作命令。它主要包括目录操作类命令、磁盘操作类命令、文件操作类命令和其他命令。黑客在入侵目标主机的过程中经常会使用这些命令进行探测并获取目标主机信息,例如ping、netstat和net等命令。
1、如何使用ping命令测试网络连接?
利用Ping+空格+IP地址可以测试是否接入局域网,利用Ping+空格+网址可以测试是否接入Internet。
Ping命令是Windows系统自带的一个用于检查网络是否能够连通的命令。该命令可以很好地帮助用户分析判定网络故障。安装了TCP/IP协议的计算机均可使用该命令。Ping命令的主要作用是通过发送数据包并接收应答信息来检测两台计算机之间的网络是否连通。当网络出现故障时,可以用这个命令预测故障和确定故障地点。Ping命令成功只是说明当前主机与目的主机之间存在一条连通的路径。如果不成功,则考虑网线是否连通、网卡设置是否正确、IP地址是否可用等。需要注意的是:成功地与另一台主机进行一次或两次数据报交换并不表示TCP/IP配置就是正确的,本地主机与远程主机必须执行大量的数据报交换,才能确信TCP/IP的正确性。
步骤1:单击“运行”命令,单击桌面左下角的“开始”按钮,在弹出的“开始”菜单中单击“运行”命令。
步骤2:输入cmd命令,弹出“运行”对话框,在“打开”右侧的文本框中输入cmd命令,然后单击“确定”按钮或按【Enter】键。
步骤3:查看是否安装TCP/IP协议,打开“命令提示符”窗口,输入"cd\"命令后按【Enter】键进入C盘根目录下,然后输入"ping 127.0.0.1"后按【Enter】键,如果能ping通则说明本地计算机已经成功安装TCP/IP协议。
Ping命令的含义:用户在执行了Ping命令之后会有一个返回的命令,如果显示“来自……”,则说明Ping通了;如果显示的是“请求超时”,则说明未能Ping通,存在故障,除此之外,还可以根据命令提示符窗口中显示的提示信息查看网络的故障。
步骤4:查看是否接入局域网,若要测试本地计算机是否接入局域网,可在“命令提示符”窗口中输入“ping+空格+IP地址”进行测验,该IP地址必须为所在局域网中其他任意一台计算机的IP地址,如输入"ping 192.168.1.100",若Ping通则说明已接入局域网,若未Ping通则说明未接入局域网。
步骤5:查看是否接入Internet,若要测试本地计算机是否接入Internet,可在“命令提示符”窗口中输入“ping+空格+网址”进行测验,如输入"ping www.baidu.com",若能Ping通则说明已接入Internet,若没有Ping通则说明未接入Internet。
Ping命令参数解析:Ping命令常用的参数有-a、-n count、-t,它们的含义分别如下所示:
-a:将输入IP地址解析为计算机NetBIOS名。
-n count:发送count指定的ECHO(应答协议)数据包数。通过这个命令可以自己定义发送的个数,-count对衡量网络速度很有帮助。如果未设定count值,则默认值为4。
-t:一直Ping指定的远程计算机,直到从键盘按下Ctrl+C中断。
2、如何使用nbtstat命令获取主机的NetBIOS信息?
利用nbtstat-a+IP可查看指定目标计算机NetBIOS名称,利用nbtstat-n可查看本地计算机的NetBIOS名称。
nbtstat命令用于查看基于TCP/IP的NetBIOS协议统计资料、本地计算机和远程计算机的NetBIOS名称表和NetBIOS名称缓存,该命令可以刷新NetBIOS名称缓存和使用Windows Internet Naming Server(WINS)注册的名称。
步骤1:查看目标计算机的NetBIOS名称,打开“命令提示符”窗口,输入"cd\"命令后按【Enter】键进入C盘根目录下,然后输入"nbtstat-a 192.168.1.105"后按【Enter】键,用于查看IP地址为192.168.1.105的计算机NetBIOS名称表。
步骤2:查看本地计算机的NetBIOS名称,如果在C盘根目录下输入"nbtstat-n"后按【Enter】键,则用于显示本地计算机的NetBIOS名称表。
nbtstat命令参数解析:nbtstat命令的格式为nbtstat[-a RemoteName][-a IPAddress][-c][-n][-r][-R][-RR][-s][-S][interval],该命令所包含的参数含义如下:
-a RemoteName:显示远程计算机的NetBIOS名称表,其中,RemoteName是远程计算机的NetBIOS计算机名称。NetBIOS名称表是与运行在该计算机上的应用程序相对应的NetBIOS名称列表。
-a IPAddress:显示远程计算机的NetBIOS名称表,其名称由远程计算机的IP地址指定(以小数点分隔)。
-c:显示NetBIOS名称缓存内容、NetBIOS名称表及其解析的各个地址。
-n:显示本地计算机的NetBIOS名称表。Registered的状态表明该名称是通过广播还是WINS服务器注册的。
-r:显示NetBIOS名称解析统计资料。在配置为使用WINS且运行Windows 或Windows Server 操作系统的计算机上,该参数将返回已通过广播和WINS解析和注册的名称号码。
-R:清除NetBIOS名称缓存的内容并从Lmhosts文件中重新加载带有#PRE标记的项目。
-RR:释放并刷新通过WINS服务器注册的本地计算机的NetBIOS名称。
-s:显示NetBIOS客户端和服务器会话,并试图将目标IP地址转化为名称。
-S:显示NetBIOS客户端和服务器会话,只通过IP地址列出远程计算机。
interval:重新显示选择的统计资料,可以在每个显示内容之间中断interval中指定的秒数。按【Ctrl+C】停止重新显示统计信息。如果省略该参数,nbtstat将只显示一次当前的配置信息。
3、如何使用netstat命令查看网络状态?
利用netstat-a命令可以查看本地计算机的连接和监听端口,利用netstat-e可查看关于以太网的统计数据。
netstat命令显示网络连接、路由表和网络接口信息,可以让用户得知目前都有哪些网络连接正在运行。
步骤1:查看本地计算机的连接和监听端口,打开“命令提示符”窗口,在C盘根目录下后输入"netstat-a"后按【Enter】键,用于查看本地计算机的所有连接和监听端口。
步骤2:查看关于以太网的统计数据,如果要查看关于以太网的统计数据,可以在C盘根目录下输入"nbtstat-n"后按【Enter】键。
netstat命令参数解析:netstat命令的格式为netstat[-a][-b][-e][-n][-o][-p proto][-r][-s][-v][interval],该命令所包含的参数含义如下:
-a:显示本地计算机所有的连接和端口。
-b:显示包含创建每个连接或监听端口的可执行组件。
-e:显示以太网统计的数据,该参数可以与-s结合使用。
-n:以网络IP代替名称,显示出网络连接情形。
-o:显示与每个连接相关的所属进程ID。
-p proto:显示pro指定的协议的连接,proto可以是TCP或UDP。
-r:显示路由选择表。
-s:在机器的默认情况下显示每个协议的配置统计,包括TCP、UDP、IP、ICMP等。
-v:与-b一起使用时将显示包含为所有可执行组件创建连接或监听端口的组件。
interval:每隔interval秒重复显示所选协议的配置情况,直至按【Ctrl+C】组合键中断为止。
4、如何使用net命令管理网络资源、用户信息?
利用net view命令查看共享资源列表,利用netstat use查看本地计算机的网络连接,利用netstat user查看本地计算机上的用户账户信息。
net命令包含了管理网络环境、服务、用户、登录等Windows操作系统中大部分重要的管理功能。使用该命令可以轻松地管理本地或者远程计算机的网络环境,以及各种服务程序的运行和配置,或者进行用户管理和登录管理等。
步骤1:查看共享资源列表,打开“命令提示符”窗口,在C盘根目录下后输入"net view"后按【Enter】键,查看计算机列表或制定计算机的共享资源列表。
步骤2:查看本地计算机的网络连接,如果要查看本地计算机的网络连接,可以在C盘根目录下输入"net use"后按【Enter】键。
步骤3:查看本地计算机上的用户账户信息,如果想查看本地计算机上的用户账户信息,可以在C盘根目录下输入"net user"后按【Enter】键。
tracert命令:tracert是路由跟踪实用程序,用于确定IP数据报访问目标所采取的路径。tracert命令用IP生存时间字段和ICMP错误消息来确定从一个主机到网络上其他主机的路由,其格式为:tracert[-d][-h maximum_hops][-j host-list][-w timeout]target_names。
5、如何使用ftp命令进入ftp子环境下载文件?
利用ftp命令即可进入ftp子环境,若要下载服务器中的文件,则需要输入对应的用户名及口令。
ftp命令是网络用户使用最频繁的命令之一,使用ftp命令可以将文件传送到正在运行ftp服务的远程计算机,或从正在运行ftp服务的远程计算机上传送文件,它们可交互使用。
如果想进入ftp子环境界面进行操作,则可以在C盘根目录下输入ftp命令后按【Enter】键即可。
ftp命令参数解析:ftp的命令格式为:ftp[-v][-d][-I][-n][-g][主机名],各参数的含义如下。
-v:显示远程服务器的所有响应信息。
-d:使用调试方式,显示在客户端和服务器之间传递的所有ftp命令。
-I:传送多个文件时关闭交换提示。
-n:限制ftp的自动登录,即不使用。
-g:取消全局文件名。
6、如何使用ipconfig命令查看当前计算机的TCP/IP设置?
利用ipconfig命令可查看当前计算机的IP地址和子网掩码等信息,若要查看完整信息,则可利用ipconfig/all命令。
ipconfig命令用于显示当前计算机的TCP/IP配置的设置值。这些信息一般用来检验人工配置的TCP/IP设置是否正确。
步骤1:输入ipconfig命令,打开“命令提示符”窗口,在C盘根目录下后输入ipconfig后按【Enter】键,用于查看当前计算机的IP地址、子网掩码和每个网卡的默认网关值。
步骤2:输入ipconfig/all命令,若要查看本地计算机的完整TCP/IP设置(IP地址、子网掩码和每个网卡的默认网关值及MAC地址等)时,在C盘根目录下输入"ipconfig/all"后按【Enter】键。
7、常见的黑客入侵方式有哪些?
常见的黑客入侵方式有数据驱动攻击、伪造信息攻击、针对信息弱点攻击以及远端操纵等方式。
一旦将计算机接入Internet中,就必须对黑客的入侵方式、攻击原理和攻击过程有深入且详细的了解,以防范黑客入侵自己的计算机。常见的黑客入侵方式有数据驱动攻击、非法利用系统文件、伪造信息攻击等,下面进行详细的介绍。
数据驱动攻击:数据驱动攻击是攻击者通过向某个程序发送数据,以产生非预期结果的攻击,通常为攻击者给出访问目标系统的权限,数据驱动攻击分为缓冲区溢出攻击、格式化字符串攻击、输入验证攻击、同步漏洞攻击、信任漏洞攻击等。
伪造信息攻击:攻击者通过发送伪造的路由信息构造系统源主机和目标主机的虚假路径,从而使流向目标主机的数据包均经过攻击者的系统主机,这样就能给攻击者提供敏感信息和有用的密码。
针对信息弱点攻击:IP地址的源路径选项允许IP数据包自己选择一条通往系统目的主机的路径。设想攻击者试图与防火墙后面的一个不可到达的主机A连接,他只需在送出的请求报文中设置IP源路径选项,使报文有一个目的地址指向防火墙,而最终地址是主机A。当报文到达防火墙时被允许通过,因为它指向防火墙而不是主机A。防火墙的IP层处理该报文的源路径被改变并发送到内部网上,报文就这样到达了不可到达的主机A。
远端操纵:默认的登录界面、配置和客户文件是另一个问题区域,它们提供了一个简单的方法来配置一个程序的执行环境。这有时会引起远程操作攻击:在被攻击主机上启动一个可执行程序,该程序显示一个伪造的登录界面。当用户在这个伪装的界面上输入登录信息后,该程序将用户输入的信息传送到攻击者主机,然后关闭界面给出“系统故障”的提示信息,要求用户重新登录,此后才会出现真正的登录界面。
对ICMP报文攻击:网络安全的重要因素之一就是人。无数的历史事实表明:堡垒最容易从内部攻破,因人为的失误,如WWW服务器系统的配置差错,普通用户使用权限扩大,这样就给黑客造成了可乘之机。黑客常利用系统管理员的失误收集攻击信息,例如使用finger、netstat、arp、mail、grtp等命令和一些黑客工具软件。
针对源路径选项的弱点攻击:对ICMP报文的攻击尽管比较困难,但黑客们有时也使用ICMP报文进行攻击。重定向消息可以改变路由列表,路由器可以根据这些消息建议主机走另一条更好的路径。攻击可以有效地利用重定向消息把连接转向一个不可靠的主机或路径,或者使所有的报文通过一个不可靠主机来转发。对付这种威胁的方法是对所有的ICMP重定向报文进行过滤,有的路由软件可对此进行配置。单纯地抛弃所有的重定向报文是不可取的,因为主机和路由器常常会用到它们,如一个路由器发生故障时。
以太网广播攻击:现在许多Internet上的站点都使用UNIX操作系统,攻击者会设法先登录到一台UNIX主机上,通过操作系统的漏洞来取得系统特权,然后再以此为据点访问其余的主机,这种做法称为跳跃。黑客们在达到目的主机之前往往会这样跳几次。这样攻击的网络即使发现了黑客是从何处向自己发起了攻击,管理人员也很难顺藤摸瓜找回去,更何况黑客在取得某台主机的系统特权后,可以在退出时删除系统日志把“藤”割断。只要能够登录到UNIX系统上,就能相对容易地成为超级用户,这使得它同时成为黑客和安全专家们的关注点。
微信公众号:计算机与网络安全
ID:Computer-network