协议和服务器

协议和服务器

主要介绍了一些常用的协议。

HTTP(超文本传输协议)

是用于传输网络的协议,网络浏览器连接到网络服务器并使用HTTP请求 HTML 页面和图像以及其他文件,提交表单并上传各种文件。

下面是thm的一个图像解释:
img

http以明文的形式发送数据,因此我们可以使用telnet来充当web浏览器,向web服务器发送数据。

image-20240713101118210

FTP(文件传输协议)

ftp主要用于不同系统不同计算机之间进行文件的传输。ftp默认监听21端口,使用明文进行数据的传输,我们同样可以使用telnet来代替ftp客户端 和ftp服务端进行一个数据的通信。

image-20240713102854955

SYST是查看目标的系统类型。

FTP的PASV有两种模式:

  • 主动:在主动模式下,数据通过源自FTP服务器端口 20 的单独通道发送。
  • 被动:在被动模式下,数据通过来自FTP客户端端口号 1023 以上的单独通道发送。

TYPE A是将文件传输模式转成ASCII。TYPE I是将文件传输模式转成二进制。

我们不能使用简单的客户端(例如telnet)来传输文件,因为ftp会为文件传输创建单独的连接。

FTP服务器软件的示例包括:

image-20240713104903106

get filename下载文件

POP3(邮局协议3)

邮局协议版本 3 (POP3) 是一种用于从邮件投递代理 ( MDA ) 服务器下载电子邮件消息的协议,如下图所示。邮件客户端连接到POP3服务器,进行身份验证,下载新电子邮件消息,然后(可选)删除它们。

img

默认监听端口是110

pop3需要进行身份的验证。

image-20240713113341847

使用STAT我们得到响应 +OK nn mm nn代表收件箱中的电子邮件数量 mm代表收件箱的大小(以八字节为单位)。

LIST提供了服务器上的新消息列表,并RETR 1检索列表中的第一条消息。

SMTP(简单邮件传输协议)

通过互联网传递电子邮件需要以下组件:

  1. 邮件提交代理 (MSA)
  2. 邮件传输代理(MTA)
  3. 邮件投递代理 ( MDA )
  4. 邮件用户代理 ( MUA )

img

流程用thm通俗的话语来解释一下:

  1. 您(MUA)想要发送邮件。
  2. 在您当地的邮局 ( MTA ) 接受邮件之前,邮局员工 (MSA) 会检查邮件是否存在任何问题。
  3. 当地邮局检查邮件目的地并将其发送到正确国家的邮局(MTA )。
  4. 邮局(MTA)将邮件投递到收件人邮箱(MDA)。
  5. 收件人(MUA)会定期检查邮箱是否有新邮件。他们会注意到新邮件,并接收它。

简单传输协议SMTP用于和MTA服务器进行一个通信,SMTP使用的是明文,可以使用telnet客户端连接到SMTP服务器端,并充当发送消息的电子邮件客户端(MUA)。

SMTP监听25端口。

image-20240713112351327

IMAP(互联网消息访问协议)

使用的默认监听端口是143

imap比pop3更复杂一些,它可以让电子邮件在多个设备(和邮件客户端)之间保持同步。简单来讲就是,你在手机上已经读过了这个邮件,那么在电脑上这个邮件将不会显示未读。

imap同样需要进行身份的一个验证。

image-20240713114643588

imap要求每个命令前面都要有一个随机字符,所以fsrm fsrm1 fsrm3 是我们自己设置的。list "" "*"是列出邮件文件夹。 EXAMINE INBOX是查看邮件箱中是否有新的邮件。

Protocol TCP Port Application(s) Data Security
FTP 21 File Transfer 明文(明文)
HTTP 80 Worldwide Web 明文
IMAP 143 Email (MDA) 明文
POP3 110 Email (MDA) 明文
SMTP 25 Email (MTA) 明文
Telnet 23 Remote Access 明文

易遭受的攻击

1.嗅探攻击(网络数据包捕获)

当协议以明文的方式进行传输时,第三方可以对传输的数据进行一个分析,从而可以获取到一些敏感的信息。

只要用户具有适当的权限( Linux上的 root 权限和 MS Windows 上的管理员权限),就可以使用以太网 (802.3) 网卡进行嗅探攻击。有许多程序可用于捕获网络数据包。

1.Wireshark是一个免费的开源图形用户界面 (GUI) 程序,适用于多种操作系统,包括Linux、macOS 和 MS Windows。

2.Tcpdump是一个免费的开源命令行界面 ( CLI ) 程序,已被移植到许多操作系统上运行。

3.Tshark是Wireshark 的CLI替代品。

使用Tcpdump对数据进行获取:

命令如下:sudo Tcpdump port xxx -A

这里举一个例子,A用户使用pop3进行邮件的检查,此时的pop3监听端口是110,那么

sudo Tcpdump port 110 -A

-A是以ascii码的形式显示捕获的数据包。

或者使用Wireshark进行流量分析。如下图所示:
img

防御方法就是对传输的数据进行一个加密,不用明文进行传输。对于远程访问,telnet用ssh进行代替。

2.中间人攻击(MITM)

假设有A,B两个用户 中间人是C

A用户向B用户发送信息,但这个信息被C给劫持了,C再告诉B修改后的信息,B做出反应。

img

防御措施:

1.使用适当的身份验证。

2.对传输的信息进行一个加密或者签名。

传输层安全性(TLS) 可防止这个攻击。

许多工具可以帮助你实施此类攻击,例如EttercapBettercap

3.密码攻击(身份验证攻击)

关于密码攻击大致有三类:

1.进行猜测,有些人会将密码设置成宠物的名字或者出生日期等。

2.字典攻击,拓展了密码猜测,将所有可能的结果放在一个字典中。

3.暴力破解:这种攻击是最彻底、最耗时的攻击,攻击者会尝试所有可能的字符组合,并且这种攻击会快速增长。

hydra是一个不错的暴力破解工具,支持多种协议(pop3,http,ssh,ftp,smtp,imap等)

1
2
3
4
5
6
使用命令:
hydra -l username -P xxx.txt ip service //xxx.txt为密码字典 service为不同的服务
有些情况下,扫描出来的服务并不是默认端口,例如pop3服务扫描出来的端口信息是55007 hydra -l username -P xxx.txt -s PORT ip service
-V 显示详细信息
-d 进行调试
-t n 设置线程 如果不设置的话默认是16

防御

传输层安全性 (TLS)

可以防止密码嗅探和中间人攻击。

img

概括

Protocol TCP Port Application(s) Data Security
FTP 21 File Transfer 明文
FTPS 990 File Transfer 密文
HTTP 80 Worldwide Web 明文
HTTPS 443 Worldwide Web 密文
IMAP 143 Email (MDA) 明文
IMAPS 993 Email (MDA) 密文
POP3 110 Email (MDA) 明文
POP3S 995 Email (MDA) 密文
SFTP 22 File Transfer 密文
SSH 22 Remote Access and File Transfer 密文
SMTP 25 Email (MTA) 明文
SMTPS 465 Email (MTA) 密文
Telnet 23 Remote Access 明文

协议和服务器
http://example.com/2024/07/13/协议和服务器/
作者
FSRM
发布于
2024年7月13日
更新于
2024年7月17日
许可协议