计算机安全

计算机安全

计算机信息安全的基本要素
  1. 机密性(Confidentiality)——数据窃听、DNS劫持
    • 描述信息只能对授权人员或系统可用和可见的特性。
    • 通过加密、访问控制和其他形式的数据保护来维护机密性。
  2. 完整性(Integrity)——中间人攻击、XSS
    • 确保信息在存储、传输过程中未被篡改。
    • 使用校验和、数字签名等技术来保护数据的完整性。
  3. 可用性(Availability)——DOS、DDOS
    • 确保授权用户可以及时地并可靠地访问信息和资源。
    • 通过冗余系统、故障转移和维护措施来保持服务的可用性。
  4. 认证性(Authenticity)——CSRF
    • 确保通信、数据和交易的参与者是可识别且真实的,防止身份伪装。
    • 实现方式包括使用密码、数字证书、双因素认证等。
一、数据窃听

在未加密的 Wi-Fi 网络中,攻击者可以使用嗅探工具轻松捕获经过网络的数据包。这意味着他们可以读取你发送和接收的所有信息,包括敏感数据、登录凭证、电子邮件、聊天消息等。

流程
  • 使用数据包嗅探工具(如 Wireshark、tcpdump)来捕获网络上的数据传输
  • 攻击者创建一个与合法公共 Wi-Fi 名称相似的假冒热点,诱骗用户连接。一旦用户连接到这个假冒热点,攻击者就可以轻松监听并记录所有通过该网络的通信。
防御
  • 尽量避免在公共场所使用未加密的 Wi-Fi。
  • 使用 VPN(虚拟私人网络)服务在未加密的 Wi-Fi 上建立安全的加密连接。
  • 确保访问的网站使用 HTTPS,这为您的浏览器与网站服务器之间的通信提供了额外的加密层。
二、中间人攻击

中间人攻击是指攻击者在通信双方之间秘密地拦截、监听或篡改他们之间的信息交换。包括:

  • 拦截双方通信来窃听数据。
  • 篡改传输的信息。
流程
  • 对网络设备进行攻击,在局域网内,使用 ARP 欺骗。
  • 在用户和服务之间建立代理服务器,并监控或修改流经该代理的数据。
  • 使用 DNS 欺骗将用户重定向至恶意网站。
防御
  • 使用 HTTPS,确保所有传输数据都被加密
  • 在不安全的网络(如公共 Wi-Fi)上使用 VPN,以保障所有网络数据传输的安全性
三、DNS劫持

攻击者通过篡改 DNS 解析过程中的查询响应来重定向用户浏览器的目标地址。这种攻击可以在不同的层面进行,包括本地计算机、网络路由器、或者整个 DNS 基础设施。

流程
  • 本地计算机上的 DNS 设置修改:恶意软件或第三方程序可能会修改本地计算机上的 DNS 服务器设置,使得所有的 DNS 查询都通过攻击者控制的服务器进行。
  • 路由器 DNS 劫持:攻击者可能通过各种手段控制了家庭或企业的路由器,并更改其 DNS 设置,导致连接到该路由器的所有设备的 DNS 请求都被重定向。
防御
  • 使用可信的 DNS 服务器:可以选择使用公认的安全性较高的 DNS 服务,如 Google Public DNS 或 Cloudflare。
  • DNSSEC:使用 DNS 安全扩展(DNSSEC),它为 DNS 提供了额外的验证机制,确保解析过程的安全性。
四、跨站脚本攻击XSS?

XSS(Cross-Site Scripting)攻击者将恶意脚本注入到其他用户会浏览的正常网页中。当其他用户加载受影响的页面时,嵌入其中的恶意脚本会被执行,从而允许攻击者窃取用户信息、劫持用户会话、篡改网站内容或进行其他恶意活动。

流程
  • 存储型 XSS:恶意脚本被永久存储在目标服务器上,如数据库、消息论坛、访客留言等。当用户访问含有恶意脚本的页面时,就会触发这些脚本。
  • 反射型 XSS:恶意脚本并不存储在服务器上,而是通过 URL 参数等方式发送给用户,当用户打开包含恶意脚本的链接时,服务器将恶意脚本作为部分的响应内容返回给用户的浏览器,然后执行。
示例

假设有一个简单的网站,其中包括一个评论区域,用户可以提交评论,并且提交的评论会显示在页面上。如果网站没有正确地处理用户的输入,攻击者可能会提交一个包含 JavaScript 代码的评论,例如:

<script>alert('XSS Attack!');</script>
https://vulnerable-site.com/search?query=<script>alert('XSS Attack!');</script>

如果网站没有足够的输入验证和转义,那么恶意脚本就会在受害者的浏览器中执行。

防御
  1. 获取用户的输入,不用innerHtml,用innerText;

  2. 对用户的输入进行过滤,如对& < > " ’ /等进行转义。

五、什么是CSRF攻击?

CSRF(Cross-Site Request Forgery)即跨站请求伪造攻击。是一种挟制用户在当前已登录的Web应用程序上执行非本意的操作的攻击方法。可以简单的理解为:攻击者可以盗用你的登陆信息,以你的身份模拟发送各种请求对服务器来说这个请求是完全合法的,但是却完成了攻击者所期望的一个操作,比如以你的名义发送邮件、发消息,盗取你的账号,添加系统管理员,甚至于购买商品、虚拟货币转账等。

流程
  • 1、用户C打开浏览器,访问受信任网站A,输入用户名和密码请求登录网站A;
  • 2、在用户信息通过验证后,网站A产生Cookie信息并返回给浏览器,此时用户登录网站A成功,可以正常发送请求到网站A;
  • 3、用户未退出网站A之前,在同一浏览器中,打开一个TAB页访问网站B;
  • 4、网站B接收到用户请求后,返回一些攻击性代码,并发出一个请求要求访问第三方站点A;
  • 5、浏览器在接收到这些攻击性代码后,根据网站B的请求,在用户不知情的情况下携带Cookie信息,向网站A发出请求。网站A并不知道该请求其实是由B发起的,所以会根据用户C的Cookie信息以C的权限处理该请求,导致来自网站B的恶意代码被执行;
条件
  • 1 . 用户已经登录了站点 A,并在本地记录了 cookie
  • 2 . 在用户没有登出站点 A 的情况下(也就是 cookie 生效的情况下),访问了恶意攻击者提供的引诱危险站点 B (B 站点要求访问站点A)。
  • 3 . 站点 A 没有做任何 CSRF 防御
防御
  1. Referer字段

    • 验证 HTTP 请求头部的 Referer 字段,以确认请求是从受信任的域名发出的。
    • 这种方法可能不够可靠,因为 Referer 头部可能被禁用或篡改。
  2. CSRF token

    • 操作:对每个用户会话生成一个唯一的、不可预测的令牌(称为 CSRF Token),将其嵌入如表单的隐藏字段。

    • 验证:当用户提交请求(如表单提交)时,服务器检查请求中是否包含正确的 CSRF Token。

      Cookie 可以设置为只与特定域相关联,这样攻击者 JavaScript 就无法访问它。这意味着即使攻击者可以诱使用户的浏览器向目标网站发送请求,但他们也无法读取或窃取 CSRF Token,因为它存储在不可访问的 Cookie 中。
      

六、什么是DoS、DDoS攻击?

  • DOS: (Denial of Service),翻译过来就是拒绝服务,一切能引起DOS行为的攻击都被称为DOS攻击。最常见的DoS攻击就有计算机网络宽带攻击连通性攻击
  • DDoS: (Distributed Denial of Service),翻译过来是分布式拒绝服务。是指处于不同位置的多个攻击者同时向一个或几个目标发动攻击,或者一个攻击者控制了位于不同位置的多台机器并利用这些机器对受害者同时实施攻击。常见的DDos有SYN Flood、Ping of Death、ACK Flood、UDP Flood等。
流程
  1. UDP Flood: 利用大量UDP小包冲击DNS服务器
  2. SYN Flood: 利用伪造的IP地址向被攻击端发出请求,而被攻击端发出的响应 报文将永远发送不到目的地,那么被攻击端在等待关闭这个连接的过程中消耗了资源
  3. Ping of Death: 故意发送大于65535字节的ip数据包给对方,服务器收到后不知道该做什么
  4. ACK Flood: 发送不合法的ACK包,当攻击者发包速率很大的时候,主机操作系统将耗费大量的精力接收报文、判断状态,同时要主动回应RST报文,正常的数据包就可能无法得到及时的处理
防御
  • 合理配置路由器和防火墙规则,以拒绝明显的恶意流量。
  • 设置速率限制,防止 IP 地址或用户账户在短时间内发送大量请求。
  • 23
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值