第4天:基础入门-30余种加密编码进制&数据库&系统&代码&参数值
知识点: 1、存储密码加密-Web&数据库&系统 2、传输数据编码-各类组合传输参数值 3、代码特性加密-JS&PHP&NET&JAVA 4、数据显示编码-字符串数据显示编码
本课意义: 1.了解加密编码进制在安全测试中的存在 2.掌握常见的加密解密编码解码进制互转的操作 3.了解常见的加密解密编码解密进制互转的影响 旨在解决类似疑问,提供思路: 你是否碰到不知道的加密方式? 你是否碰到无法找到的解密平台?
识别算法编码类型: 1、看密文位数 2、看密文的特征(数字,字母,大小写,符号等) 3、看当前密文存在的地方(web,数据库,操作系统等应用)
#详细点: 密码存储加密: MD5 SHA1 NTLM AES DES RC4 MD5值是32或16位由数字"0-9"和字母"a-f"所组成的字符串 SHA1这种加密的密文特征跟MD5差不多,只不过位数是40 NTIM这种加密是windows的哈希密码,标准通讯安全协议 AES,DES,RC4这些都是对称性加密算法,引入密钥,密文特征与Base64类似
应用场景:各类应用密文,自定义算法,代码分析,CTF安全比赛等
传数据编码: BASE64 URL HEX ASCII BASE64值是由数字"0-9"和字母"a-f"所组成的字符串,大小写致感,结尾通常有符号= URL编码是由数字"0-9"和字母"a-f"所组成的字符串,大小写敏感,通常以数字字母间隔 HEX编码是计算机中数据的一种表示方法,将数据进行十六进制转换,它由0-9,A一F,组成 ASCII编码是将128个字符进行进制数来表示,常见AscII码表大小规Q则:0-9<A-Z<a~z
举例: 个人博客-URL解码 国外WEB-BASE64解码 搜狐视频-BASE64解码 应用场景:参数传递(如注入影响),后期绕过干扰写法应用,视频地址还原等
JS前端代码加密: Js颜文字 jother JSFUCK 颜文字特征:一堆颜文字构成的js代码,在F12中可直接解密执行 jother特征:只用!+()【】{}这八个字符就能完成对任意字符串的编码。也可在F12中解密执行 JSFUCK特征:与jother很像,只是少了{}
后端代码加密: PHP .NET JAVA PHP:乱码,头部有信息(可通过在线解密工具) .NET:DLL封装代码文件 JAVA:JAR&CLASS文件 举例:Zend ILSpy IDEA 应用场景:版权代码加密,开发特性,CT比赛等
数据库应文加密: MYSQL MSSQL等
数据显示编码: UTF-8 GBK2312等
演示案例: Web-ZZCMS-密文-MD5 注册账号后对密码进行md5解密,解密出明文字段(md5是摘要算法,不是加密算法,加密是不可逆的,所以MD5解密的原理是加速了杂凑冲撞。简单来说,就是知道一个MD5串,然后使用原文进行MD5散列后再生成同样的MD5串,也就是说找到不同的原文产生相同MD5串的方法,这不是解密而称之为碰撞。)
Web-Discuz-密文-MD5&Salt MD5加密过程中可以通过加salt的方式增强加密的强度,这种情况下是无法通过MD5解密得到明文的。
在知道盐值的情况下可以解密(可通过百度等方式得知CMS常用盐值)
系统-Windows.-密文-NTLM&HASH 在win7版本之后账号密码通过NTML加密(Mimikatz 是一款强大的密码获取和访问凭证工具。旨在展示在 Windows 操作系统中所存储的敏感信息(如明文密码、PIN码和NTLM哈希等)是如何被攻击者获取的。这个工具可以通过多种方法提取凭证,包括从内存中提取明文密码、导出 Kerberos 切票、解密 Windows 凭据管理器中的密码等。)
综合参数密文传输-AES&BASE64 靶场解题思路:目录扫描得到未授权访问文件–通过文件得知加密方式(AES加密中密码、偏移量、模式等)
将密文解密可知参数值,通过改变参数值加密注入。 代码-解密-解密反编译-Zend&Dl川&Jar CTF赛题-buuoj–single dog-JS颜文字 解题思路:通过foremost将文件分离(foremost是另一个常用的文件分离工具,它可以自动识别文件中的不同部分,并将它们分离出来)—将得到的颜文字通过在线JS工具解密–即可得到flag CTF赛题-xuenixiang-Jsfuck-JSFUCK 解题思路:通过将html文件下载使用浏览器打开会乱码,更改编码方式为UTF-8得到明文
然后查看源代码发现存在有明显jsFUCK加密的特征
通过JSFUCK解密得到明文
拓展补充参考资料: 部分资源: https://www.cmd5.com http://tmxk.org/jother Jsfuck 综合 对称/非对称 JS颜文字
第5天:基础入门-资产架构&端口&应用&CDN&WAF&站库分离&负载均衡
知识点: 1、资产架构-端口&目录&插件&接口&多站点&多应用 2、番外安全&域名&服务器本身&服务厂商&管理人员 3、考虑阻碍-站库分离&CDN&AF&负载均衡&主机防护
详细点: 1、前置条件-购买使用-云服务器:域名等 2、架构搭建-目录:端口:子域:插件c应用等 3、安全部署-WAF防火墙:主机防护&HIDs等 4、性能优化-负载均衡:CDN加速:OsS云存储等
演示案例: 资产架构-BT搭建&多站点&多插件&多应用等 番外安全-Aliyun&域名解析&云服务器&个人等 考虑阻碍-站库分离&部署防护&负载均衡&CDN等
#资产架构: WEB单个源码指向安全 WEB多个目录源码安全:一个域名的目录下有多个程序,任一程序有漏洞都可打 WEB多个端口源码安全:一个域名,不同端口对应不同程序 服务器架设多个站点安全(旁站):一个ip对应不同域名 架设第三方插件接口安全 服务器架设多个应用安全
内容越多,漏洞可能越多
#番外安全: 基于域名解析安全 基于服务器本身安全 基于服务商信息安全 基于管理个人的安全:社工
#考虑阻碍: 阻碍-站库分离(网站和数据库放在不同服务器) 阻碍-CDN功加速服务
CDN(Content Delivery Network)是一种分布式网络架构,旨在提供高性能、可扩展的内容传输和交付服务。CDN的目标是加快网站和应用程序的内容传输速度,减少延迟并提供更好的用户体验。
CDN 的工作原理如下: 缓存:CDN 在全球各地部署了多个边缘节点服务器,这些服务器上有大容量的缓存存储。原始内容(如网页、图像、视频等)会被缓存在这些服务器上。 路由:当用户请求访问某个资源时,请求会被智能路由到距离用户最近的边缘节点服务器。 加速交付:边缘节点服务器提供缓存的内容,直接向用户提供所需的资源,而不必每次都从源服务器获取。这样可以显著减少网络延迟,并提高内容的传输速度和响应时间。 负载均衡:CDN 可以根据流量负载和网络拥塞情况自动选择最佳的边缘节点来处理请求,确保高可用性和稳定性。
阻碍-负载均衡服务
负载均衡(LoadBalancing)是一种在计算机网络中分配工作负载的方法,通过将请求均匀地分发到多个服务器或资源上,以提高系统的性能、可靠性和可扩展性。 负载均衡的主要目标是避免单个服务器过载,并确保每个服务器都能够有效地处理请求。 负载均衡会使得服务器增多,拿下的服务器不一定是权限最高。
阻碍-WAF应用防火墙(流量侧):保护网站 阻碍-主机防护防火墙(端点侧):保护服务器