网络安全___2025-08-08
网络安全___2025-08-08
目录
术语
- 深网: 指互联网上不被搜索引擎索引的部分, 包括私人数据库、内部网络等, 需要特定权限或工具才能访问。
- 暗网: 深网的一个子集, 通过特殊软件(如Tor)访问, 提供匿名通信和隐私保护。
基本操作 系统配置
apt
apt update 更新软件包索引, 不会改变已安装的软件包
apt upgrade 更新已安装的软件包, 不解决依赖问题
apt dist-upgrade 更新已安装的软件包, 解决依赖问题
如果直接upgrade, 一些受依赖的软件包因为一部分软件升级而随之升级, 可能会导致另一部分软件无法使用, 这时需要使用dist-upgrade来解决依赖问题。
基于debian的Linux发行版使用 apt命令来管理软件包。
apt是 apt-get和 apt-cache的 子集
apt-get 是 apt 的底层命令, 功能更强大.
因此两者install、remove、update等命令其实完全等价
常用命令:
- install: 安装软件包
- remove: 删除软件包
- update: 更新软件包索引
- upgrade: 更新已安装的软件包
- dist-upgrade: 更新已安装的软件包并解决依赖问题
- edit-sources: 编辑软件源列表
网络
systemctl restart networking 重启网络服务
vim /etc/network/interfaces 编辑网络配置文件
# 动态IP配置
auto eth0
iface eth0 inet dhcp
# 静态IP配置
auto eth0
iface eth0 inet static
address 192.168.0.56
netmask 255.255.255.0
gateway 192.168.0.1
注意: 静态IP不是随便选择的, 必须要在和主机Localhost同一子网中, 才可以本地通信. 这个例子中, 子网掩码是24, 所以IP地址的前三个字节必须相同, 例如192.168.0.x。
ssh
vim /etc/ssh/sshd_config
/etc/init.d/ssh restart
对于SSH服务的配置文件 /etc/ssh/sshd_config,开启以下两个选项:
PermitRootLogin yes
PubkeyAuthentication yes
配置TOR浏览器
Tor浏览器是一个: 世界各地志愿者维护的, 大型的, 分布式的, 免费的, 开源的, 匿名网络 类似于分布式VPN, 但更注重隐私保护, 通过多层加密和随机路由来隐藏用户的真实IP地址。 由于一层层跳转加密, 被称为洋葱头
被动信息收集
被动信息收集: 第三方服务, 例如百度搜索, 对目标进行信息收集, 不主动发起请求, 主要依赖于公开信息和用户行为分析。 主动信息收集: 直接扫描, 例如使用Nmap端口扫描器
可以收集的信息
- ip地址
- 域名
- 邮件
- 文档图片数据
- 公司地址
- 公司组织架构
- 联系电话
- 人员姓名/职务
- 目标系统的技术架构
- 公开商业信息
DNS查询
13个根域名服务器, 负责解析顶级域名(TLD)的IP地址, 如.com、.org等。 每个顶级域名服务器都有多个权威DNS服务器, 负责解析具体域名的IP地址。
A记录: 正向解析, 将域名转换为IP地址。 PTR记录: 反向解析, 将IP地址转换为域名, in-addr.arpa保存。 CNAME记录: 别名记录, 将一个域名指向另一个域名。 MX记录: 邮件交换记录, 指定邮件服务器的域名。(优先级越小优先级越高) NS记录: 命名服务器记录, 指定域名的权威DNS服务器。
指令: nslookup
查询DNS解析(也可以用ping)
nslookup www.example.com
nslookup -type=A example.com
指令: dig
查询解析记录
dig @8.8.8.8 baidu.com any
反查域名
dig -x 8.8.8.8
查询DNS服务器bind版本信息(从而找漏洞)
dig txt chaos version.bind @ns3.dnsv4.com
指令: whois
- 查询网站的域名注册信息
可以直接上阿里云whois查询查
whois baidu.com
- 备案信息查询
web接口查询: icp.chinaz.com
Maltego收集子域名信息
主域名在防御措施严密的情况下, 无法直接拿下, 但子域名往往防御措施较弱, 可以通过子域名间接攻击主域名。
- 子域名挖掘机: Maltego
- 搜索引擎: google搜索
site:qq.com - 第三方查询 / 证书透明度公开日志枚举 / 其他途径
FOFA网络空间资产检索系统
FOFA是一个网络空间资产检索系统, 可以通过搜索引擎查询到互联网上的设备和服务信息。有更多域名数据, 而且还能识别蜜罐 官网网址: fofa.so
基础语法
title="百度": 搜索标题包含"百度"的网站body="百度": 搜索正文包含"百度"的网站country="CN": 搜索位于中国的网站domain="baidu.com": 搜索域名为"baidu.com"的网站region="Shanghai": 指定行政区city="Beijing": 指定城市
!=: 排除&&: 与||: 或*: 通配符~: 模糊
还可以用图标去查找, 网站自动计算hash并匹配
甚至网站使用的js脚本
搜索引擎高级查询
site:example.com: 限定域名inurl:admin: 查找URL中的关键字intext:"login": 查找页面正文中的关键字intitle:"index of": 查找页面标题中的关键字filetype:pdf: 查找特定文件类型cache:example.com: 查看搜索引擎缓存的页面
主动信息收集
主动信息收集特点:
- 直接与目标系统交互
- 无法避免留下访问痕迹
- 使用受控的第三方电脑(肉鸡)进行扫描, 使用代理, 做好被封杀的准备
- 扫描发送不同的探测, 根据返回结果判断
若要人莫知, 除非己莫为
发现主机的流程
- 识别存活的主机, 发现潜在的被攻击目标
- 输出IP地址列表, 例如IP地址段(攻击旁路)
- 使用 二三四层 进行探测发现
基于OSI模型的扫描
OSI七层模型:
| 层级 | 名称 | 功能描述 | 协议 |
|---|---|---|---|
| 7 | 应用层 | 提供网络服务和应用程序接口(各类协议) | HTTP、FTP、SMTP等 |
| 6 | 表示层 | 数据格式转换和加密(数据格式) | JPEG、MPEG、SSL等 |
| 5 | 会话层 | 管理会话和连接(会话管理) | NetBIOS、RPC等 |
| 4 | 传输层 | 提供端到端的通信和数据传输(流量控制) | TCP、UDP等 |
| 3 | 网络层 | 路由选择和逻辑地址管理(分组转发) | IP、ICMP等 |
| 2 | 数据链路层 | 物理地址管理和数据帧传输(帧封装) | ARP、Ethernet、PPP等 |
| 1 | 物理层 | 传输比特流和物理连接(电缆、光纤) | USB、RS-232等 |
在TCP/IP模型中, 567层被合并为应用层
优缺点:
| 层级 | 优点 | 缺点 |
|---|---|---|
| 二层 | 速度快, 可靠, 可绕过防火墙 | 不可路由, 受限于局域网 |
| 三层 | 可路由, 可跨网络扫描 | 速度较慢, 经常被防火墙阻挡 |
| 四层 | 1.可路由且结果可靠; 2.不太可能被防火墙过滤; 3.可以发现所有端口都被过滤的主机 | 速度慢, 基于状态过滤的防火墙可能被过滤 |
基于Ping的探测
ping
常用于判断主机间网络连通性, 也可以判断目标主机是否存活
ping 192.168.0.1 -c 1 # 指定发送1个包
traceroute
通过traceroute命令可以查看数据包经过的路由节点, 以及每个节点的响应时间。
traceroute baidu.com # 跟踪路由
*表示地址被防火墙过滤了
arping
ARP协议用于解析主机的域名为MAC地址, 即32位IP转化为48位MAC
无论谁回答, ARP查询都会接受
防范: 静态绑定+ARP防火墙
arping 192.168.0.1 -c 1
arping 192.168.0.1 -c 1 | grep "bytes from" | cut -d " " -f 5 | cut -d "(" -f 2 | cut -d ")" -f 1
linux 脚本 语法
|管道符: 结果传递grep: 筛选出含有指定字符串的行cut: 分割
-d指定分割符号(只能是单个的字符)-f指定取第几段(从1开始数数), 传递1-3可以选择一段
对整个网段扫描, 可以写自定义脚本
#!/bin/bash
if [ "$#" -ne 1 ];then
echo "Usage - ./arping.sh [interface]"
echo "Example - ./arping.sh eth0"
exit 1
fi
interface=$1
prefix=$(ifconfig $interface | grep "inet " | cut -d "t" -f 2 | cut -d " " -f 2 | cut -d "." -f 1-3)
if [ -z "$prefix" ]; then
echo "Error: Could not get IP address for interface $interface"
exit 1
fi
for addr in $(seq 1 254);do
arping -c 1 -I $interface $prefix.$addr | grep "bytes from" | cut -d " " -f 5 | cut -d "(" -f 2 | cut -d ")" -f 1
done
如果发现有重复的
192.168.0.1说明被ARP攻击了
netdiscover 兼具主被动
ARP侦查工具, 主动: 全部发送ARP请求来确认存活; 被动: 转发ARP请求
netdiscover -i eth0 -r 192.168.0.0/24
netdiscover -p -i eth0 -r 192.168.0.0/24 # 被动嗅探