第一次渗透

第一次接触渗透感觉十分的不熟悉,我对前面的课程有很多都没有学到位,很多都听不懂,最初几节课的环境搭建感觉听的云里雾里的。之前授课老师和这门课的老师讲课方式不一样,所以还没有适应。我不知道环境搭建需要那些东西,而且我感觉老师讲课的方式有点乱,我之前的课程很多忘记了,所以接收的慢。我看回放的时候,有些上课的内容视频回放里面没有。

一、 传输层加密:HTTPS 协议(最核心)

这是 Web 通信中最基础也是最关键的加密方式,作用于 TCP/IP 传输层与应用层之间,通过 SSL/TLS 协议实现数据加密。PHP 本身不需要额外编写加密代码,只需配置 Web 服务器(Nginx/Apache)开启 HTTPS。

1.核心原理

采用非对称加密(RSA/ECC)完成密钥协商,生成临时的对称加密密钥(AES)。

后续数据传输全部使用对称加密(效率更高),同时通过消息认证码(MAC) 验证数据完整性。

2.注意事项

证书必须由可信 CA 机构签发(避免自签名证书的安全警告)。

配置 Web 服务器时,禁用老旧的 SSLv3、TLSv1.0/TLSv1.1 协议,只保留 TLSv1.2/TLSv1.3。

二、 应用层加密:PHP 代码级加密

当需要对特定敏感数据(如用户密码、支付信息)进行加密,或在非 HTTPS 场景下(如内部接口、Socket 通信)传输数据时,需要在 PHP 中通过代码实现加密。

  1. 对称加密(共享密钥加密)

特点:加密和解密使用同一个密钥,效率高,适合加密大量数据。PHP 推荐使用 openssl 扩展实现(替代已废弃的 mcrypt 扩展)。

常用算法:AES(Advanced Encryption Standard)

AES 是目前最安全的对称加密算法,常见模式有 CBC(需要初始化向量 IV)、GCM(自带完整性校验)。

注意事项

密钥长度需与算法匹配:AES-128(16 位)、AES-192(24 位)、AES-256(32 位)。

IV 必须随机生成且加密解密一致,不可硬编码;推荐使用 openssl_random_pseudo_bytes() 生成随机 IV。

优先使用 GCM 模式,该模式自带完整性校验,比 CBC 更安全。

  1. 非对称加密(公钥私钥加密)

特点:加密用公钥,解密用私钥,安全性高但效率低,适合加密少量数据(如对称密钥、签名)。常用算法:RSA。

核心用途

场景 1:A 用 B 的公钥加密数据 → 只有 B 的私钥能解密,保障数据机密性。

注意事项

密钥长度建议 2048 位及以上,1024 位已被认为不安全。

RSA 加密数据长度有限制(约为密钥长度 / 8 - 11),不能直接加密大文件。

私钥必须妥善保管,绝对不能泄露到公网。

  1. 哈希与签名(保障数据完整性)

哈希算法用于验证数据是否被篡改,签名算法用于验证数据来源。

(1) 哈希算法(不可逆)

常用算法:md5(已不安全,不推荐)、sha256、sha512。PHP 推荐使用 hash() 函数或 hash_hmac() 函数(带密钥的哈希)。

(2) 数字签名(RSA 签名)

结合非对称加密,用于防篡改 + 防抵赖。流程:发送方用私钥签名 → 接收方用公钥验签

相关推荐
疯狂吧小飞牛2 小时前
GPG基础指令
linux·服务器·网络
C++ 老炮儿的技术栈3 小时前
volatile使用场景
linux·服务器·c语言·开发语言·c++
todoitbo4 小时前
用虚拟局域网打通 Win/Mac/Linux 三端:跨设备协作的实用方案
linux·运维·macos
源远流长jerry4 小时前
RDMA 基本操作类型详解:从双端通信到单端直访
linux·网络·tcp/ip·ip
Sylvia-girl5 小时前
Linux下的基本指令1
linux·运维·服务器
wyt5314295 小时前
Redis的安装教程(Windows+Linux)【超详细】
linux·数据库·redis
17(无规则自律)5 小时前
【Linux驱动实战】:字符设备之ioctl与mutex全解析
linux·c语言·驱动开发·嵌入式硬件
天赐学c语言7 小时前
Linux - 应用层自定义协议与序列/反序列化
linux·服务器·网络·c++
jarreyer7 小时前
CentOS 7 无法使用 yum 安装软件
linux·运维·centos
薛定谔的悦8 小时前
告别传统BMS!深度解读阳光电源 BM^2T 电池管理技术白皮书
linux·能源·储能·bms·ems