网络安全与IP安全网络安全
网络安全
是指网络系统的硬件,软件以及系统中的数据收到的保护。
保护的基本属性为:机密性,身份认证,完整性和可用性;
基本特征:相对性,时效性,相关性,不确定性,复杂性和重要性。
在该方向主要研究如下领域:
入侵者如何攻击网络,
如何防护网络对抗攻击,
设计网络体系结构免疫攻击。
因为Internet最初设计几乎没考虑安全性,所以网络安全需要在网络的各个层次考虑。
网络安全威胁
主要有窃听,插入,假冒(伪造源IP),劫持接管连接和拒绝服务等攻击,具体方法如下:
映射(扫描):确定主机开放的端口及运行的服务,工具nmap;
对策:记录网络配置,分析识别可疑活动。
分组嗅探:借助广播介质,网卡在混杂模式下接口接受记录所有经过的分组帧,工具wireshark;
对策:组织中的主机运行软件,周期性监测网络接口是否工作在混杂模式,不使用广播介质。
IP欺骗:生成原始IP,将源IP设置为其他地址;
对策:入口过滤,路由器不转发源IP地址无效的IP分组(源IP不属于所连接的网络)。
拒绝服务:通过恶意泛洪分组等手段淹没接收方,耗尽带宽等资源:
对策:过滤泛洪分组,可能错杀,追溯源头,难以应对反射攻击。
身份认证
该部分要证明报文确实来自声称的发送方,还要验证报文在传输过程未被篡改,时间,顺序等也未被篡改,预防抵赖。
密码散列函数
该函数具有算法公开,计算快速的特点,多对一映射产生定长输出,不同报文产生相同的散列值,并且是单向不可逆推,抗强/弱碰撞性。
常用算法有:
md5,输出128位散列值,不足够安全;
sha1,输入消息长度<2的64次方,散列值为160位,速度更慢但是安全性更高。
报文认证
大致思路是将报文和报文摘要构成扩展报文。
报文认证码Mac,报文m+认证秘钥s+密码散列函数h->扩展报文(m,h(m+s)),
收到后将m+s的散列值做对比,这种方法还解决不了否认问题。
数字签名
有可验证性,不可伪造性和不可抵赖性。
IP安全
虚拟专用网络VPN
最初使用专用网PN来保证安全,使用专属网络设备等建设专门服务于特定组织机构的网络,这种实现安全网络的方法成本过高,便有了虚拟专用网络。
VPN是通过建立在公共网络上的安全通道,实现远程用户等与总部的安全连接,不实际独占公共网络的资源,是一条逻辑穿过公共网络安全稳定的隧道。
需要实现:数据机密性保护,数据完整性认证,数据源身份认证,防重放攻击和访问控制。
关键技术:隧道技术,数据加密,身份认证,秘钥管理,访问控制,其中隧道技术为核心技术。
隧道技术
隧道技术是通过Internet提供安全的点到点的数据传输安全通道,实质是一种利用隧道协议的封装。
该技术有三层,乘客协议,封装协议和承载协议;
常见在第二层的协议有pptp点对点隧道协议和l2tp协议,主要用于远程客户机访问局域网;
第三层协议有IPsec,用于网关到网关和网关到主机。
具体实现技术有:
IPsec最安全使用面最广,ssl具有高层协议的优势,l2tp最好的实现远程接入VPN的技术。
IPsec
提供机密性,完整性,源认证,防重放服务,IPsec数据报的发送与接受均由端系统完成。
提供IPsec服务的两个协议:
认证头ah:IP数据报头协议号51,提供源认证和数据完整性检验,不提供机密性;
封装安全头esp:IP数据报头协议号50,提供源认证,数据完整性和机密性服务,比ah应用更广泛。
web应用安全
主动攻击:篡改c/s间信息或站点信息,难防易检; 被动攻击:监听或信息量分析,难检易防。 基于应用层,用特定应用制定安全服务;
基于传输层:ssl或tls,对应用透明,应用层数据会被加密; 基于网络层:IPsec实现端到端的安全机制,通用解决方案,各种应用程序均可利用IPsec提供的安全机制。
无线局域网安全
wep有线等效保密,使用对称秘钥加密,自同步(每个分组单独加密);
加密实现过程如下:
计算出数据完整校验值icv,附于数据后四位测测,每端有104位共享秘钥,发送端生成24位初始向量附到秘钥上,发送端附加8位keyid,128位秘钥输入到伪随机数发生器产生秘钥流,利用rc4算法加密数据+icv。
解密过程: 提取iv iv与共享秘钥输入伪随机数发生器得到秘钥流 逐字节异或解密d与icv 利用icv校验完整性
破解
漏洞 每帧一个24位的iv导致最终会被重用 iv以明文传输,重用的iv易被检测 攻击 诱使加密已知明文,逆推k秘钥序列 下次重用时可解密 802:1i改进的安全 提供秘钥分发 利用独立于ap的认证服务器
总结
此部分属于安全的拓展内容了,所以本次只做大致了解,知道有这些协议个方法来应对各个层的安全威胁就行了接下来我将给各位同学划分一张学习计划表!
学习计划
那么问题又来了,作为萌新小白,我应该先学什么,再学什么? 既然你都问的这么直白了,我就告诉你,零基础应该从什么开始学起:
阶段一:初级网络安全工程师
接下来我将给大家安排一个为期1个月的网络安全初级计划,当你学完后,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web渗透、安全服务、安全分析等岗位;其中,如果你等保模块学的好,还可以从事等保工程师。
综合薪资区间6k~15k
1、网络安全理论知识(2天) ①了解行业相关背景,前景,确定发展方向。 ②学习网络安全相关法律法规。 ③网络安全运营的概念。 ④等保简介、等保规定、流程和规范。(非常重要)
2、渗透测试基础(1周) ①渗透测试的流程、分类、标准 ②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking ③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察 ④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等
3、操作系统基础(1周) ①Windows系统常见功能和命令 ②Kali Linux系统常见功能和命令 ③操作系统安全(系统入侵排查/系统加固基础)
4、计算机网络基础(1周) ①计算机网络基础、协议和架构 ②网络通信原理、OSI模型、数据转发流程 ③常见协议解析(HTTP、TCP/IP、ARP等) ④网络攻击技术与网络安全防御技术 ⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现
5、数据库基础操作(2天) ①数据库基础 ②SQL语言基础 ③数据库安全加固
6、Web渗透(1周) ①HTML、CSS和JavaScript简介 ②OWASP Top10 ③Web漏洞扫描工具 ④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等) 那么,到此为止,已经耗时1个月左右。你已经成功成为了一名“脚本小子”。那么你还想接着往下探索吗?
阶段二:中级or高级网络安全工程师(看自己能力)
综合薪资区间15k~30k
7、脚本编程学习(4周) 在网络安全领域。是否具备编程能力是“脚本小子”和真正网络安全工程师的本质区别。在实际的渗透测试过程中,面对复杂多变的网络环境,当常用工具不能满足实际需求的时候,往往需要对现有工具进行扩展,或者编写符合我们要求的工具、自动化脚本,这个时候就需要具备一定的编程能力。在分秒必争的CTF竞赛中,想要高效地使用自制的脚本工具来实现各种目的,更是需要拥有编程能力。
零基础入门的同学,我建议选择脚本语言Python/PHP/Go/Java中的一种,对常用库进行编程学习 搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP,IDE强烈推荐Sublime;
Python编程学习,学习内容包含:语法、正则、文件、 网络、多线程等常用库,推荐《Python核心编程》,没必要看完
用Python编写漏洞的exp,然后写一个简单的网络爬虫
PHP基本语法学习并书写一个简单的博客系统
熟悉MVC架构,并试着学习一个PHP框架或者Python框架 (可选)
了解Bootstrap的布局或者CSS。
CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享🎁
😝朋友们如果有需要全套《黑客&网络安全入门&进阶学习资源包》,可以扫描下方二维码免费领取
1️⃣零基础入门
① 学习路线
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
② 路线对应学习视频
同时每个成长路线对应的板块都有配套的视频提供:
因篇幅有限,仅展示部分资料
2️⃣视频配套资料&国内外网安书籍、文档
① 文档和书籍资料
② 黑客技术
因篇幅有限,仅展示部分资料
3️⃣网络安全源码合集+工具包
4️⃣网络安全面试题
上述所有资料 ⚡️ ,朋友们如果有需要全套 📦《网络安全入门+进阶学习资源包》,可以扫描下方二维码免费领取 🆓