This commit is contained in:
author
2025-11-08 21:00:06 +08:00
parent 95a4182500
commit fc176f1b7d
1793 changed files with 2099698 additions and 0 deletions
File diff suppressed because it is too large Load Diff
+28
View File
@@ -0,0 +1,28 @@
### 清理日志要清理哪些
**1. 系统日志**
这是最核心的部分,记录了系统层面的所有操作
- **登录日志(`auth.log``secure`)**:这是最重要的一环,需要清理我们所有登录、`su``sudo` 等提权操作的记录。这些日志会暴露我们的 IP 地址、用户名和登录时间
- **Bash 历史记录(`~/.bash_history`)**:命令行操作记录会直接暴露我们执行过的所有命令,包括文件查找、下载工具、修改配置等。必须彻底清除这个文件,或者在操作前使用 **`unset HISTFILE`** 或 **`history -c`** 来禁用或清除
- **任务计划日志(`cron.log`)**:如果你使用了定时任务来维持权限或者执行特定操作,别忘了清除相关的 `cron` 日志
- **内核日志(`dmesg`)**:虽然不常需要,但某些内核级别的操作或异常也会在这里留下痕迹。
**2. 应用日志**
除了系统日志,很多应用程序也会生成自己的日志文件,同样需要清理
- **Web 服务器日志(如 Apache 的 `access.log``error.log`Nginx 的 `access.log``error.log`)**:这些日志会记录所有对网站的访问请求,我们的扫描、利用、上传后门等操作都会被记录下来,比如**`GET /shell.jsp`** 这样的请求
- **数据库日志(如 MySQL 的 `mysql.log``slow.log`)**:如果你与数据库进行了交互,日志可能会记录你的连接信息、执行的 SQL 查询等
- **FTP 服务器日志**:如果你通过 FTP 上传或下载了文件,日志会记录你的连接、用户名和操作
- **SSH 服务器日志**:与登录日志类似,但更专注于 SSH 连接本身,会记录连接来源和认证尝试
**3. 其他关键文件和目录**
除了日志文件,还有一些其他地方也可能会留下我们的痕迹
- **临时文件(`/tmp``/var/tmp`)**:在利用漏洞、执行脚本或上传后门时,我们经常会把文件放在临时目录。别忘了清理掉这些文件
- **上传的后门或工具**:这是最直观的痕迹,确保你上传的所有文件,无论是 `webshell``nc``mimikatz` 还是其他工具,都已彻底删除
- **进程信息(`/proc`)**:虽然系统重启后进程信息会消失,但在操作期间,**`ps`** 命令可能会暴露我们运行的恶意进程
- **文件元数据**:有些高级的痕迹清理会关注文件的创建、修改和访问时间。你可以使用一些工具(如 **`touch`**)来修改这些时间戳,使其看起来没有被动过
File diff suppressed because it is too large Load Diff
+94
View File
@@ -0,0 +1,94 @@
### 如何删除 Linux 机器的入侵痕迹
**1. 消除日志文件中的痕迹**
日志文件是系统管理员和安全团队发现入侵的最主要线索。因此,这是痕迹清理的首要目标
- **识别和清理日志**:攻击者在入侵后,通常会在以下几个核心日志文件中留下痕迹:
- `/var/log/auth.log``/var/log/secure`:记录用户的登录和认证信息
- `/var/log/lastlog`:记录所有用户的最后一次登录时间
- `/var/log/wtmp``/var/run/utmp`:记录用户的登录/登出历史
- `/var/log/cron`:记录定时任务(Cron)的执行情况
- **清理方法**
- **方法一:使用工具**。你可以使用像 **`auditd`** 这样的工具来监控和篡改日志
- **方法二:手动清理**。用 **`vim`** 或 **`nano`** 等文本编辑器打开日志文件,删除你的操作记录。然后,使用 `> filename` 命令清空日志文件,或者使用 `dd` 命令来删除特定行
```bash
# 示例:清空 auth.log
> /var/log/auth.log
```
- **方法三:使用 `history -c`**。清除当前会话的 Bash 历史记录。此外,你还需要手动删除 `.bash_history` 文件中的记录
```bash
history -c
rm /root/.bash_history
```
- **方法四:使用 `sed`**。这是一种更精确的方法,你可以使用 `sed` 命令删除包含特定关键词的行,而不影响其他日志
```bash
# 示例:删除包含 IP 地址 1.2.3.4 的行
sed -i '/1.2.3.4/d' /var/log/auth.log
```
- **重要提示**:在进行任何操作前,最好以最小权限的账户进行,并立即在完成操作后清理该账户的痕迹
**2. 删除恶意文件和后门**
入侵成功后,攻击者通常会在系统中植入后门程序或 WebShell,以保持持久化访问
- **查找恶意文件**
- **按时间戳查找**:使用 `find` 命令查找在你入侵时间段内被修改过的文件。这通常是发现后门文件最有效的方法
```bash
# 示例:查找过去 24 小时内修改过的文件
find / -mtime 0 -type f -print
```
- **按文件名或类型查找**:查找常见的后门文件名,如 `.php`、`.jsp`、`.sh`,或者包含特定字符串的文件。
```bash
# 示例:查找所有以 .jsp 结尾的文件
find / -name "*.jsp"
```
- **删除文件**:找到可疑文件后,使用 `rm` 命令将其彻底删除
**3. 清理已创建的用户和计划任务**
为了保持持久化,攻击者可能会创建新的用户账户或设置定时任务
- **删除用户**
- 检查 `/etc/passwd` 和 `/etc/shadow` 文件,删除任何可疑的新用户
- 使用 `userdel` 命令删除用户账户,并加上 `-r` 参数同时删除其主目录
```bash
userdel -r maluser
```
- **清理计划任务**
- 检查 `crontab -l` 命令的输出,删除任何可疑的定时任务
- 检查 `/etc/cron.*` 目录下的所有文件,以及 `/var/spool/cron/` 目录下的用户 crontab 文件。
**4. 消除其他关键痕迹**
还有一些其他关键的痕迹需要清理,这些往往被忽略
- **SSH 密钥**:检查 `~/.ssh/authorized_keys` 文件,删除任何你添加的公钥
- **隐藏文件**:检查你的主目录或系统目录中是否有以 `.` 开头的隐藏文件
```bash
ls -al /home/
```
- **清除缓存**:清除系统和应用程序的缓存文件
+20
View File
@@ -0,0 +1,20 @@
# 网安面试题(涵盖护网、红队、逆向、二进制)
上万道安全面试题已经全部为您划分好,适用于网络安全所有岗位!!!
HR:请问…………
我:叽里咕噜说啥呢,看看八股文上写了没
Summary.md 是目录噢!!)
**🙏 特别感谢名单**
在整理和完善本项目的过程中,以下朋友给予了宝贵的帮助与支持,在此表示诚挚的感谢!(排名不分先后)
- **@用户名1** —— 提供了大量安全面试题方向的补充
- **@用户名2** —— 纠正了多个问题的答案与表述
- **@用户名3** —— 贡献了真实面试题经验分享
- **@用户名4** —— 对内容结构与目录提出改进建议
如果您也愿意参与本项目,欢迎通过 **微信: XR3327026244** 投稿面试题或反馈问题,我们会在后续版本中加入您的名字
File diff suppressed because it is too large Load Diff