美文网首页
计算机端口的扫描与利用,如何进行侵入和反侵入

计算机端口的扫描与利用,如何进行侵入和反侵入

作者: 长风king | 来源:发表于2020-03-27 21:32 被阅读0次

    前言

    计算机端口相信大家不会陌生,但是你真的了解并熟练使用吗?对于攻击者来讲系统侵入往往会选择网络端口,也就是计算机与外界传输数据的通道,一旦被攻击者利用计算机将会面临风险。

    一、端口扫描

    对于端口扫描的解释下面摘自百度百科:

    端口扫描是指某些别有用心的人发送一组端口扫描消息,试图以此侵入某台计算机,并了解其提供的计算机网络服务类型(这些网络服务均与端口号相关)。端口扫描是计算机解密高手喜欢的一种方式。

    攻击者可以通过它了解到从哪里可探寻到攻击弱点。实质上,端口扫描包括向每个端口发送消息,一次只发送一个消息。接收到的回应类型表示是否在使用该端口并且可由此探寻弱点。

    端口的扫描可以手动也可以使用软件来进行,手动扫描的话需要对计算机的指令非常熟悉,也建议大家使用软件来扫描,端口扫描的工具网络上有很多就不介绍了。

    这里我给大家推荐一个在线的端口扫描工具,只需要输入目标计算机的IP地址和需要扫描的端口号即可,对于初学者来说非常友好,等到后期还是推荐大家使用强大一些的工具。

    工具网址:http://tool.chinaz.com/port/

    通过扫描端口可以知道系统的BUG,从而攻入主机。

    攻击者常使用的端口有8080、21、22、23、25、80、102、110、111、119、135、161、177和399等。

    最常见的8080端口

    端口8080端口同80端口,是被用于WWW代理服务的,可以实现网页浏览,经常在访问某个网站或使用代理服务器的时候,会加上“:8080”端口号。

    端口漏洞:8080端口可以被各种病毒程序所利用,比如Brown Orifice(BrO)特洛伊木马病毒可以利用8080端口完全遥控被感染的计算机。另外,RemoConChubo,RingZero木马也可以利用该端口进行攻击。

    操作建议:一般我们是使用80端口进行网页浏览的,为了避免病毒的攻击,我们可以关闭该端口。

    二、多种端口扫描

    1、TCP connect() 扫描

    这是最基本的TCP扫描。操作系统提供的connect()系统调用,用来与每一个感兴趣的目标计算机的端口进行连接。如果端口处于侦听状态,那么connect()就能成功。否则,这个端口是不能用的,即没有提供服务。

    这个技术的一个最大的优点是,你不需要任何权限。系统中的任何用户都有权利使用这个调用。另一个好处就是速度。如果对每个目标端口以线性的方式,使用单独的connect()调用,那么将会花费相当长的时间,你可以通过同时打开多个套接字,从而加速扫描。

    使用非阻塞I/O允许你设置一个低的时间用尽周期,同时观察多个套接字。但这种方法的缺点是很容易被发觉,并且被过滤掉。目标计算机的logs文件会显示一连串的连接和连接是出错的服务消息,并且能很快的使它关闭。

    2、TCP SYN扫描

    这种技术通常认为是“半开放”扫描,这是因为扫描程序不必要打开一个完全的TCP连接。扫描程序发送的是一个SYN数据包,好象准备打开一个实际的连接并等待反应一样(参考TCP的三次握手建立一个TCP连接的过程)。

    一个SYN|ACK的返回信息表示端口处于侦听状态。一个RST返回,表示端口没有处于侦听态。如果收到一个SYN|ACK,则扫描程序必须再发送一个RST信号,来关闭这个连接过程。这种扫描技术的优点在于一般不会在目标计算机上留下记录。但这种方法的一个缺点是,必须要有root权限才能建立自己的SYN数据包。

    3、TCP FIN 扫描

    有的时候有可能SYN扫描都不够秘密。一些防火墙和包过滤器会对一些指定的端口进行监视,有的程序能检测到这些扫描。相反,FIN数据包可能会没有任何麻烦的通过。这种扫描方法的思想是关闭的端口会用适当的RST来回复FIN数据包。

    另一方面,打开的端口会忽略对FIN数据包的回复。这种方法和系统的实现有一定的关系。有的系统不管端口是否打开,都回复RST,这样,这种扫描方法就不适用了。并且这种方法在区分Unix和NT时,是十分有用的。

    4、IP段扫描

    这种不能算是新方法,只是其它技术的变化。它并不是直接发送TCP探测数据包,是将数据包分成两个较小的IP段。这样就将一个TCP头分成好几个数据包,从而过滤器就很难探测到。但必须小心。一些程序在处理这些小数据包时会有些麻烦。

    5、TCP 反向 ident扫描

    ident 协议允许(rfc1413)看到通过TCP连接的任何进程的拥有者的用户名,即使这个连接不是由这个进程开始的。因此你能,举个例子,连接到http端口,然后用identd来发现服务器是否正在以root权限运行。这种方法只能在和目标端口建立了一个完整的TCP连接后才能看到。

    6、FTP 返回攻击

    FTP协议的一个有趣的特点是它支持代理(proxy)FTP连接。即入侵者可以从自己的计算机和目标主机的FTP server-PI(协议解释器)连接,建立一个控制通信连接。然后,请求这个server-PI激活一个有效的server-DTP(数据传输进程)来给Internet上任何地方发送文件。对于一个User-DTP,这是个推测,尽管RFC明确地定义请求一个服务器发送文件到另一个服务器是可以的。给许多服务器造成打击,用尽磁盘,企图越过防火墙”。

    我们利用这个的目的是从一个代理的FTP服务器来扫描TCP端口。这样,你能在一个防火墙后面连接到一个FTP服务器,然后扫描端口(这些原来有可能被阻塞)。如果FTP服务器允许从一个目录读写数据,你就能发送任意的数据到发现的打开的端口。

    对于端口扫描,这个技术是使用PORT命令来表示被动的User DTP正在目标计算机上的某个端口侦听。然后入侵者试图用LIST命令列出当前目录,结果通过Server-DTP发送出去。如果目标主机正在某个端口侦听,传输就会成功(产生一个150或226的回应)。否则,会出现"425

    Can't build data connection: Connection refused."。然后,使用另一个PORT命令,尝试目标计算机上的下一个端口。这种方法的优点很明显,难以跟踪,能穿过防火墙。主要缺点是速度很慢,有的FTP服务器最终能得到一些线索,关闭代理功能。

    三、查看端口

    有的攻击者还会利用软件的BUG来间接的进入目标主机,我们下面来看看如何查看我们的端口那些被占用了。

    1、以管理员身份运行命令提示符

    2、输入命令:netstat -ano,就会出现所有的端口。我们选择一个被占用的端口,例如7680。

    3、查看被占用端口对应的PID,输入命令:netstat -aon|findstr "7680",回车,记下最后一位数字,即PID,这里是2936。

    4、继续输入tasklist|findstr "2936",回车,查看是哪个进程或者程序占用了7680端口,结果是:svchost.exe

    5、我们打开任务管理器,查看进程,找到2936。可以看出是和命令查看是一致的。

    6、结束进程的话可以再任务管理器中,或者是在cmd的命令窗口中输入:taskkill /f /t /im Tencentdl.exe。

    四、端口攻击技术

    五、扫描工具下载

    我已经给你们准备好了,都是单文件的小工具,分别是扫描之王nmap、高速全端口扫描工具御剑Tcp扫描,有特殊功能的portready。

    下载链接:https://pan.baidu.com/s/1pI3kUg65Efjcy7gv4SbXgg

    提取码:ztoc


    目前我做了一款最新版的黑客工具包关注微信公众号:拉普拉斯妖怪,获取相关内容

    相关文章

      网友评论

          本文标题:计算机端口的扫描与利用,如何进行侵入和反侵入

          本文链接:https://www.haomeiwen.com/subject/floruhtx.html