小白日记52:kali渗透测试之Web渗透-HTTPS攻击(Openssl、sslscan、sslyze、检查SSL的网站)
HTTPS攻击
全站HTTPS正策划稿那位潮流趋势
如:百度、阿里
HTTPS的作用
CIA
解决的是信息传输过程中数据被篡改、窃取 【从中注入恶意代码,多为链路劫持】
加密:对称、非对称、单向
解密攻击(明文、证书伪造)
协议漏洞(贵宾狗)、https实现方法的漏洞(参考心脏出血漏洞原理)、配置不严格
SSL(Secure socket layer)
保证网络通信安全的加密协议
TLS 它建立在SSL 3.0协议规范之上,是SSL 3.0的后续版本,可以理解为SSL 3.1 【为了兼容性问题,低版本的TLS还在使用】
SSL与TLS的区别
#TLS/SSL、HTTPS、HTTP over SSL 通俗上表示相同的意思
SSL/TLS也被用于其他场景的传输通道加密
1、邮件传输(服务器间、客户端与服务期间)
2、数据库服务器间
3、LDAP身份认证服务器间
4、SSL VPN
5、远程桌面RDP通信过程中的加密和身份认证
查询本机拥有的根证书 【可通过浏览器查询】
非对称加密算法 【加密数据量比较大的信息,性能比较差】
Diffie-Hellman key exchange
Rivest Shamir Adleman (RSA)
Elliptic Curve Cryptography(ECC)
对称加密算法
Data Encryption Standard (DES) /3DES
Advance Encryption Standard (AES)
International Data Encryption Algorithm (IDEA)
Rivest Cipher 4 (RC4)
WEP、TLS/SSL、RDP、Secure shell
单向加密算法 (HASH)
MD5、SHA-1、SHA-2 【前两个已被认为不安全】
SHA-3已经设计完成,但尚未广泛使用
SHA-2是TLS 1.2唯一支持的单向加密算法
碰撞攻击针对单向加密算法
两个不同的文件生成相同的HASH值
SSL的弱点
SSL是不同的对称、非对称、单向加密算法的组合加密实现 (cipher suite)
因为服务器端为提供更好的兼容性,选择支持大量过时的cipher suite
在协商过程中强迫降级加密强度
现代处理器计算能力可以在可接受时间内破解过时加密算法
通过购买云计算资源破解
Openssl 【kali系统命令】
直接调用openssl库识别目标服务器支持的SSL/TLS cipher suite
查看网站使用的证书
openssl s_client -connect www.baidu.com:443 【s_client:作为一个客户端 -connect:连接 +服务器域名:端口】
测试是否支持某协议(某低版本协议)
openssl s_client -tls1_2 -cipher 'ECDH-RSA-RC4-SHA' -connect www.taobao.com:443
测试是否所有不安全的ciphers suite都不支持
openssl s_client -tls1_2 -cipher "NULL,EXPORT,LOW,DES" -connect www.taobao.com:443
查看目前可被破解的cipher suite 【openssl】
openssl ciphers -v "NULL,EXPORT,LOW,DES"
#可用man openssl查看openssl的参数,自定义构造命令
#Openssl需要大量密码学相关知识,命令复杂,结果可读性差,但的确强大
可自动识别SSL配置错误、过期协议,过时cipher suite 和hash算法
默认会检查CRIME、heartbleed漏洞
绿色表示安全,黄色表示警告,红色表示危险
TLS支持的cipher suite
sslscan --tlsall www.taobao.com:443
分析证书详细信息
sslscan --show-certificate --no-ciphersuites www.taobao.com:443
python语言编写
检查SSL过时版本
检查存在弱点的cipher suite
扫描多站点时,支持来源文件(指定扫描文件)
检查是否支持会话恢复
sslyze --regular www.taobao.com:443 【调用插件】
#NAMP枚举SSL脚本
nmap --script=ssl-enum-ciphers.nse www.taobao.com
查询nmap脚本
对ssl进行检查的网站 【https://www.ssllabs.com/ssltest】
只需输入域名 【可隐藏自己IP】
小白日记52:kali渗透测试之Web渗透-HTTPS攻击(Openssl、sslscan、sslyze、检查SSL的网站)的更多相关文章
- 小白日记28:kali渗透测试之Web渗透-扫描工具-Nikto
扫描工具-Nikto #WEB渗透 靶机:metasploitable 靶场:DVWA[默认账号/密码:admin/password] #新手先将DVWA的安全性,调到最低,可容易发现漏洞 侦察[减少 ...
- 小白日记30:kali渗透测试之Web渗透-扫描工具-Skipfish
WEB渗透-skipfish Skipfish是一个命令行模式,以C语言编写的积极的Web应用程序的安全性侦察工具,没有代理模式. 它准备了一个互动为目标的网站的站点地图进行一个递归爬网和基于字典的探 ...
- 小白日记51:kali渗透测试之Web渗透-WebShell(中国菜刀、WeBaCoo、Weevely)
webshell 本质:<?php echo shell_exec($_GET['cmd']);?> windows平台 中国菜刀官网:胖客户端程序,国产中比较优秀的webshell,适用 ...
- 小白日记54:kali渗透测试之Web渗透-补充概念(AJAX,WEB Service)
补充概念 AJAX(异步javascript和XML) Asynchronous javascript and xml 是一个概念,而非一种新的编程语言,是一组现有技术的组合 通过客户端脚本动态更新页 ...
- 小白日记50:kali渗透测试之Web渗透-CSRF
CSRF CSRF原理:经常与XSS混淆. 从信任的角度进行区分:XSS:利用用户对站点的信任:CSRF:利用站点对已经身份认证的信任(有一定的信任)[默认情况:站点不信任客户端] 结合社工在身份认证 ...
- 小白日记37:kali渗透测试之Web渗透-手动漏洞挖掘(三)-目录遍历、文件包含
手动漏洞挖掘 漏洞类型 #Directory traversal 目录遍历[本台机器操作系统上文件进行读取] 使用者可以通过浏览器/URL地址或者参数变量内容,可以读取web根目录[默认为:/var/ ...
- 小白日记35:kali渗透测试之Web渗透-手动漏洞挖掘(一)-默认安装引发的漏洞
手动漏洞挖掘 即扫描后,如何对发现的漏洞告警进行验证. #默认安装 流传linux操作系统比windows系统安全的说法,是因为windows系统默认安装后,会开放很多服务和无用的端口,而且未经过严格 ...
- 小白日记34:kali渗透测试之Web渗透-扫描工具-Burpsuite(二)
扫描工具-Burpsuite 公共模块 0.Spider 爬网 手动爬网 先禁用截断功能 手动将页面中点击所有连接,对提交数据的地方,都进行提交[无论内容] 自动爬网[参数设置] 指定爬网路径,否则其 ...
- 小白日记32:kali渗透测试之Web渗透-扫描工具-QWASP_ZAP
扫描工具-QWASP_ZAP 十大安全工具之一,集成性工具,功能完善,而且强大.既可做主动扫描,也可做截断代理.开源免费跨平台,简单易用,体验相对混乱,但在主动扫描方面,相对占优.[kali集成] # ...
随机推荐
- URAL-1991 The battle near the swamp 水题
题目链接:http://acm.timus.ru/problem.aspx?space=1&num=1991 水题.. //STATUS:C++_AC_15MS_333KB #include ...
- [转]软件开发过程(CMMI/RUP/XP/MSF)是与非?
经常看到和听到大家在争论敏捷过程.RUP和CMM 哪个软件开发过程更好或者哪个过程不好,各自都有理由.争论得不亦乐乎......实际上,没有十全十美的过程,也不存在更好的过程.关键是什么样的过程适合自 ...
- 三、 将DataTable 转换为List
1. 方法public static IList<T> ConvertTo<T>(DataTable table) { if (table == null) { return ...
- SpriteKit
[SpriteKit] Sprite Kit provides a graphics rendering and animation infrastructure that you can use t ...
- Struts – Multiple configuration files example
Many developers like to put all Struts related stuff (action, form) into a single Struts configurati ...
- python知识点 2014-07-09
迭代协议: 类实现方法__next__,则可以使用for.while来实现迭代 使用iter或者next实现手工迭代: L = [1,2,3] I = iter(L) print(I.next()) ...
- 用python实现远程复制 (scp + expect )
scp 功能很强大,但需要人工输入 password, 当然可以通过把 公钥保存在远程主机的 ~/.ssh 目录中,而后就不用输入password,但这需要配置. 用 sshpass 可能在命令输入 ...
- python 加密解密(base64, AES)
1. 使用base64 s1 = base64.encodestring('hello world') s2 = base64.decodestring(s1) print s1, s2 结果 1 2 ...
- SQL语句查找重复记录
select * from AM_C4_ENTRY t where t.created_by in ( select t.created_by from AM_C4_ENTRY t group by ...
- jshint 安装使用
首先要安装nodjs, 参考另一篇文章: Ubuntu 编译安装node.js 然后运行 npm install jshint -g 之后在要扫描的目录下运行命令 jshint . >> ...