1、常见攻击类型
口令暴力破解攻击
拒绝服务攻击(DDoS)
应用程序漏洞攻击(挂马、SQL注入)
三大网络攻击简明简述
一、口令暴力破解攻击
是什么?
反复尝试用户名密码,猜对了就登录进去。
常见手法
| 类型 | 原理 | 例子 |
|---|---|---|
| 字典攻击 | 用常见密码列表撞库 | admin/123456、root/password |
| 穷举攻击 | 所有组合全试一遍 | aaa→aab→aac… |
| 撞库 | 用他站泄露密码试本站 | 支付宝密码试微信 |
危害
- 🔓 服务器被黑、数据被拖
- 💰 比特币勒索、挖矿植入
- 🕸️ 成为肉鸡攻击别人
防御
# 1. 禁止密码登录(强制密钥)
PasswordAuthentication no
# 2. fail2ban 自动封IP
fail2ban-client set sshd banip 1.2.3.4
# 3. 修改端口(避开22)
Port 52222
# 4. 登录失败锁定
pam_tally2 --user=root --reset
二、拒绝服务攻击(DDoS)
是什么?
海量垃圾请求塞满通道,正常用户进不来。
常见手法
| 类型 | 原理 | 例子 |
|---|---|---|
| 流量型 | 带宽打爆 | NTP反射放大、DNS放大 |
| 连接型 | 连接池占满 | SYN Flood、TCP全连接 |
| 应用层 | 慢速攻击打死CPU | HTTP慢速POST、CC攻击 |
危害
- 📉 业务中断、无法访问
- 💸 流量计费云厂商、烧钱
- 🏢 品牌信誉受损
防御
# 1. 云盾/CDN(扛流量)
# 阿里云盾、Cloudflare、AWS Shield
# 2. 内核参数优化(防SYN Flood)
sysctl -w net.ipv4.tcp_syncookies=1
sysctl -w net.ipv4.tcp_syn_retries=2
# 3. Nginx连接限制
limit_conn_zone $binary_remote_addr zone=addr:10m;
limit_conn addr 10;
# 4. 封禁异常IP
iptables -A INPUT -s 1.2.3.4 -j DROP
三、应用程序漏洞攻击
是什么?
利用代码漏洞,执行非预期操作。
常见手法
| 类型 | 原理 | 例子 | 后果 |
|---|---|---|---|
| SQL注入 | 拼接参数进SQL | ' or 1=1 -- | 拖库、删表 |
| XSS | 植入恶意JS脚本 | 评论区弹窗、窃取Cookie | 盗号、钓鱼 |
| 文件上传 | 上传Webshell | 传shell.php | 服务器沦陷 |
| CSRF | 伪造请求 | 点链接自动转账 | 账号操作劫持 |
| SSRF | 服务端请求伪造 | 访问内网敏感接口 | 内网漫游 |
SQL注入实战演示
-- 正常查询
SELECT * FROM users WHERE username = 'zhangsan';
-- 注入攻击
SELECT * FROM users WHERE username = '' OR '1'='1' -- ';
-- 绕过登录!直接以第一个用户身份进入
防御
# 1. 预编译SQL(彻底防注入)
# ❌ 错误
$sql = "SELECT * FROM users WHERE id = $_GET[id]";
# ✅ 正确
$stmt = $pdo->prepare("SELECT * FROM users WHERE id = ?");
$stmt->execute([$_GET['id']]);
# 2. 输入过滤(防XSS)
htmlspecialchars($_POST['content'], ENT_QUOTES, 'UTF-8');
# 3. 文件上传白名单
if (!in_array($ext, ['jpg','png','gif'])) { die(); }
# 4. CSRF Token
$_SESSION['token'] = bin2hex(random_bytes(32));
四、三种攻击对比表
| 维度 | 暴力破解 | DDoS | 漏洞攻击 |
|---|---|---|---|
| 目标 | 拿到账号 | 打瘫服务 | 控制服务器/窃数据 |
| 难度 | 低 | 中 | 高 |
| 成本 | 低(1台电脑) | 高(僵尸网络) | 中(需挖洞) |
| 特征 | 登录失败日志 | 流量突增 | 特殊请求参数 |
| 防御核心 | 密钥+封IP | 带宽清洗 | 代码安全 |
| 事后痕迹 | 日志有IP | 流量图尖峰 | 后门文件 |
五、一句话记忆口诀
🔐 暴力破解:改端口、禁密码、fail2ban封IP
🛡️ DDoS:上云盾、开cookies、nginx限连接
💉 SQL注入:预编译、过滤参数、别拼接字符串
漏洞攻击 → 防代码
暴力破解 → 防登录
DDoS → 防流量
2、防范攻击策略

端口能不开的就不开
3、操作系统常用安全策略
(1)密码登录安全
复杂密码+普通用户ssh登录
密钥认证方式远程登录
openssh配置文件/etc/ssh/sshd_config,注意关注下面几个配置项:
Port 22
AuthorizedKeysFile .ssh/authorized_keys
PermitRootLogin prohibit-password
另外,请关注此目录/etc/ssh/sshd_config.d下的文件配置会覆盖/etc/ssh/sshd_config中的配置。

3、操作系统常用安全策略
(2)端口与服务安全
在linux操作系统下,系统共定义了65536个可用端口,这些端口又分为两个部分,以1024作为分割点, 分别是“只有root用户才能启用的port”和“客户端的port”:
0-1023端口,都需要以root身份才能启用,可以通过查阅linux下/etc/services文件得到端口与服务的对应列表。比如20、21端口是预留给ftp服务的,23端口是预留给telnet服务的,25是预留给mail服务的,而80、443是预留给www服务的。
1024以上(包含1024)的端口主要是给客户端软件使用的,这些端口都是有软件随机分配的,大于或者等于1024的端口的启用不受root用户的控制,例如,经常使用的mysql数据库,服务的默认端口是3306,而这个端口就是由mysql用户启用的。redis数据库默认的监听端口是6379,也是由redis用户启动的。
(3)软件安全
yum update glibc
yum update openssl
(4)禁止ping操作
[root@localhost ~]#echo “1”> /proc/sys/net/ipv4/icmp_echo_ignore_all
(5)云主机开启安全组
安全组是云主机的网络安全防护工具,建议开启。
发表回复