三、服务器信息收集

信息收集又叫打点,打仗也要侦探敌情,攻防更是如此。但要获取哪些信息呢?

一. 获取公网IP

如何知道一个网站用了CDN?

如何绕过CDN?

 因为CDN很贵,可能很多网站只对主站设置了CDN,所以我们可以从子域名入手来获取真实IP,对子域名进行超级ping。查询历史DNS解析记录,因为公司起步规模小,但是IP还留着用了。https://dnsdb.io/zh-cn/,某些厂商国内做了CDN加速,但国外可能没做,我们就可以从国外入手。还是超级ping,勾选国外就行。

二. 旁站信息收集

 旁站就是指同一服务器下的不同网站,通过旁站拿到服务器权限,接着就可以对主站进行攻击。

旁站收集:fofa.info 里输入 如ip="101.200.252.160"查询,会得到很多其他资产。

三. C段主机查询

c段是指某一网段下所有的ip地址,通过c段查询可以探测主机目标的资产

c端查询主要使用namp扫描工具

nmap扫描

常用参数:

-sP                 Ping Scan 只进行主机发现,不进行端口扫描。
-sS/sT/sA/sW/sM         指定使用 TCP SYN/Connect()/ACK/Window/Maimon scans的方式来对目标主机进行扫
-sU                      指定使用UDP扫描方式确定目标主机的UDP端口状况。
-O                       指定Nmap进行OS侦测。探测运行的什么系统
-sV                 指定让Nmap进行版本侦测

 

namp 192.168.0.1/24

其他:

 A记录 IP地址记录,记录一个域名对应的IP地址

AAAA记录 IPv6地址记录,记录一个域名对应的IPv6地址
CNAME记录 别名记录,记录一个主机的别名
MX记录 电子邮件交换记录,记录一个邮件域名对应的IP地址
NS记录 域名服务器记录 ,记录该域名由哪台域名服务器解析
PTR记录 反向记录,也即从IP地址到域名的一条记录
TXT记录 记录域名的相关文本信息

四. 子域名信息收集

 

常用工具

dnsmap工具(kali)

dnsenum(kali)

Layer子域名挖掘机(windows)

下载地址:

https://github.com/euphrat1ca/LayerDomainFinder

 线上:

http://tool.chinaz.com/subdomain/

 

系统指纹识别

通过TCP/IP数据包发到目标主机,由于每个操作系统类型对于处理TCP/IP数据包都不相同,所以可以通过之间的差别判定操作系统类型

识别方法:nmap -sS -Pn -O ip

nmap识别操作系统是通过端口识别的,也就是说在识别操作系统的时候不能使用-sn(不识别端口)。

中间件指纹识别

方法:

  1. 通过http返回消息中提取server字段(可以抓包获取)
  2. 通过端口服务探测中间件
  3. 通过构造错误界面返回信息查看中间件(感觉只有nginx和Tomcat能爆出中间件的版本信息)

命令:

nmap -sS -sV -p 80 10.60.17.19/24
 五. 端口信息收集

可以扫描出所有开放80端口的主机下所开启的中间件。

可以根据中间件所开发的端口来定向IP扫描。

  • Tomcat开放端口:8080 
  • Jboss开放端口:8080
  • weblogic开放端口:7001
  • apache开放端口:80
  • nginx开放端口:80

Web程序指纹识别

识别目标

  • 开发语言
  • 开发框架
  • 第三方组件
  • CMS程序
  • 常见cms系统
  • 数据库

nmap扫描waf指纹支持大厂,小厂的waf指纹识别不是很好

 nmap -p 80 --script http-waf-detect.nse www.baidu.com

开发语言:

后缀名识别:.asp、.php、.jsp

如果无法通过后缀名识别,可以通过抓包查看与后台交互点,如:登录,查询

http返回消息头x-Powered-By

cookie:PHPSESSIONID->php、JSPSESSIONID->jsp 、ASPSESSIONIDAASTCACQ->asp

开发框架:

  • php的thinkphp框架识别方法特定ico图标
  • Action后缀90%几率struts2或者webwork
  • do后缀50%几率spring mvc
  • url路径/action/xxx70%几率struts2
  • form后缀60%几率spring mvc
  • Vm后缀90%几率VelocityViewServlet
  • jsf后缀99%几率Java Server Faces

第三方组件:

一般包括流量统计、文件编辑器、模板引擎

识别方法:一般目录扫描

  • FCKeditor
  • CKEditor

CMS程序特定文件夹:

  • dede/
  • admin/
  • admin_Login.aspx

常见cms系统

  • 常用CMS介绍
  • CMS(Content Management System)内容管理系统,CMS系统是网站建设走向成功的重要组成部分,国内外的CMS种类比较多,下面介绍常用的CMS。
  • 1.企业建站系统:MetInfo(米拓)、蝉知、SiteServer CMS(.net平台)等;
  • 2.B2C商城系统:商派shopex、ecshop、hishop、xpshop等;
  • 3.门户建站系统:DedeCMS(织梦,PHP+MYSQL)、帝国CMS(PHP+mysql)、PHPCMS、动易、cmstop,dianCMS(易点CMS,.net平台)等;
  • 4.博客系统:wordpress、Z-Blog等;
  • 5.论坛社区:discuz、phpwind、wecenter等;
  • 6.问答系统:Tipask、whatsns等;
  • 7.知识百科系统:HDwiki;
  • 8.B2B门户系统:destoon、B2Bbuilder、友邻B2B等;
  • 9.人才招聘网站系统:骑士CMS、PHP云人才管理系统;
  • 10.房产网站系统:FangCms等;
  • 11.在线教育建站系统:kesion(科汛,ASP)、EduSoho网校;
  • 12.电影网站系统:苹果cms、ctcms、movcms等;
  • 13.小说文学建站系统:JIEQI CMS;

数据库

  • 常规判断:asp->sql server,php->mysql,jsp-oracle
  • 网站错误信息
  • 端口服务:1443->sql server,3306->mysql,oracal->1521

云悉yunsee.cn-2.0

在线自动探测目标网站的数据库,开发语言,操作系统,web容器,CMS,开发框架

 

 

 

get_system_info.sh

#!/bin/bash
 
# --- 1. 获取主机序列号并定义输出文件名 ---
# 使用sudo确保dmidecode可以执行,并去除可能的前后空格
SERIAL=$(sudo dmidecode -s system-serial-number | xargs)
OUTPUT_FILE="${SERIAL}.txt"
 
# 检查是否成功获取到序列号
if [ -z "$SERIAL" ] || [ "$SERIAL" == "To Be Filled By O.E.M." ]; then
    echo "错误:无法获取有效的主机序列号。请检查 dmidecode 命令或BIOS设置。" >&2
    # 如果获取失败,使用一个默认文件名
    OUTPUT_FILE="unknown_serial_$(date +%Y%m%d%H%M%S).txt"
    echo "将使用默认文件名: $OUTPUT_FILE"
fi
 
echo "正在收集系统信息,报告将保存到: $OUTPUT_FILE"
 
# --- 2. 收集信息并写入文件 ---
# 使用代码块 {...} > 将多个命令的输出一次性重定向到文件,更高效
{
    echo "=== 系统信息报告 ==="
    echo "生成时间: $(date)"
    echo ""
    echo "--- 主机序列号 ---"
    echo "$SERIAL"
    echo ""
    echo "--- 系统启动时间与运行时长 ---"
    uptime
    echo ""
    echo "--- 最近的重启记录 ---"
    last
} > "$OUTPUT_FILE"
 
echo "信息收集完成!"
 

 

posted on 2025-12-04 14:26  让代码飞  阅读(0)  评论(0)    收藏  举报

导航

一款免费在线思维导图工具推荐:https://www.processon.com/i/593e9a29e4b0898669edaf7f?full_name=python