信息安全部 – 基础培训第3讲

一、常见IP地址和端口

1.常用IP地址

  • 本机:127.0.0.1(localhost)
  • 广播地址:255.255.255.255


2.常见端口

  • Web(HTTP):80
  • Web(HTTPS):443
  • Tomcat:8080
  • FTP(文件传输协议):21
  • SSH(安全Shell):22
  • Microsoft RD(微软远程桌面):3389
  • Mircosoft SMB(服务器消息块):445
  • MySQL:3306
  • 通过端口扫描工具,可以推测目标主机上运行了哪些进程,进而利用这些应用程序的漏洞选择适当的攻击方式。

二、OSI参考模型与TCP/IP协议族

  • 计算机网络的体系结构:从最高层的各个应用到最底层的物理连接的整个体系。
  • OSI参考模型:OSI参考模型是ISO规定的标准,共七层,从高到低依次为:
    • 应用层(Application)
    • 表示层(Presentation)
    • 会话层(Session)
    • 运输层(Transport)
    • 网络层(Network)
    • 数据链路层(Data link)
    • 物理层(Physical)
  • 因为OSI过于复杂,所以互联网的事实上标准是TCP/IP协议族,TCP/IP协议族并不是单独指TCP/IP协议,而是一个庞大的协议家族,共四层,从高到低依次为:
    • 应用层(Application)
    • 运输层(Transport)
    • 网络层(Network)
    • 链路层(Link)
  • 为了研究方便,使用的是五层协议,从高到低依次为:
    • 应用层(Application)
    • 运输层(Transport)
    • 网络层(Network)
    • 数据链路层(Data Link)
    • 物理层(Physical)
  • TCP和UDP工作于运输层、IP工作于网络层、HTTP等协议工作于应用层。
  • IP地址是网络层的地址,MAC地址是数据链路层的地址。
  • 物理层传输的单元是比特,数据链路层是MAC帧,网络层是IP数据报,运输层是TCP报文。

三、机器语言、汇编语言和高级语言

  • 机器语言:直接在机器上执行的指令,这种指令和计算机的体系结构密切相关,一般而言只有相同体系结构的计算机的各种指令(我们称为指令集)才相同。
  • 汇编语言:实际上机器语言就是由0和1组成的,不利于程序员编程,所以有了汇编语言。汇编语言就是利用一些容易记忆的符号来符号化机器指令,变成汇编指令。但是汇编语言源程序是不能直接运行的,要经过汇编程序处理之后才能运行,这个过程称为汇编。将机器语言转化为汇编语言的过程称为反汇编。
  • 高级语言:汇编语言编程还是和计算机的体系结构相关的,随着软件技术发展又出现了高级语言。高级语言使用的是类似英语的语法进行编程,而且很多高级语言可以实现平台无关(下面具体介绍原理)。高级语言源程序同样不能直接运行,需要经过程序转化为机器语言* 才能执行,这个过程称为编译或解释。

四、计算机执行指令的过程

  • 程序:在内存上
  • 控制器取指令、分析指令
  • 运算器执行指令

五、高级语言的分类

  • 编译:编译程序一次性将高级语言转化为机器语言,此过程称为编译。常见的编译型语言:C语言、C++、Java、C#、Objective-C等。
  • 解释:解释程序读取一行就转化为对应的机器语言执行,执行之后再解释下一行,此过程称为解释。常见的解释型语言:HTML、JavaScript、Python、PHP等。
  • 强类型、弱类型。

六、汇编语言和C语言在逆向工程中的地位