攻防环境搭建/渗透测试之信息收集

攻防环境搭建

1. 安装虚拟机软件

首先,你需要在 Windows 上安装一个虚拟机软件,如 VMware Workstation、Oracle VirtualBox 或 Hyper-V。

(1)VMware Workstation

  • 访问 VMware 官方网站下载并安装 VMware Workstation Player 或 VMware Workstation Pro。

(2)Oracle VirtualBox

  • 访问 Oracle VirtualBox 官方网站下载并安装 VirtualBox。

(3)Hyper-V(仅限Windows 10专业版和企业版)

  • 在“控制面板”中搜索“程序和功能”,点击“启用或关闭 Windows 功能”。

  • 在弹出的列表中勾选“Hyper-V”,然后点击“确定”进行安装。

2. 下载 Kali Linux 镜像
3. 创建新的虚拟机

(1)VMware Workstation

  • 打开 VMware Workstation,点击“创建新的虚拟机”。

  • 选择“典型(推荐)”并点击“下一步”。

  • 选择“安装程序光盘映像文件(iso)”,然后浏览并选择下载的 Kali Linux 镜像文件。

  • 根据向导完成虚拟机的创建和配置。

(2)Oracle VirtualBox

  • 打开 Oracle VirtualBox,点击“新建”。

  • 输入虚拟机名称(如 Kali Linux),选择类型为“Linux”,版本为“Debian(64 位)”。

  • 分配内存大小(至少 2GB)和创建虚拟硬盘。

  • 点击“设置”按钮,选择“存储”,然后点击“控制器:IDE”,选择“空白”,点击右侧的光盘图标,选择“选择磁盘文件”,加载下载的 Kali Linux 镜像文件。

(3)Hyper-V

  • 打开“Hyper-V 管理器”。

  • 点击“操作”菜单,选择“新建”然后点击“虚拟机”。

  • 在“指定名称和位置”页面输入虚拟机名称和存储位置。

  • 在“指定生成”页面选择“第一代”。

  • 在“分配内存”页面设置启动内存(至少 2GB)。

  • 在“配置网络”页面选择网络适配器(默认即可)。

  • 在“连接虚拟硬盘”页面选择“创建虚拟硬盘”并设置大小。

  • 在“安装选项”页面选择“从可启动的 CD/DVD-ROM 安装机”,浏览并选择下载的 Kali Linux 镜像文件。

  • 点击“完成”创建虚拟机。

4. 安装 Kali Linux
  • 启动虚拟机,它会从你指定的 Kali Linux 镜像启动。

  • 按照屏幕上的指示完成 Kali Linux 的安装过程。

  • 安装完成后,重启虚拟机并移除镜像文件(在虚拟机设置中移除 CD/DVD 驱动器的镜像文件)。

5. 配置 Kali Linux
  • 登录到 Kali Linux 系统。

  • 更新系统软件包:sudo apt update && sudo apt upgrade

  • 安装必要的工具和驱动程序。

  • 配置网络连接,确保 Kali Linux 可以访问互联网。

6. 安全设置
  • 更改默认的用户名和密码,增强安全性。

  • 配置防火墙,只允许必要的端口和服务。

  • 定期更新系统和安全补丁。

apache、nginx、Lighttpd、tengine等php攻防环境搭建

搭建 Apache、Nginx、Lighttpd、Tengine 等 PHP 防攻环境需要对这些 Web 服务器进行安装配置,并确保 PHP 环境正确安装和配置。以下是针对这些 Web 服务器搭建 PHP 防攻环境的具体步骤:

Apache 防攻环境搭建

Apache 是最常用的 Web 服务器之一,搭建 Apache 防攻环境需要以下步骤:

  1. 安装 Apache 服务器:

    bash复制

    sudo apt update
    sudo apt install apache2
  2. 安装 PHP 及常用扩展:

    bash复制

    sudo apt install php libapache2-mod-php php-mysql
  3. 配置 PHP 与 Apache 的连接:

    bash复制

    sudo systemctl enable apache2
    sudo systemctl start apache2
  4. 测试 PHP 安装: 创建一个 PHP 文件来测试 PHP 是否正确安装:

    bash复制

    echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/phpinfo.php

    在浏览器中访问 http://your_server_ip/phpinfo.php

Nginx 防攻环境搭建

Nginx 是高性能的 Web 服务器,搭建 Nginx 防攻环境需要以下步骤:

  1. 安装 Nginx 服务器:

    bash复制

    sudo apt update
    sudo apt install nginx
  2. 安装 PHP 及常用扩展:

    bash复制

    sudo apt install php-fpm php-cli php-json php-common php-mysql
  3. 配置 PHP 与 Nginx 的连接: 编辑 /etc/nginx/sites-available/default 文件,添加 PHP 处理配置:

    nginx复制

    location ~ \.php$ {
       include snippets/fastcgi_params;
       fastcgi_pass unix:/var/run/php/php-fpm.sock;
       fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
       include fastcgi_params;
    }

    重启 Nginx 服务:

    bash复制

    sudo systemctl restart nginx
  4. 测试 PHP 安装: 创建一个 PHP 文件来测试 PHP 是否正确安装:

    bash复制

    echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/phpinfo.php

    在浏览器中访问 http://your_server_ip/phpinfo.php

Lighttpd 防攻环境搭建

Lighttpd 是轻量级的 Web 服务器,搭建 Lighttpd 防攻环境需要以下步骤:

  1. 安装 Lighttpd 服务器:

    bash复制

    sudo apt update
    sudo apt install lighttpd
  2. 安装 PHP 及常用扩展:

    bash复制

    sudo apt install php7.4 php7.4-mysql
  3. 配置 PHP 与 Lighttpd 的连接: 编辑 /etc/lighttpd/lighttpd.conf 文件,添加 PHP 处理配置:

    lighttpd复制

    server.modules += ( "mod_fastcgi")
    fastcgi.server = (".php" =>
      (
        "socket" => "/tmp/php7.4-fpm.sock",
        "bin-path" => "/usr/bin/php7.4",
        "file-type" => "application/x-httpd-php"
      )
    )

    重启 Lighttpd 服务:

    bash复制

    sudo systemctl restart lighttpd
  4. 测试 PHP 安装: 创建一个 PHP 文件来测试 PHP 是否正确安装:

    bash复制

    echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/phpinfo.php

    在浏览器中访问 http://your_server_ip/phpinfo.php

Tengine 防攻环境搭建

Tengine 是基于 Nginx 的 Web 服务器,搭建 Tengine 防攻环境需要以下步骤:

  1. 安装 Tengine 服务器:

    bash复制

    sudo apt update
    sudo apt install tengine
  2. 安装 PHP 及常用扩展:

    bash复制

    sudo apt install php-fpm php-cli php-json php-common php-mysql
  3. 配置 PHP 与 Tengine 的连接: 编辑 /etc/tengine/tengine.conf 文件,添加 PHP 处理配置:

    nginx复制

    location ~ \.php$ {
       include snippets/fastcgi_params;
       fastcgi_pass unix:/var/run/php/php-fpm.sock;
       fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
       include fastcgi_params;
    }

    重启 Tengine 服务:

    bash复制

    sudo systemctl restart tengine
  4. 测试 PHP 安装: 创建一个 PHP 文件来测试 PHP 是否正确安装:

    bash复制

    echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/phpinfo.php

    在浏览器中访问 http://your_server_ip/phpinfo.php

tomcat+Sruts攻防环境搭建

  

  1. 下载 Jspstudy:首先,你需要下载 Jspstudy,这是一个集成环境,可以让你快速搭建 Java Web 应用的开发和测试环境。

  2. 放置 Struts2-showcase:将下载的 Struts2-showcase 放入 Tomcat 的 webapps 目录下,它会自动解析出网站。这一步是利用 Struts2 的示例应用来搭建测试环境,方便进行攻防演练。

  3. 打开 Struts2 并进行拿shell:在浏览器中输入网址 http://localhost:8080/struts2-showcase/showcase.action 来打开 Struts2 应用。然后点击 Configuration,点击 Action Chaining 来进行进一步的测试和利用。

  4. 利用漏洞扫描工具:你可以利用专门的 Struts2 漏洞利用工具进行扫描攻击。例如,可以利用 K8 struts2 工具进行漏洞扫描利用。复制网址 http://localhost:8080/struts2-showcase/actionchaining/actionChain1!input.action 并执行命令,如 ipconfig 命令,来验证漏洞是否存在并成功执行。

  5. 发现并利用远程代码执行漏洞:在漏洞扫描过程中,可能会发现 Struts2 存在远程代码执行漏洞,如 s2-045 和 s2-046。选择 s2-046 进行攻击,攻击成功后,可以返回 ipconfig 信息,成功拿到对方的 shell,实验结束。

 jboss攻防环境搭建

  1. 环境搭建: 使用 Docker 快速搭建 JBoss AS 4.0.5 漏洞环境。靶机 IP 为 192.168.10.144,操作系统为 Ubuntu 18.0.4 LTS。攻击机 IP 为 192.168.10.150,操作系统为 Kali。安装完 Docker 后,直接拉取 vulhub 的源码。靶机启动服务执行命令 docker-compose up -d 启动 JBoss AS 4.0.5。

  2. 漏洞复现

    • 对 JBoss JMXInvokerServlet 反序列化漏洞进行复现。直接使用 Docker 搭建的漏洞环境。环境启动以后,直接访问 http://you-ip:8080。使用下载的工具进行检测,例如 java -jar DeserializeExploit.jar 执行命令,文件管理,进行漏洞利用。

    • 对 JBoss 4.x JBossMQ JMS 反序列化漏洞(CVE-2017-7504)进行复现。此次环境尝试用 Docker 搭建。一、环境搭建。1.docker 的安装参考。2.安装完 docker 后,直接拉取 vulhub 的源码。3.靶机启动服务执行如下命令启动 JBoss AS 4.0.5 docker-compose up -d

  3. 利用工具

    • 使用 javac -cp .:commons-collections-3.2.1.jar ReverseShellCommonsCollectionsHashMap.java 编译,设置反弹的 IP 和端口,生成序列化对象保存在 ReverseShellCommonsCollectionsHashMap.ser 中,用 curl 命令发送到 JBoss 服务地址进行漏洞利用。

  4. 反弹 Shell

    • 先在测试机运行 nc 命令,进入监听模式。再打开另一个控制台,运行如下 curl 命令进行反弹测试。

  5. 漏洞修复建议

    • 升级 JBoss 为高版本。

    • 删除 /**/jbossmq-httpil/HTTPServerILServlet 接口。

    • 通过向 http-invoker.sarweb.xml 文件中的安全约束添加 url-pattern 来保护对整个 http-invoker 上下文的访问。不想使用 http-invoker.sar 可以将其删除。具体方法包括修改 web.xml 文件、不需要 http-invoker.sar 组件的直接删除、升级 JBoss 到 JBoss7x 版本等。

Weblogic攻防环境搭建 

  1. 环境搭建

    • 使用 Docker 快速搭建 WebLogic 漏洞环境。靶机 IP 为 192.168.10.144,操作系统为 Ubuntu 18.0.4 LTS。攻击机 IP 为 192.168.10.150,操作系统为 Kali。安装完 Docker 后,直接拉取 vulhub 的源码。靶机启动服务执行命令 docker-compose up -d 启动 WebLogic AS 4.0.5。

  2. 漏洞复现

    • 启动 WebLogic 服务,环境就搭建完成了。信息收集:端口扫描 先使用 nmap 去尝试探测端口。发现存在 80,1433,3389,7001 端口。重新开了服务,发现 7001 端口开放。访问 WebLogic 页面。漏洞利用:WebLogic 反序列化 使用工具进行探测,发现存在 CVE-2020-2551。

  3. 利用工具

    • 利用 K8 struts2 工具进行漏洞扫描利用。复制网址 http://localhost:8080/struts2-showcase/actionchaining/actionChain1!input.action 并执行命令,如 ipconfig 命令,来验证漏洞是否存在并成功执行。

  4. 反弹 Shell

    • 先在测试机运行 nc 命令,进入监听模式。再打开另一个控制台,运行如下 curl 命令进行反弹测试。

  5. 漏洞修复建议

    • 升级 WebLogic 为高版本。

    • 删除 /**/jbossmq-httpil/HTTPServerILServlet 接口。

    • 通过向 http-invoker.sarweb.xml 文件中的安全约束添加 url-pattern 来保护对整个 http-invoker 上下文的访问。不想使用 http-invoker.sar 可以将其删除。具体方法包括修改 web.xml 文件、不需要 http-invoker.sar 组件的直接删除、升级 WebLogic 到 WebLogic7x 版本等。

 渗透测试之信息收集

主域名及二级域名探测

  1. 使用在线工具

    • 可以使用如 Layer子域名挖掘机、subDomainsBrute,oneforall,dnsmaper,K8,wydomain ,Sublist3r,Maltego等工具来探测主域名及二级域名。例如,SubDomainsBrute 是一个子域名爆破工具,该工具使用字典暴力破解的方式来尝试各种可能的子域名,并通过DNS解析来确定是否存在有效的子域名。在kali 中使用:python3 subDomainsBrute.py -t 10 域名-t 指定线程数量)。

  2. 利用搜索引擎

    • 利用谷歌语法 site:bilibili.com 查询来发现子域名。此外,还可以利用 FOFA 搜索子域名,语法:domain="bilibili.com"

Google Hack信息探测

  1. 搜索引擎技巧

    • 使用 Google 搜索引擎进行高级搜索,以发现公开可访问的敏感信息。这可以通过 Google 的高级搜索技巧,如 site:intext:等,查找特定文件类型,如 .pdf.doc,可能包含敏感数据。

  2. 特定文件搜索

    • 搜索特定文件类型,例如 filetype:pdf 来找到公开的敏感文件。

子域名探测、敏感信息收集

  1. 第三方服务

    • 使用第三方服务如 VirusTotal 来检索给定域名的子域名。DNSdumpster 可以找到给定域名的大量潜在子域名。

  2. 证书透明(CT)

  3. 基于字典的子域名枚举

    • DNSRecon 是一个功能强大的DNS枚举工具,它的功能之一是使用预定义的列表进行基于字典的子域名探测。使用命令如下:$ python dnsrecon.py -n ns1.insecuredns.com -d insecuredns.com -D subdomains-top1mil-5000.txt -t brt

Web系统指纹识别

  1. 使用工具

    • 使用 Whatweb 工具来识别网站使用的操作系统、CMS、服务器与中间件信息等。此外,可以通过分析 HTTP 响应头、JavaScript 文件等,确定 Web 应用的技术和框架。

fofa及nmap使用
  1. 网络扫描与指纹识别

    • fofa 可以用来识别网站 CMS 及平台环境的工具,而 nmap 是一款网络扫描和指纹识别的工具,用于端口扫描,识别开放的服务和应用程序。

  2. 端口扫描

    • 使用 nmap 进行端口扫描,识别开放的服务和应用程序。例如,使用 nmap --script targets-asn --script-args targets-asn.asn=17012 来扫描特定 ASN 号码下的网络块。

前期信息资产梳理
  1. 资产整理

    • 整理收集到的信息,如 IP 地址、域名、服务、应用等。分析资产的重要性和潜在的安全风险,有助于提高渗透测试的成功率。

通过上述方法,您可以对目标组织的信息资产进行全面梳理,为渗透测试和安全审计提供基础信息。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值