题型
选择题 15 *2
填空题 15 *1
判断题 10 * 1
简述题 5*7
网络数据分析 1*10 十个空,一整个大题
选择题
unix中采用什么机制来增加了破解linux密码的难度【记一下就行了】
- 为不同的管理员分配不同的管理账户
- 限制root等特权账户的远程登陆功能
- 限制尝试登陆次数
- 密码设置符合复杂性要求
- 利用基于PKI技术的身份认证机制来代体传统的用户名+口令的方式
Linux的口令加密机制源于DES,通常使用56位密钥加密的64位的文本块,抵抗暴力破解的能力较弱。 为提高身份认证的可靠性,较新版本的Linux开始采用MD5、SHA-256、SHA-512、blofish等高强度的 加密算法,同时增加了salt的编码长度。
用户和组【不考】
用户
- Root根,系统中唯一拥有系统管理员权限的用户,有最高控制和管理权
- 普通用户,登陆系统并执行基本计算任务,权限受限制
- 系统用户,不具有登陆系统的能力
Linux用户信息保存在系统的
/etc/passwd
文件中,包括用户名、用户唯一UID,使用Shell类型、用户初始目录。被加密后的口令放在/etc/shadow
仅root用户可读取组
将相同权限的用户集中纳入到同一个组中,对组设置权限使该组中所有用户自动继承组的权限。
组信息保存在/etc/group
, 组被加密后的口令保存在/etc/gshadow
身份认证【不考】
本地身份认证
init
启动虚拟控制台,为用户提供登陆方式- 输入用户名和密码后,
getty
执行登陆进程,并对身份合法性进行认证 - 认证通过后,通过
fork()
复制一份该用户的 shell ,完成程度操作
登陆进程通过
Crypt()
对输入的口令进行验证。也会对输入的口令加密,采用DES、MD5、SHA-256等远程身份认证
采用SSH(Secure Shell)实现对远程访问的安全保护,优势:数据加密和数据压缩。
由三部分组成
传输层协议:为两种主机之间的认证和通信提供安全数据传输通信,通常运行于TCP/IP之上
提供数据通信加密、加密主机身份、数据完整性校验及数据压缩
用户认证协议:SSH提供基于口令和基于密钥的两种安全验证
连接协议:完成用户请求的各种具体的网络服务
可插入身份认证模块(PAM)
PAM是要求对其服务进行身份认证的应用程序与提供认证服务的认证模块之间的中间件。
PAM提供了对所有服务进行认证的中央机制。
SELinux 安全强化
授权访问【不考】
安全审计【不考】
网络欺骗,在实施交换的时候采用嗅探的攻击方式?
哪一种网络欺骗技术是实施嗅探攻击的前提:ARP欺骗。
IP欺骗、dns欺骗和路由欺骗都不是
通过tcp的序列号猜测,可以通过哪种方式进行攻击?
TCP会话劫持攻击
哪些网络攻击活动是隐藏的?【不包括网络流量隐藏】
目前常见的网络攻击活动隐藏包括:网络连接隐藏、进程活动隐藏和目录文件隐藏。【不包括网络流量隐藏】
通信状态隐藏包括:通信端口隐藏、将后门隐藏在合法端口、通信连接隐藏。
被动攻击:窃听,流量分析
病毒、蠕虫,哪些是可以通过网络传播的?哪些不能通过网络传播?【PPT-Chap4:页16页 22页 44页】
恶意代码包括计算机病毒、蠕虫、木马、后门、僵尸网络、Rootkit等。
可以通过网络传播:蠕虫、僵尸网络、木马。
不能通过网络传播:计算机病毒、Rookit、后门、
- 详解:
计算机病毒
计算机病毒把自身附加于程序或文件,因此它可以从一台计算机传播到另一台计算机,沿着它的传播路径感染计算机。计算机病毒本省只能在本地进行复制传播**-》计算机病毒无法通过网络传播。**
蠕虫
蠕虫(又名网络蠕虫)-》顾名思义网络蠕虫可以通过网络传输。
网络蠕虫与计算机病毒之间的区别:
![](https://blog-1310394682.cos.ap-beijing.myqcloud.com/Blog/Untitled 1.png)
![](https://blog-1310394682.cos.ap-beijing.myqcloud.com/Blog/Untitled 2.png)
木马
木马与其他网络的区别:,由于存在网页木马-》可以通过网络传播
![](https://blog-1310394682.cos.ap-beijing.myqcloud.com/Blog/Untitled 3.png)
![](https://blog-1310394682.cos.ap-beijing.myqcloud.com/Blog/Untitled 4.png)
后门
后门,是一个网站的后门,无法通过网络传播【自身知识所得】
僵尸网络 botnet
僵尸网络(botnet)是攻击者出于恶意目的,传播僵尸程序控制大量主机,并通过一对多的命令与控制信道所组成的网络。僵尸网络是从计算机病毒、蠕虫、木马、后门等传统的恶意代码形态的基础上演化,并通过相互融合发展而成的目前最为复杂的一类网络攻击方式。-》僵尸网络可以通过网络传播
Rookit
Rookit不能通过网络传播
![](https://blog-1310394682.cos.ap-beijing.myqcloud.com/Blog/Untitled 5.png)
网络监听和嗅探主要是破坏网络信息的什么?
保密性
apche配置文件、日志存储文件?【PPT-Chap3:页59页】
主配置文件:/etc/httpd/conf/httpd.conf
、 /etc/httpd.conf
日志存储文件: 访问日志:/var/log/httpd/access_log
错误日志:/var/log/httpd/error_log
拒绝服务攻击有很多种,有一种消耗网络资源带宽,属于哪一种?
系统缺陷、系统配置、物理缺陷
洪泛攻击:它让无用的信息占去系统的带宽或其他资源,使得系统不能服务于合法用户
社会工程学的概念?了解哪些属于社会工程学?
社会工程学的概念:
是⼀种通过对受害者⼼理弱点、本能反应、好奇⼼、信任、贪婪等⼼理陷阱进⾏诸如 欺骗、伤害等危害⼿段,取得⾃身利益的攻击⽅法。
社会工程学利⽤了⼈们的⼼理特征,通过骗取 ⽤户的信任,获取机密信息、系统设置等不公开资料,为⽹络攻击和病毒传播创造有利条件。
属于社会工程学的:
钓鱼、诈骗等
常见社会工程学攻击方式
- 网络钓鱼式攻击
- 密码心理学攻击
- 收集敏感信息攻击
- 恐吓被攻击者攻击
- 反向社会工程学攻击
暴力破解或者猜测弱口令,应用环境是什么?(反过来问,哪几种不能通过弱口令进行攻击)
Sql注入,用到了服务器、数据库的哪些漏洞?
Web漏洞、sql注入漏洞
(1)用户提供的数据没有经过应用程序的验证、过滤或净化
(2)动态查询语句或非参数化的调用,在没有上下文感知转义的情况下,被用于解释器。
(3)在ORM搜索参数中使用了恶意数据,这样搜索将获得包含敏感或未授权的数据
(4)恶意数据直接被使用或者连接,如SQL语句或命令在冬天查询语句、命令或存储过程中包含结构和恶意数据。
预攻击阶段要干什么?
进行攻击前的准备
- 确定攻击所针对的操作系统类型、应用平台类型等,根据获取的信息,查看有哪些可以利用的漏洞
- 进行信息收集
- 网络信息、系统信息
- 用户信息
- 网络扫描、漏洞扫描等
端口扫描的作用是什么?
信息挖掘的作用-
- 了解系统向外界提供了哪些服务
- 探测目标主机系统端口目前正向外提供何种服务
Nmap可以实现哪些功能?
端口扫描、主机发现、主机扫描、漏洞扫描
数据库通常用户名
mysql: root
sqlserver: sa
root、admin不是正确选项
填空题
发出攻击的生命周期?
分为三个步骤:攻击发起阶段、攻击作用阶段、攻击结果阶段。
加密体系 des?aes? 对称/非对称?
加密体系:对称、非对称、base64位加密、消息摘要算法、数字签名算法
非对称加密算法:Rsa、DSA、ECC
对称加密算法:Des、Aes、RC4
Linux体系架构分为几层?【PPT-Chap3:页7】
lInux体系架构分为两层: 用户态(用户空间)和 内核态(内核)
Linux操作系统采用宏内核(Monolithic Kernel)架构,整个操作系统是一个运行在核心态的单一的进程文件,这个二进制文件包含进程管理、内存管理、文件管理等。
计算机病毒由什么组成?
计算机病毒一般由感染标记、初始化模块、感染模块和表现模块组成。
简述题
B/S、C/S架构?概念、特点、体系结构要清楚
B/C (Browser/Server)【浏览器/服务器结构】
概念:
基于B/S结构的应用系统由前端的浏览器和后端的服务器组成,数据和应用程序都放在服务器上。
体系结构:
B/S结构是由表示层、业务逻辑层和数据层组成的典型的三层体系结构。
特点:
- 优点:1. 统一了客户端应用软件 2. 易于部署和维护 3. 可扩展性好 4. 信息共享度高
- 缺点:1. 功能受限 2. 复杂的应用构造困难 3. 安全隐患较大
C/S (Client/Server)【客户机/服务器模式】
概念:
C/S 结构是指将事务处理分开进行的网络系统
- 详细:C/S结构将与用户交互的图形用户界面(Graphical User Interface,GUI)和业务应用处理与 数据库访问与处理相分离,服务器与客户机之间通过消息传递机制进行对话,由客户机向服务 器发出请求,服务器在进行相应的处理后经传递机制向客户机返回应答
体系结构:
第一层:在客户机系统上有机融合了表示与业务逻辑
第二层:通过网络结合了数据库服务器
特点:
- 优点:1. 交互性强 2. 具有较强的数据操纵与事务处理能力 3. 可有效保护数据的安全性
- 缺点:1. 可扩展性差 2. 应用规模受限
什么是主动攻击?被动攻击?主动攻击、被动攻击的特点?
主动攻击
主动攻击是指:攻击者为了实现攻击目的,主动对需要访问的信息进行非授权的访问行为。
可以分为:中断、篡改、伪造三种类型 【分别针对可用性、完整性和真实性】
特点:难以预防,但却容易检测,所以重点是在于检测并从破坏中恢复
被动攻击
被动攻击是指:利用网络存在的漏洞和安全缺陷对网络体系的硬件、软件及系统中的数据进行的攻击 。【被动攻击主要分为窃听和流量分析两种方式。】
特点:
- 一般不对数据进行篡改
- 通过截取或窃听等方式,未经用户授权,对消息内容进行获取或对业务数据进行分析
黑客攻击的过程?(还要具体解释,信息获取怎么获取,巴拉巴拉的)
目录探测 → 信息收集→ 获得访问权限 → 提权 → 信息窃取 → 清理痕迹 → 创建后门
信息搜集 → 漏洞探测→ 漏洞利用【获得webshell+提权】→内网转发→内网横向渗透→权限维持【创建并隐藏后门,进行长期的信息收集】→清理痕迹
信息收集:比如:服务器的类型与版本【windwos还是linux】【方法:nmap -O ip 进行扫描】、脚本类型【Php、jsp还是asp等】【Firefox的插件wappalyzer查看】、网站容器【tomcat、apache、iis等】、数据库类型与版本【mysql、orcale等】、目标开放的端口【nmap端口扫描】,指定端口运行的服务【Nessus主机扫描】、目标主机上有哪些漏洞【Nessus漏洞扫描】、目录敏感目录和文件【御剑】、旁站和C段扫描、还可以通过谷歌黑客语法进行网站人员的信息搜集。
漏洞探测:探测网站是否存在一些常见的Web漏洞,比如sql注入、xss、ssrf、文件上传等。【通过网站漏洞扫描工具+手工测试:半自动化,工具比如:Nessus、AWVS】
漏洞利用:
当我们探测到了该网站存在漏洞之后,我们就要对该漏洞进行利用了。不同的漏洞有不同的利用工具,很多时候,通过一个漏洞我们很难拿到网站的webshell,我们往往需要结合几个漏洞来拿webshell。常用的漏洞利用工具如下:SQL注入 —> Sqlmap的使用 XSS—> Beef-XSS的使用 Burpsuite进行抓包改包 上传漏洞的话→上传一句话木马上去,进而再获得webshell。
获得了webshell后,一般权限很低,所以我们需要提权,可以选择反弹一个MSF类型的shell提权,也可以MSF和CobaltStrike联动。 也可以使用其他提权:Windows提权 、 Linux提权
内网转发:进一步的探测内网主机的信息的话,我们就需要进行内网转发了。通过各种类型的代理,比如EW正向代理、EW反向代理等
内网横向渗透:
windows主机:去翻目录或者桌面上的备忘录中,可以找到一些隐私信息。我们还可以查找数据库的连接文件,查看数据库的连接账号密码等敏感信息。我们尽量不要使用远程桌面。从该主机上找到的账号密码,可以做一个字典,在对内网其他机器进行爆破的时候,很有可能是同密码。
创建后门:入侵系统后,对自己题提权,拥有修改注册表的权限,然后通过修改注册表实现对系统的攻击或为下一次攻击做好准备。
清理痕迹:在渗透前挂上代理,然后在渗透后痕迹清理:删除并篡改系统日志,避免被别人发现我们的攻击行为。
进程、线程、程序、服务,以及它们之间的关系?
详情
【PPT-Chap2:页52-页53】
进程:
进程是正在进行的程序的实例,是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位。
例:在计算机上打开了QQ就打开了一个进程。
线程:
线程是进程的一部分,有时也称为轻量级进程(Light Weight Process,LWP),是程序执行流的最小单元。
例:在QQ这个进程里,传输文字开一个线程,传输语音开了一个线程,弹出对话框又开了一个线程。
程序:
程序是一组可执行指令的集合,是指为了得到某种结果而可以由计算机等具有信息处理能力的装置执行的代码化指令序列
服务:
服务是执行指定系统功能的程序、例程(例程是某个系统对外提供的功能接口或服务的集合,如操作系统的API,例程的作用类似于函数)或进程
![](https://blog-1310394682.cos.ap-beijing.myqcloud.com/Blog/Untitled 6.png)
进程
- 进程是正在进行的程序的实例
- 进程是系统进行资源分配和调度的基本单位
- 进程是一个动态的实体,有自己的生命周期
- 例如:在计算机上打开了QQ就打开了一个进程
线程
线程是进程的一部分,是程序执行流的最小单元。
- 例如QQ这个进程里,传输文字开一个线程,传输语音开一个线程
程序
程序是一组可执行指令的集合,静态实体
服务
服务是执行特定系统功能的程序、例程或进程
进程、线程之间的联系
- 进程和线程都是由操作系统所包含的程序运行的基本单元,系统利用该基本单元实现应用的并发性。
- 系统在运行时会为每一个进程分配不同的内存区域,但不会为线程分配,线程只能共享资源。
- 进程是系统资源分配时的一个基本单位,拥有一个完整的虚拟空间,不依赖线程独立存在
进程、线程、程序之间的联系
- 一个程序至少有一个进程,一个进程至少有一个线程
- 进程是动态实体【是程序的运行实体,有自己的生命周期】,程序是静态实体,只有程序在运行时才会产生进程。
服务与进程之间的联系
- 不是一一对应的
- 进程是当前系统使用中调用程序的实体
- 服务是当前使用的一些规则,服务的打开与否关系到系统能否执行某些特定的功能
什么是入侵检测?功能是什么?作用是什么?
- 入侵检测:“主动防御”的检测技术
- 功能:具有较强的实时防护功能,可以迅速提供对系统、网络的攻击和用户误操作的实时防护
- 作用:在检测到入侵企图时,进行拦截或题型管理员做好防护
什么是拒绝服务?分布式拒绝服务?
- 拒绝服务(Deny of Service,DoS) :
- ”通过连续向攻击目标发送超出其处理能力的过量数据,消耗其有限的网络链路或操作系统资源,使之无法为合法用户提供有效服务
- 分布式拒绝服务(Distributed DoS,DDoS)
- 利用网络中不同的主机同时发起DoS 攻击,使得被攻击对象不能服务于正常用户
- DoS与DDoS差异
- DoS攻击中的数据包来自一个固定的攻击源
- DDoS攻击中的数据包来自不同攻击源
网路数据分析
学会看命令。
攻击源ip地址,目标地址ip,攻击语言、目标地址、IP地址、怎么进行交互的?
TCP三次握手的含义?
(建立、确认、请求、返回、建立、传输数据、释放、确认)
答案在一幅图里
![](https://blog-1310394682.cos.ap-beijing.myqcloud.com/Blog/Untitled 7.png)
TCP连接扫描(TCP connect Scan)也称为“TCP全连接扫描”,它利用TCP协议的3次握手过程,直接连到目标端口并完成一个完整的3次握手过程
目标主机状态及应答数据包
Close状态
表示目标主机的端口处于关闭状态
RST数据包 → 丢弃
其它数据包 → 返回RST数据包
LISTEN状态
表示目标主机的端口处于监听状态
SYN数据包→ 返回SYN或ACK数据包→ SYN-RCVD状态
ACK数据包→ 返回RST数据包
其它数据包→ 丢弃
SYN-RCVD状态
表示目标主机的端口处于同步收到状态
RST数据包→ 返回LISTEN状态
ACK数据包 → 进入ESTABLISHED(连接建立)状态,并建立TCP连接
其它数据包→ 丢弃