网络攻防备课笔记
从“踩点”到“创建后门”的攻击流程
踩点:攻击者在实施攻击前对目标进行初步的探索和调查的过程,包括收集目标的IP地址、开放的端口、服务版本、可能的漏洞等信息。
扫描:使用工具如Nmap、Masscan等对目标进行端口扫描,找出开放的端口和对应的服务。
漏洞探测:在知道目标系统的服务和版本后,攻击者会查找可能存在的漏洞,使用如Nessus、OpenVAS等工具进行自动化的漏洞扫描。
利用漏洞:发现漏洞后,攻击者会尝试利用这些漏洞进入系统,例如使用Metasploit工具。
提权:攻击者在进入系统后,可能首先获得的是低权限账号,他们会尝试使用各种方法提高权限,直到获得root或administrator权限。
横向移动:在一个组织内部,攻击者会尝试从一个系统移动到另一个系统,利用内网的开放服务和配置错误。
创建后门:为了确保自己可以随时访问被攻击的系统,攻击者会在系统中创建后门。这可以是一个隐藏的账户、一个启动项,或者是一个特殊的网络服务。
数据窃取:攻击者可能会寻找并窃取有价值的信息,如用户数据、商业秘密等。
清除痕迹:为了不被发现,攻击者会清除日志和其他可能暴露其行为的痕迹。
后门
后门(Backdoor)在计算机安全领域通常指可以绕过正常认证过程的一种秘密访问方法。
后门可以被用于多种目的,包括但不限于:
恶意用途:如上述攻击手段,攻击者利用后门重新进入被攻击的系统,窃取数据或进行其他恶意操作。
维护和管理:一些软件开发者在软件中为了方便维护或管理而留下的后门。这种情况下,后门可能是有意设计的功能。
国家或政府用途:有报道称某些国家要求企业在其产品中安装后门以供政府机构使用。这种后门可能是为了情报收集或其他目的。
不论是出于哪种原因,后门都存在安全风险。一旦被恶意使用或被第三方发现,都可能导致系统被非法访问或数据被窃取。因此,许多安全专家和隐私倡导者都反对任何形式的后门,认为这是一个不可接受的安全风险。
黑客 Hacker/骇客 Cracker/红客
这三个术语“黑客”、“骇客”和“红客”在计算机和网络安全领域中有特定的含义。
黑客 (Hacker):原始的定义是指那些热衷于计算机技术的人,他们喜欢探索、破解和创新。但在大众文化中,这个词逐渐与非法侵入计算机系统和网络的行为相关联。现在,“黑客”通常被用来描述那些寻找并利用计算机系统漏洞的人,但他们的目的可以是好的、坏的,也可以是中立的。
骇客 (Cracker):这个词是为了区分原始的“黑客”定义与非法行为而创造的。骇客专指那些出于恶意目的攻击计算机系统的人。他们的目标可能是窃取数据、破坏系统或其他恶意行为。
如果黑客是炸弹制造专家,那么骇客就是恐怖分子。
红客:红客是中国特有的一个术语,通常用来描述那些声称自己是为了“爱国”目的而攻击其他国家的网络或网站的人。这种行为可能涉及到破坏网站、窃取数据或其他形式的网络攻击。红客与“蓝军”相对,后者通常指的是防御方或者负责维护网络安全的团队。
值得注意的是,网络安全领域中还有很多其他相关术语,例如“白帽”(白帽黑客,出于正当目的进行安全研究的人)和“黑帽”(出于恶意目的攻击系统的人)。
骇客未必有很高的技术?黑客呢?
骇客与技术能力:"骇客"一词通常用来描述那些有恶意的黑客,他们的技术能力可能各不相同。就像所有的黑客一样,他们中的一些人可能具有高度的专业技术,而另一些人可能只是脚本小子,依赖他人开发的工具。
黑客与技术能力:"黑客"一词原本的含义更偏向于对技术的热情和好奇心,而不一定意味着高技能。但是,随着时间的推移,这个词在大众文化中的含义发生了变化,经常被用来描述具有高技术能力的个体,无论他们的意图是好是坏。
黑客在IT圈带有正面意义?
在IT和编程社区中,"黑客"通常是一个褒义词,描述的是那些富有创意、技巧和对技术充满热情的人。他们可能是编程高手,喜欢“玩”技术,并且经常能够找到解决问题的独特方法。这与大众文化中经常提到的、与犯罪活动相关的“黑客”形象是不同的。
不是所有的黑客都是恶意破坏者,但也确实有一部分黑客从事非法或恶意的活动。因此,更为准确的说法应该是:“并非所有黑客都是恶意破坏者”。
常见角色术语
-
白帽黑客 (White Hat Hacker):这些是合法、道德上正当的黑客,他们通常在拥有明确许可的情况下进行渗透测试或漏洞评估,目的是找出安全漏洞并帮助修复,而不是利用它们。
-
黑帽黑客 (Black Hat Hacker):这些黑客从事非法活动,他们寻找系统的漏洞,但与白帽黑客不同,他们的目的是为了个人利益,可能是金钱、信息窃取或纯粹的破坏。
-
灰帽黑客 (Grey Hat Hacker):介于白帽和黑帽之间。他们可能会在没有明确许可的情况下探测和利用漏洞,但他们的意图通常不是为了恶意目的。他们可能会发现一个漏洞并通知相关公司,有时甚至会提供解决方案。
-
红队 (Red Team):专业的渗透测试团队,他们模拟真实的攻击者来评估一个组织的安全防御能力。
-
蓝队 (Blue Team):专门负责防御的团队,他们的任务是应对红队或真实攻击者的攻击,并加强系统的防御。
-
紫队 (Purple Team):是红队和蓝队的结合。他们的目的是确保红队和蓝队之间有有效的沟通和协作。
-
绿帽 (Green Hat):这是一个不太常用的术语,通常指的是黑客新手。
-
脚本小子 (Script Kiddie):这是一个略带贬义的术语,用来描述那些使用他人开发的工具进行攻击,但自己没有深入的技术知识的人。
-
Hacktivist:这是“黑客”和“活动家”两个词的结合。这些黑客出于政治或社会目的进行攻击,如为了表达对某种政策或事件的不满。
-
国家支持的黑客 (State-sponsored Hackers):这些黑客在某个国家的支持或指导下进行网络攻击,目的可能是为了窃取情报、进行网络间谍或其他国家利益相关的目的。
蜜罐技术
蜜罐技术是一种非常独特的网络安全防御策略,其核心思想是通过模拟伪造的目标来吸引并诱导攻击者,从而达到检测、研究和预防真实攻击的目的。
1. 蜜罐(Honeypot)的定义: 蜜罐是一个故意设置的、看似容易被攻击的目标(如一个伪装的系统或服务),用来引诱潜在的攻击者。其主要目的是监控、记录攻击者的行为,从而更好地理解攻击策略和技术。
2. 主要类别:
- 低交互蜜罐:这种蜜罐只模拟了一些服务的外部行为,如SSH、Telnet或HTTP。攻击者与这种蜜罐的交互是有限的。
- 高交互蜜罐:这种蜜罐是一个完全功能的系统,它提供了真实的应用程序和服务供攻击者互动。这可以为安全研究者提供关于攻击者策略和行为的详细信息。
3. 用途:
- 威胁检测:蜜罐可以用作网络中的一个哨兵,监控潜在的恶意行为和未知威胁。
- 研究:研究人员使用蜜罐来收集关于新型恶意软件、攻击技术和攻击者策略的信息。
- 干扰攻击者:通过使攻击者浪费时间和资源在蜜罐上,可以减缓或转移对真实目标的攻击。
4. 风险与考虑:
- 遭遇智能攻击:有经验的攻击者可能识别并绕过蜜罐。
- 误报率:蜜罐可能会吸引大量无害的流量,这可能导致大量的误报。
- 被利用的风险:如果不正确地配置,蜜罐可能被攻击者利用作为攻击其他系统的跳板。
5. 蜜网(Honeynet): 蜜网是由多个蜜罐组成的网络,通常模拟一个真实的网络环境,提供更复杂的互动和数据收集能力。
数据库蜜罐
在数据库安全领域,蜜罐技术同样可以得到应用。
数据库蜜罐(Database Honeypot)被设计为诱饵,吸引并记录对其的非法访问或攻击尝试,从而为安全研究者或管理员提供早期的警告或威胁情报。
以下是数据库蜜罐在实际应用中的一些特点:
模拟真实数据库:数据库蜜罐经常模拟流行的数据库系统,如MySQL、Oracle、SQL Server等,使其看起来尽可能地像一个真实的、有价值的目标。
记录访问和查询:数据库蜜罐会记录所有尝试连接和查询的详细信息,包括来源IP、使用的凭据、执行的SQL命令等。
设置诱饵数据:为了进一步吸引并误导攻击者,蜜罐可能包含一些诱饵数据,这些数据看起来很有价值(例如伪造的客户信息或内部文档),但实际上是虚假的。
限制实际功能:尽管模拟真实数据库,但数据库蜜罐的实际功能通常受到限制,以防止被攻击者用作其他恶意目的。例如,它可能不允许数据的实际写入或更改。
警告和响应:当检测到潜在的攻击行为时,数据库蜜罐可以配置为自动发送警告或执行其他响应动作。
研究新攻击手法:通过分析攻击者对蜜罐的行为,安全研究者可以了解新的攻击技巧、工具和模式。
虽然数据库蜜罐为组织提供了一个额外的防御层,但它们不能替代其他的数据库安全措施。使用蜜罐时,仍然需要确保所有真实的数据库都经过了适当的加固、更新和监控,以最大限度地减少风险。
CTF
“夺旗赛”(Capture The Flag,简称CTF)这个名称起源于传统的户外团队竞技游戏。在传统的夺旗游戏中,两个团队各自设有一个旗帜,目标是进入对方的领地、捕获对方的旗帜并带回自己的基地,同时也要防止自己的旗帜被对方捕获。
在网络安全的CTF竞赛中,这个概念被借鉴和转化。比赛中的“旗帜”通常是一个特定的字符串或文件,它位于受保护的服务器、应用程序或其他类型的计算机系统中。参赛者的目标是通过解决各种安全问题和挑战来“夺取”这个旗帜。同样地,某些CTF赛事模式(如“防守/攻击”模式)还要求团队防守自己的系统,阻止其他团队获取旗帜。
因此,尽管这是一个计算机和网络安全比赛,但它的名称和基本概念与传统的夺旗游戏有很强的相似性,所以称之为“夺旗赛”。
相关文章:
网络攻防备课笔记
从“踩点”到“创建后门”的攻击流程 踩点:攻击者在实施攻击前对目标进行初步的探索和调查的过程,包括收集目标的IP地址、开放的端口、服务版本、可能的漏洞等信息。 扫描:使用工具如Nmap、Masscan等对目标进行端口扫描,找出开放…...

Apache Solr9.3 快速上手
Apache Solr 简介 Solr是Apache的顶级开源项目,使用java开发 ,基于Lucene的全文检索服务器。 Solr比Lucene提供了更多的查询语句,而且它可扩展、可配置,同时它对Lucene的性能进行了优化。 安装 下载 : 下载地址解压 : tar -zxv…...
按关键字搜索淘宝商品API接口获取商品销量、优惠价、商品标题等参数示例
关键词搜索商品接口的作用是提供搜索功能,让用户根据关键词在电商平台上搜索商品,并根据搜索条件和偏好获取相关的商品列表和推荐结果,提高用户购物体验和准确度。对于电商平台而言,这个接口也能帮助用户发现更多商品、提升销量和…...

【外汇天眼】价格波动的节奏感:优化止盈方法!
止盈,依然是一种经验,而不是一种技术。它涉及到价格波动的灵活应对,以确保我们不会错失潜在的盈利,同时也不会让盈利被逆市波动所侵蚀。以下是关于如何有效实施止盈策略的一些建议: 首先,我们要明确&#…...

VMvare虚拟机安装国产麒麟V10桌面操作系统
一、系统下载 进入银河麒麟官网:https://www.kylinos.cn/ 选择桌面操作系统,然后进入操作系统版本选择页面,选择银河麒麟桌面操作系统V10 选择后,进入系统介绍页面,然后点击申请试用 点击后进入申请页面…...

Golang--channel+waitGroup控制并发量
文章目录 channelwaitGroup控制并发量前言示例 channelwaitGroup控制并发量 前言 golang的goroutine非常轻量级,同时启动数万协程都没问题。如果不对并发量进行控制,比如同时产生数百万的协程,会压垮服务器通过控制channel缓冲区的大小&…...

前端【响应式图片处理】之 【picture标签】
目录 🌟前言🌟目前最常见的解决方案🌟新的解决方案<picture>🌟<picture>的工作原理🌟<picture> 兼容性解决方案🌟写在最后 🌟前言 哈喽小伙伴们,前端开发过程中经…...
js实现链式调用,查询和处理数据
实现一个 query 方法,实现对数据的链式查询和处理 要求如下 query 传入参数为原始数据(数组格式,每个元素都是对象) 通过进行链式调用对数据执行操作,支持的方法有where(predicate): 根据参数的条件进行筛选࿰…...

阿里云 腾讯云 配置二级域名并解析指向非80端口操作指南
目标:主域名 imps.com 已完成配置,新增配置 kpi.imps.com 等二级域名并指向 8083 端口。 (此操作需要主域名已经通过备案3天后,最好指向的IP地址网站也通过了备案申请,否则会提示域名没有备案。) 操作流程…...

菜单子节点的写法
菜单子节点的写法 1.测试数据2.实现代码3.获取父ID层级 1.测试数据 1.表结构SQL CREATE TABLE test (id int DEFAULT NULL,u_id int DEFAULT NULL,p_u_id int DEFAULT NULL ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COLLATEutf8mb4_general_ci;2.数据SQL INSERT INTO test (i…...
系统架构设计:9 论软件系统架构评估及其应用
目录 一 架构评估的意义 1 性能 2 可用性 3 安全性 4 可修改性 5 易用性...

javaee SpringMVC中json的使用
jsp <%--Created by IntelliJ IDEA.User: 呆萌老师:QQ:2398779723Date: 2019/12/6Time: 15:55To change this template use File | Settings | File Templates. --%> <% page contentType"text/html;charsetUTF-8" language"java" %> <%St…...

【系统架构】软件架构的演化和维护
导读:本文整理关于软件架构的演化和维护知识体系。完整和扎实的系统架构知识体系是作为架构设计的理论支撑,基于大量项目实践经验基础上,不断加深理论体系的理解,从而能够创造新解决系统相关问题。 目录 1、软件架构演化和定义 …...

一盏茶的功夫帮你彻底搞懂JavaScript异步编程从回调地狱到async/await
🎬 江城开朗的豌豆:个人主页 🔥 个人专栏 :《 VUE 》 《 javaScript 》 ⛺️ 生活的理想,就是为了理想的生活 ! 目录 📘 1. 引言 📘 2. 使用方法 📘 3. 实现原理 📘 4. 写到最后…...

前后端分离计算机毕设项目之基于SpringBoot的无人智慧超市管理系统的设计与实现《内含源码+文档+部署教程》
博主介绍:✌全网粉丝10W,前互联网大厂软件研发、集结硕博英豪成立工作室。专注于计算机相关专业毕业设计项目实战6年之久,选择我们就是选择放心、选择安心毕业✌ 🍅由于篇幅限制,想要获取完整文章或者源码,或者代做&am…...

从0开始python学习-31.selenium 文本输入框、下拉选择框、文件上传、时间插件选择元素定位
目录 1. 纯文本输入框 2. 存在默认值的文本输入 3. 下拉选择框 4. 输入后下拉选择框 5. 文件上传 6. 时间插件 1. 纯文本输入框 driver.find_element(By.XPATH,/html/body/div[2]/td[2]/input).send_keys(测试名称) 2. 存在默认值的文本输入 注意: 1. 这种存…...

MyCat-web安装文档:安装Zookeeper、安装Mycat-web
安装Zookeeper A. 上传安装包 zookeeper-3.4.6.tar.gzB. 解压 #解压到当前目录,之后会生成一个安装后的目录 tar -zxvf zookeeper-3.4.6.tar.gz#加上-c 代表解压到指定目录 tar -zxvf zookeeper-3.4.6.tar.gz -C /usr/local/C. 在安装目录下,创建数据…...

Ajax跨域访问,访问成功但一直走error不走success的的问题解决
Ajax跨域访问,访问成功但一直走error不走success的的问题解决 通过搜索各种资料,终于解决啦,废话不多说了,还是老规矩直接上代码: 我这里用了jsonp,有想了解的点击 : jsonp 前端代码: $.ajax({type:post…...
水星 Mercury MIPC251C-4 网络摄像头 ONVIF 与 PTZ 云台控制
概况 最近在 什么值得买 上发现一款水星的网络摄像头, 除了支持云台/夜视功能之外, 还标明支持 onvif 协议. 所以想着买来接入到 HomeAssistat 作为监控使用.可到手之后发现事情并没有那么简单, 记录如下. 接入 HomeAssistant 按照 HA 的文档 ONVIF Camera 接入无非就是配置文件…...

Reactor 模式网络服务器【I/O多路复用】(C++实现)
前导:本文是 I/O 多路复用的升级和实践,如果想实现一个类似的服务器的话,需要事先学习 epoll 服务器的编写。 友情链接: 高级 I/O【Linux】 I/O 多路复用【Linux/网络】(C实现 epoll、select 和 epoll 服务器&#x…...
web vue 项目 Docker化部署
Web 项目 Docker 化部署详细教程 目录 Web 项目 Docker 化部署概述Dockerfile 详解 构建阶段生产阶段 构建和运行 Docker 镜像 1. Web 项目 Docker 化部署概述 Docker 化部署的主要步骤分为以下几个阶段: 构建阶段(Build Stage):…...

从WWDC看苹果产品发展的规律
WWDC 是苹果公司一年一度面向全球开发者的盛会,其主题演讲展现了苹果在产品设计、技术路线、用户体验和生态系统构建上的核心理念与演进脉络。我们借助 ChatGPT Deep Research 工具,对过去十年 WWDC 主题演讲内容进行了系统化分析,形成了这份…...
模型参数、模型存储精度、参数与显存
模型参数量衡量单位 M:百万(Million) B:十亿(Billion) 1 B 1000 M 1B 1000M 1B1000M 参数存储精度 模型参数是固定的,但是一个参数所表示多少字节不一定,需要看这个参数以什么…...

ServerTrust 并非唯一
NSURLAuthenticationMethodServerTrust 只是 authenticationMethod 的冰山一角 要理解 NSURLAuthenticationMethodServerTrust, 首先要明白它只是 authenticationMethod 的选项之一, 并非唯一 1 先厘清概念 点说明authenticationMethodURLAuthenticationChallenge.protectionS…...
VTK如何让部分单位不可见
最近遇到一个需求,需要让一个vtkDataSet中的部分单元不可见,查阅了一些资料大概有以下几种方式 1.通过颜色映射表来进行,是最正规的做法 vtkNew<vtkLookupTable> lut; //值为0不显示,主要是最后一个参数,透明度…...

Unity UGUI Button事件流程
场景结构 测试代码 public class TestBtn : MonoBehaviour {void Start(){var btn GetComponent<Button>();btn.onClick.AddListener(OnClick);}private void OnClick(){Debug.Log("666");}}当添加事件时 // 实例化一个ButtonClickedEvent的事件 [Formerl…...
LOOI机器人的技术实现解析:从手势识别到边缘检测
LOOI机器人作为一款创新的AI硬件产品,通过将智能手机转变为具有情感交互能力的桌面机器人,展示了前沿AI技术与传统硬件设计的完美结合。作为AI与玩具领域的专家,我将全面解析LOOI的技术实现架构,特别是其手势识别、物体识别和环境…...
uniapp 实现腾讯云IM群文件上传下载功能
UniApp 集成腾讯云IM实现群文件上传下载功能全攻略 一、功能背景与技术选型 在团队协作场景中,群文件共享是核心需求之一。本文将介绍如何基于腾讯云IMCOS,在uniapp中实现: 群内文件上传/下载文件元数据管理下载进度追踪跨平台文件预览 二…...
LangChain 中的文档加载器(Loader)与文本切分器(Splitter)详解《二》
🧠 LangChain 中 TextSplitter 的使用详解:从基础到进阶(附代码) 一、前言 在处理大规模文本数据时,特别是在构建知识库或进行大模型训练与推理时,文本切分(Text Splitting) 是一个…...

Linux-进程间的通信
1、IPC: Inter Process Communication(进程间通信): 由于每个进程在操作系统中有独立的地址空间,它们不能像线程那样直接访问彼此的内存,所以必须通过某种方式进行通信。 常见的 IPC 方式包括&#…...