zoukankan      html  css  js  c++  java
  • 抓包来看ftp状态码

    1.quit退出

    客户端输入退出命令:

    退出的抓包数据交换过程:

    2.用户登录,输入正确用户名和错误用户名都是返回331请求输入密码,这里不再将错误用户名的抓包数据交换过程截图。

    数据交换过程:

    服务器端准备好的数据格式(状态码 消息):

    客户端发送用户名格式(USER 用户名):

    服务器端返回请求输入密码格式(状态码 消息):

    客户端发送密码格式(PASS 密码):

    服务器端返回正确登录消息(状态码 消息):

    如果登录失败后在ftp> 下输入open dstip,user xxx的数据交换格式同上。

    open dstip就相当于发起一个新的连接。

    user xxx就相当于发送USER xxx,然后会要求输入密码。

    3、目录检索,真实的ftp传输是有控制通道和数据通道的:

    输入命令:

    客户端发送命令请求:

    服务器端相应命令请求状态:

    服务器端相应结果:

    服务端响应数据发送完毕:

    如果用户未登录,服务器端会请求客户端输入用户密码:

    4、目录切换

    如果客户端未登录,则服务器端会请求客户端输入用户密码:

    用户已经登录的状态:

    目录切换成功:

    目录切换失败:

    5、打印当前目录:

    6.文件下载

    基本数据交换过程都一样:

    1)客户端请求端口

    2)服务器回应端口可用

    3)客户端请求命令

    4)服务器回应文件状态和文件大小

    5)服务器开始发送文件内容

    6)服务器发送文件发送完毕状态

    若服务器读取文件失败时,服务器会响应错误消息:

    7.文件上传:

    若服务器无法写文件,服务器会响应失败消息:

    正常的文件上传过程:

    1)客户端请求端口

    2)服务器回应端口可用

    3)客户端请求命令

    4)服务器回应可以发送了

    5)客户端发送文件内容

    6)服务器发送文件发送完毕状态

  • 相关阅读:
    css实现自适应正方形
    遇到稍微复杂的场景发现css功力不足
    聊聊缓存
    git学习笔记
    font-size:0的作用
    移动端高清屏适配方案
    react生命周期
    javascript写定时器
    js判断字符串是否以某个字符串开头和js分解字符串
    json.parse()和json.stringify()
  • 原文地址:https://www.cnblogs.com/owasp/p/5539181.html
Copyright © 2011-2022 走看看