zoukankan      html  css  js  c++  java
  • 网络空间安全概论 学习笔记(二)

    第五章:网络攻防技术

    网络入侵的前提:了解目标系统可能存在的安全缺陷和漏洞
    侵入过程和信息收集相辅相成,在侵入过程中进一步掌握其他更多信息,改变侵入方式。

    5.1:网络信息收集技术——网络踩点

    网络踩点:了解目标隐私信息、网络环境、安全状况;寻找目标的薄弱环节。

    常用手段:

    • Google Hacking:利用搜索引擎找出漏洞,关键:提取关键字,搜索技巧;

    • Whios服务:
      • DNS Whios查询:一般在iana查询域名的whois服务机构,进一步得到域名注册商,在注册商查询得注册细节;
      • IP Whios查询:ASO的任意一个RIR中查询得到其归属,在对应RIR中查询到进一步细节;
    • DNS查询:通过不限制DNS区域传送的服务器,获取区域数据库的拷贝,得到内部网络的完整网络导航图。

    对策:

    • Google Hacking:

      • 公共媒体上删除不想暴露的信息。
      • 清除敏感信息;不发布真实个人信息。
      • 及时更新漏洞补丁。
    • Whios服务:

      • 及时更新管理性事务联系人信息;使用虚拟人名保护信息。
      • 使用私密注册服务。
    • DNS查询:对外的DNS服务器清除敏感信息、配置为禁止DNS区域传送。

    5.2:网络信息收集技术 ——网络扫描

    网络扫描:通过扫描技术收集信息,找到入侵漏洞。

    • 主机扫描:
      • 原理:向目标系统发送数据包,分析响应结果。
      • 常用技术:ICMP Ping扫描;TCP ACK Ping扫描;TCP SYN Ping扫描;UDP Ping扫描
      • 防范:使用入侵检测系统和防火墙,检测扫描行为;根据需求限制ICMP通信类型。
    • 端口扫描:
      • 原理:连接目标TCP/UDP端口,找到监听状态的服务。
      • 常用技术:不同类型的TCP/UDP扫描。
      • 防范:较难防范。使用入侵检测系统监测;开启防火墙;关闭不必要的服务。
    • 操作系统类型辨识:
      • 原理:根据操作系统和网络服务差异找到漏洞。
      • 常用技术:TCP/IP协议栈指纹分析,网络扫描工具nmap。
      • 防范:无法完全阻止。使用端口扫描检测工具发现探查行为;开启防火墙。
    • 漏洞扫描:
      • 原理:利用漏洞造成的差别识别系统、发现漏洞。
      • 常用技术:Nessus漏洞扫描软件。
      • 防范:在黑客之前扫描、修补漏洞;确保软件来源安全、保持更新;使用入侵检测系统监测;开启防火墙,审查防火墙配置。

    5.3:网络信息收集技术 ——网络查点

    网络查点:对目标发起主动连接和查询,针对性收集信息。
    网络服务旗标抓取:利用客户端工具连接至网络服务,搜集关键信息。

    通用网络服务:

    • FTP文件传输
    • POP3
    • SMTP电子邮件收发服务

    以FTP服务查点为例:

    Windows平台网络服务:

    • NETBOIS网络查点:
      • 使用 net view /domain 命令,列出网络上的工作组和域。
      • 使用nltest工具获得用户登陆信息。
      • 使用nbtstat工具查点NetBOIS名字表,获得详细信息。
    • SMB会话查点:
      • 使用空口令字和内建的匿名用户,连接隐蔽共享卷IPC$(进程间通信)
    net use \192.168.0.3
    IPC$ "" /u:""
    
    - 查点权限配置错误的文件共享卷
    
    net view \192.168.0.3
    

    防范:

    • 关闭不必要的服务和端口,关闭SMB。
    • 关闭不必要共享、默认共享。
    • 限制匿名空连接。

    5.4:Windows系统渗透基础

    控制注入攻击:

    • 原理:冯诺伊曼体系中,没有在内存中严格区分数据和指令
    • 方法:劫持数据流,执行目标系统上的任意代码,进而操控系统。
    • 典型劫持攻击技术:缓冲区溢出、格式化字符串漏洞、整数溢出、指针释放后再次使用等。

    缓冲区溢出:

    • 原理:利用缺乏严格边界检查的数据填充过程,覆盖相邻内存空间合法数据,改变程序执行流程。
    • 方式:堆溢出和栈溢出。
    • 基本栈溢出攻击(覆盖函数返回地址):针对函数返回地址在栈中的位置,进行缓冲栈溢出,跳转到有恶意指令的指定地址

    Metasploit渗透框架:

    • 使用 search 漏洞名称 搜索对应攻击模块,再用 use 选择模块。
    • 使用 set payload 选择攻击负载模块。
    • 配置攻击及攻击负载模块参数。
    • 使用 exploit 实施渗透攻击,破解目标系统。

    其他远程渗透途径:

    • 认证欺骗
    • 利用客户端软件漏洞
    • 利用设备驱动漏洞

    防御措施:

    5.5:Internet 协议安全问题

    网络安全五大属性:

    • 网络安全CIA属性:机密性、完整性、可用性。
    • 补充属性:真实性、不可抵赖性。

    网络基本攻击模式:

    • 截获:嗅探、监听。
    • 篡改:数据包篡改。
    • 中断:拒绝服务。
    • 伪造:欺骗。

    TCP/IP网络协议安全分析

    • 网络层:IP源地址欺骗

      • 路由器只根据目标IP地址进行路由转发,不对源IP地址做验证
      • 任何人都可以使用原始套接字构造任易源IP地址的数据报
      • 相应数据报也将被发回伪造的源IP地址
      • 通常用于发起匿名Dos攻击
    • 传输层:TCP RST攻击

      • 创建TCP协议的过程:TCP三次握手
      • TCP RST攻击:基于得知 IP地址、目标IP地址、TCP端口号、序列号和确认号

    应用层协议安全分析

    • DNS欺骗
      • 嗅探DNS请求包。
      • 注入假冒DNS:伪造DNS应答包;拦截,修改DNS应答包。
    • 拒绝式服务攻击DoS
      • 原理:用超出目标处理能力的数据消耗系统资源、带宽资源或造成缓冲区溢出错误,使网络服务瘫痪。
      • 分类:弱点攻击;洪泛攻击。

    防范措施:

    • 网络接口层:
      • 监测和防御网络威胁。
      • 对网关路由器等关键网络节点设备进行安全防护
      • 优化网络设计,增强链路层加密强度。
    • 网络层:
      • 采用多种检测和过滤技术来发现和阻断网络中欺骗攻击。
      • 增强防火墙、路由器和网关设备的安全策略。
      • 关键服务器使用静态绑定IP-MAC映射表、使用IPsec协议加密通讯等预防机制。
    • 传输层:加密传输和安全控制机制。
    • 应用层:
      • 应用层加密。
      • 用户级身份认证,数字签名技术。
      • 授权和访问控制技术。
      • 审计、入侵检测。

    5.6:基本的Web安全

    跨站脚本XSS攻击

    • 原理:利用漏洞注入恶意指令到网页,使用户加载网页时运行其恶意代码(脚本)。
    • 脚本种类:JavaScript、 VBScript、Activex、Flash、HTML。
    • 攻击流程:得到敏感信息,获取更高用户权限,以被攻击者身份执行操作。
    • 攻击原理:
      • 反射型XSS:
      • 存储型XSS:
      • DOM-XSS:
    • 防范措施:
      • 网站开发者:
        • 对所有来自外部的用户输入进行完备检查。
        • 对所有输出到响应页面的数据进行适当的编码。
      • 普通用户:
        • 在浏览器设置中关闭JavaScript,关闭或设置cookie为只读。
        • 提高浏览器的安全等级设置。
        • 尽量使用非IE的安浏览器来降低风险。
        • 增强安全意识,不要轻易点击不明链接。

    SQL注入

    • 原理:利用Web应用程序输入验证不完善的漏洞,将构造的SQL命令注入到后台数据库引擎执行。
    • 危害:
      • 用户隐私信息被泄露。
      • 通过操作数据库对网页进行篡改。
      • 通过修改数据库,嵌入网马链接,进行挂马攻击。
      • 数据库的系统管理员帐户被纂改。
      • 服务器被黑客安装后门进行远程控制。
      • 破坏硬盘数据,瘫痪全系统。
    • 攻击流程:

    防范:

    • 使用类型安全的参数编码机制。
    • 对来自程序外部的用户输入,必须进行完备检查。
    • 将动态SQL语句替换为存储过程,预编译SQL或ADO命令对象。
    • 加强SQL数据库服务器的配置与连接,不存放敏感数据明文。

    跨站脚本攻击CSRF

    原理:利用web用户身份验证的漏洞,基于Cookies的身份验证只能保证请求发自用户的浏览器,不能保证时用户自愿发出的。

    Cookie:

    • 浏览器缓存,web服务器上的加密小文本文件。
    • 记录用户信息,辨识身份。
    • 分为持久Cookie和会话Cookie。

    利用cookie发起CSRF:

    防范:

    • 不要轻易点击网络的链接或图片。
    • 及时退出已登录账户。
    • 为计算机系统安装安全防护软件;及时更新特征库、升级软件。
    • 使用浏览器插件扩展防护。

    5.7:社会工程学攻击

    社会工程学攻击:利用人的好奇心、轻信、疏忽、警惕性不高,使用诸如假冒、欺诈、引诱等多种手段,来操纵其执行预期的动作或泄露机密信息。

    • 目的
      • 首要目的:获得金钱收益。
      • 次要目的:竞争优势和打击报复。
    • 希望获得的信息
      • 可能直接导致攻击对象的财产或身份被盗。
      • 能利用这些信息获取目标组织的薄弱环节。
      • 向攻击目标发动更有针对性的攻击。
    • 信息收集方法
      • 社交网络:社交网络是世界上最大的人类信息识别数据库。
      • 接近个人:寒暄套磁、窃听电话、克隆身份卡。
      • 垃圾分析:通过丢弃的文件、账单,收集到个人敏感信息。
      • 电话询问:对外人员不经意泄漏公司信息。
      • 机构非法贩卖个人信息。

    常见攻击方式:

    • 心理诱导:通过表面上无关的对话,精巧地提取出有价值的信息。
    • 身份伪造:伪装成熟人;伪装成社交网络上的好友;冒充内部员工等。

    常见的心理弱点:

    • 从众心理:利用从众心理激励目标执行预期的行为。
    • 饥饿营销:营造紧迫感,受害者没有时间思考决策合理性。
    • 权威引导:人们总是更愿意相信权威人士的指导和建议。
    • 利用人类的报答意识:给予小恩小惠,让受害者回应更高价值的信息或金钱。

    网络钓鱼攻击:

    • 伪装成可信服务提供者。
    • 用急切或命令的口吻营造紧迫感,要求用户立刻完成指定任务。

    防范:

    • 了解和熟悉社会工程学诈骗
    • 对自己的基础信息保持足够的警惕
    • 不通过不安全的方式透露信息。
    • 涉及到敏感信息时,核实对方的身份。
    • 使用防火墙来保护个人电脑,更新杀毒软件。
  • 相关阅读:
    C#输出JS代码封装类Alart
    我的汇编学习之路(2)win8(64位)下安装debug
    .NET使用一般处理程序生成验证码
    ?运算符(null合并运算符)和三木运算符
    讲解:小菜鸟自制的.NET实体类生成器
    我的汇编学习之路(1)进制转换
    未来
    callee,caller区别
    string::size_type
    ubuntu 12.04 LTS u盘安装
  • 原文地址:https://www.cnblogs.com/fzulinxin/p/10366726.html
Copyright © 2011-2022 走看看