网络攻击的常见形式
开篇
本篇文章来自于《网络安全 ——技术与实践》的学习整理笔记。
正篇
- 口令窃取
相比于利用系统缺陷破坏网络系统,最容易的方法还是通过窃取用户的口令进入系统。因为人们倾向于选择很糟糕的口令作为登录密码,所以口令猜测很容易成功。通常,口令猜测攻击有以下三种基本方式:
- 利用已知或假定的口令尝试登录;
- 根据窃取的口令文件进行猜测(如UNIX系统中的/etc/passwd文件;
- 窃听某次合法终端之间的会话,并记录所使用的口令; 要保护口令文件,需要做到如下的操作:
1.对某些服务的安全属性进行认真配置,如SUN操作系统中的NIS服务;
2.对可以使用tftpd协议获得的文件加以限制;
3.避免将真正的/etc/passwd文件放在匿名FTP区。
- 欺骗攻击
这类攻击倾向于通过诈骗电话或诈骗邮件,诱使受害人主动说出口令或登录密码等。
- 缺陷和后门攻击
网络蠕虫传播的方式之一是通过向finger守护程序(Deamon)发送新的代码实现的。显然,该守护程序并不希望收到这些代码,但在协议中没有限制接收这些代码的机制。守护程序的确可以发出一个gets呼叫,但并没有指定最大的缓冲区长度。蠕虫向“读”缓冲区内注入大量的数据,直到将gets堆栈中的返回地址覆盖。当守护程序中的子程序返回时,就会转而执行入侵者写入的代码。
缓冲器溢出攻击也被称为“堆栈粉碎(Stack Smashing)”攻击。
- 认证失败
即使一个安全机制再好,也存在遭受攻击的可能性。例如,一个源地址有效性的验证机制,在某些应用场合(如有防火墙地址过滤时)能够发挥作用,但是黑客可以使用rpcbind重发这些请求。在这种情况下,最终的服务器就会被欺骗。对于这些服务器来说,这些服务器看起来好像源于本地,但实际上来自其他地方。
- 协议缺陷
有些认证协议本身就有安全缺陷,这些缺陷的存在会直接导致攻击的发生。
例如,攻击者可对TCP发起序列号攻击。由于在建立连接时所发生的初始序列号的随机性不够,攻击者很可能发起源地址欺骗攻击。为了做到公平,TCP序列号在设计时并没有考虑抵御恶意的攻击。其他基于序列号认证的协议也可能遭受同样的攻击,这样的协议有很多,如DNS和许多基于RPC的协议。
安全协议取决于安全的基础。例如,安全壳协议(Secure Shell, SSH)是一个安全的远程存取协议。SSH协议具有这样一个特点: 用户可以指定一个可信的公钥,并将其存储于authorized keys文件中。如果客户机知道相应的私钥,该用户不用输入口令就能登录。在UNIX系统中,该文件通常位于用户主目录下的.ssh目录中。现在来考虑这样一种情况: 有人使用SSH登录到某个加载了NFS主目录的主机上。在这种情况下,攻击者就可以欺骗NFS将一个伪造的authorized keys文件注入其主目录中。
- 信息泄露
信息泄露的情况有很多种,下面罗列几种:
1.协议丢失信息;
2. 电话号码和办公室房间号提供推理出该组织结构的基础要素;
3. 公司网站提供的电话
4. DNS上获取数据
- 指数攻击——病毒和蠕虫
指数攻击能够使用程序快速复制并传播攻击。当程序自行传播时,这些程序称为蠕虫(Worms);当它们依附于其他程序传播时,这些程序就叫做病毒。
- 拒绝服务攻击
拒绝服务(Denial-of Service, DOS)攻击是过度使用服务,使软件、硬件过度运行,使得网络连接超出其容量。目的是造成自动关机或系统瘫痪,或者降低服务质量。
分布式拒绝服务(Distributed Denial-of-Service, DDoS)攻击使用很多Internet主机,同时向某个目标发起攻击。它的工作原理如下:
- 黑客通过Internet将木马程序植入尽可能多的计算机上。这些计算机分布在全世界不同的区域。被植入的木马程序绑定在计算机的某个端口上,等待接受攻击命令。
- 攻击者在Internet的某个地方安装一个主控程序,该主控程序含有一个木马程序所处位置的列表。伺候,主控程序等待黑客发出命令。
- 攻击者等待时机,做好攻击命令前的准备。
- 等攻击的时机一到,攻击者就会向主控程序发出一个消息,其中包括要攻击的目标地址。主控程序就会向每个植入木马程序的计算机发送攻击命令,这个命令包含攻击木马的地址。
- 这些木马程序立即向攻击目标发送大量的数据包。这些数据包的数量巨大,足以使其瘫痪。
注
感谢阅读!
相关文章:
网络攻击的常见形式
开篇 本篇文章来自于《网络安全 ——技术与实践》的学习整理笔记。 正篇 口令窃取 相比于利用系统缺陷破坏网络系统,最容易的方法还是通过窃取用户的口令进入系统。因为人们倾向于选择很糟糕的口令作为登录密码,所以口令猜测很容易成功。通常࿰…...
ReactDOM 18版本 使用createRoot 替换render详解
概述 React 18 提供了两个 root API,被称之为 Legacy Root API 和 New Root API: Legacy Root API:是指之前版本的 root API ReactDOM.render,它将创建一个以 “legacy” 模式运行的 root,其工作方式与 React 17 完全…...

【赠书活动】好书推荐—《详解51种企业应用架构模式》
导读: 企业应用包括哪些?它们又分别有哪些架构模式?世界著名软件开发大师Martin Fowler给你答案。 01 什么是企业应用 我的职业生涯专注于企业应用,因此,这里所谈及的模式也都是关于企业应用的。(企业应用…...
SpringBoot启动时使用外置yml文件
第一步:打包时排除yml文件 <build><resources><resource><!-- 排除的文件的路径 --><directory>src/main/resources</directory><excludes><!-- 排除的文件的名称 --><exclude>application-dev.yml</e…...

【开源三方库】Fuse.js:强大、轻巧、零依赖的模糊搜索库
1.简介 Fuse.js是一款功能强大且轻量级的JavaScript模糊搜索库,支持OpenAtom OpenHarmony(以下简称“OpenHarmony”)操作系统,它具备模糊搜索和排序等功能。该库高性能、易于使用、高度可配置,支持多种数据类型和多语…...
vue从入门到精通(六):数据代理
一,什么是数据代理 通过一个对象代理对另一个对象中属性的操作 二,object.defineproperty方法 object.defineproperty方法可以对对象追加属性 <!DOCTYPE html> <html><head><meta charset"utf-8"><title>object…...

【C++修行之道】类和对象(二)类的6个默认成员函数、构造函数、析构函数
目录 一、类的6个默认成员函数 二、构造函数 2.1 概念 2.2 特性 2.2.5 自动生成默认构造函数 不进行显示定义的隐患: 2.2.6 自动生成的构造函数意义何在? 两个栈实现一个队列 2.2.7 无参的构造函数和全缺省的构造函数都称为默认构造函数&#x…...

【LeetCode热题100总结】239. 滑动窗口最大值
题目描述 给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。 返回 滑动窗口中的最大值 。 示例 1: 输入:nums [1,3,-1,-3,5,3,6,7]…...
【YOLOv9改进[Conv]】使用YOLOv10的空间通道解耦下采样SCDown模块替换部分CONv的实践 + 含全部代码和详细修改内容
本文将使用YOLOv10的空间通道解耦下采样SCDown模块替换部分CONv的实践 ,文中含全部代码和详细修改内容。 目录 一 YOLOv10 1 空间通道解耦下采样 2 可视化...

简单小游戏制作
控制台基础设置 //隐藏光标 Console.CursorVisible false; //通过两个变量来存储舞台的大小 int w 50; int h 30; //设置舞台(控制台)的大小 Console.SetWindowSize(w, h); Console.SetBufferSize(w, h);多个场景 int nowSceneID 1; while (true) …...
Delphi
Delphi,是美国 Borland(宝兰)公司於 1995 年开发在 Windows 平台下的快速应用程式开发工具 (Rapid Application Development,简称 RAD),它的前身是在 DOS 下的产品 Borland Turbo Pascal。(非开源软件&…...
Linux的shell脚本中的比大小
如果要将 -le 换成相反的(即“大于”),你应该使用 -gt(greater than)。 所以,-le 的相反比较是 -gt。 但如果你想要一个包含“大于”和“不等于”的比较(即“大于”),那…...
每日复盘-20240603
20240603 六日涨幅最大: ------1--------300637--------- 扬帆新材 五日涨幅最大: ------1--------300637--------- 扬帆新材 四日涨幅最大: ------1--------301306--------- 西测测试 三日涨幅最大: ------1--------301306--------- 西测测试 二日涨幅最大: ------1--------30…...
adb server version (22000) doesn‘t match this client (41); killing...
参考链接: adb server version (31) doesn’t match this client (41); killing… 解决此问题 电脑安装了360手机助手占用了adb的端口引起的。因为套接字的唯一性(一个套接字只能由 协议/网络地址/端口号 唯一确定 ),一个电脑只能有一个程序…...

如何使用 Connector API 将数据提取到 Elasticsearch Serverless 中
作者:来自 Elastic Jedr Blaszyk Elasticsearch 支持一系列摄取方法。 其中之一是 Elastic Connectors,它将 SQL 数据库或 SharePoint Online 等外部数据源与 Elasticsearch 索引同步。 连接器对于在现有数据之上构建强大的搜索体验特别有用。 例如&…...

体育赛事直播系统开发源码搭建
随着体育产业的蓬勃发展,体育赛事直播已成为广大观众获取赛事信息的重要途径。为了满足观众日益增长的需求,开发一套专业的体育赛事直播系统成为当务之急。本文将围绕体育赛事直播系统开发源码搭建进行深入探讨,从技术选型、系统架构、安全防…...

使用Jmeter进行性能测试
学习视频 B站UP主:白月黑羽编程 目录 Jmeter的下载 Jmeter界面 Jmeter操作 线程组与HTTP请求 测试一个请求 解决响应数据中 中文乱码的问题 HTTP请求默认值 录制网站流量 添加录制控制器 添加HTTP代理服务器 在浏览器配置代理 进行录制 模拟间隔时间 …...

AI技术的发展,会让你工作轻松吗
这两年,人工智能技术迅猛发展,AI产品层出不穷,尤其大语言模型(LLM)的爆火,许多人担心自己的工作会被AI取代。然而,如果AI技术发展到极致,再加上其他科学技术的高度发展,我…...

Spring-DI入门案例
黑马程序员SSM框架教程 文章目录 一、DI入门案例思路分析二、实现步骤2.1 删除service中使用new形式创建的Dao对象2.2 提供以来对象对应的setter方法2.3 配置service与到之间的关系 一、DI入门案例思路分析 基于IoC管理bean(上个案例已经实现)service中…...
ubuntu18.04 报错:fatal error: execution
一、问题描述 在ubuntu18.04上编译Faster-lio 报错: fatal error: execution: 没有那个文件或目录#include <execution> 二、解决方法 需要将g编译器更新到9.0 sudo add-apt-repository ppa:ubuntu-toolchain-r/test sudo apt update sudo apt install g…...
椭圆曲线密码学(ECC)
一、ECC算法概述 椭圆曲线密码学(Elliptic Curve Cryptography)是基于椭圆曲线数学理论的公钥密码系统,由Neal Koblitz和Victor Miller在1985年独立提出。相比RSA,ECC在相同安全强度下密钥更短(256位ECC ≈ 3072位RSA…...

【OSG学习笔记】Day 18: 碰撞检测与物理交互
物理引擎(Physics Engine) 物理引擎 是一种通过计算机模拟物理规律(如力学、碰撞、重力、流体动力学等)的软件工具或库。 它的核心目标是在虚拟环境中逼真地模拟物体的运动和交互,广泛应用于 游戏开发、动画制作、虚…...

为什么需要建设工程项目管理?工程项目管理有哪些亮点功能?
在建筑行业,项目管理的重要性不言而喻。随着工程规模的扩大、技术复杂度的提升,传统的管理模式已经难以满足现代工程的需求。过去,许多企业依赖手工记录、口头沟通和分散的信息管理,导致效率低下、成本失控、风险频发。例如&#…...

关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案
问题描述:iview使用table 中type: "index",分页之后 ,索引还是从1开始,试过绑定后台返回数据的id, 这种方法可行,就是后台返回数据的每个页面id都不完全是按照从1开始的升序,因此百度了下,找到了…...
大语言模型如何处理长文本?常用文本分割技术详解
为什么需要文本分割? 引言:为什么需要文本分割?一、基础文本分割方法1. 按段落分割(Paragraph Splitting)2. 按句子分割(Sentence Splitting)二、高级文本分割策略3. 重叠分割(Sliding Window)4. 递归分割(Recursive Splitting)三、生产级工具推荐5. 使用LangChain的…...
postgresql|数据库|只读用户的创建和删除(备忘)
CREATE USER read_only WITH PASSWORD 密码 -- 连接到xxx数据库 \c xxx -- 授予对xxx数据库的只读权限 GRANT CONNECT ON DATABASE xxx TO read_only; GRANT USAGE ON SCHEMA public TO read_only; GRANT SELECT ON ALL TABLES IN SCHEMA public TO read_only; GRANT EXECUTE O…...

涂鸦T5AI手搓语音、emoji、otto机器人从入门到实战
“🤖手搓TuyaAI语音指令 😍秒变表情包大师,让萌系Otto机器人🔥玩出智能新花样!开整!” 🤖 Otto机器人 → 直接点明主体 手搓TuyaAI语音 → 强调 自主编程/自定义 语音控制(TuyaAI…...
Java入门学习详细版(一)
大家好,Java 学习是一个系统学习的过程,核心原则就是“理论 实践 坚持”,并且需循序渐进,不可过于着急,本篇文章推出的这份详细入门学习资料将带大家从零基础开始,逐步掌握 Java 的核心概念和编程技能。 …...
爬虫基础学习day2
# 爬虫设计领域 工商:企查查、天眼查短视频:抖音、快手、西瓜 ---> 飞瓜电商:京东、淘宝、聚美优品、亚马逊 ---> 分析店铺经营决策标题、排名航空:抓取所有航空公司价格 ---> 去哪儿自媒体:采集自媒体数据进…...

智能分布式爬虫的数据处理流水线优化:基于深度强化学习的数据质量控制
在数字化浪潮席卷全球的今天,数据已成为企业和研究机构的核心资产。智能分布式爬虫作为高效的数据采集工具,在大规模数据获取中发挥着关键作用。然而,传统的数据处理流水线在面对复杂多变的网络环境和海量异构数据时,常出现数据质…...