mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-23 05:03:35 +00:00
Translated ['network-services-pentesting/pentesting-web/README.md'] to c
This commit is contained in:
parent
ffcb80ecc6
commit
2d80fff1f4
1 changed files with 73 additions and 70 deletions
|
@ -5,10 +5,10 @@
|
|||
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks 云 ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
|
||||
|
||||
* 你在一家**网络安全公司**工作吗?想要在 HackTricks 中**宣传你的公司**吗?或者你想要**获取最新版本的 PEASS 或下载 HackTricks 的 PDF**吗?请查看[**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* 发现我们的独家 NFT 收藏品[**The PEASS Family**](https://opensea.io/collection/the-peass-family)
|
||||
* 发现我们的独家[**NFTs**](https://opensea.io/collection/the-peass-family)收藏品——[**The PEASS Family**](https://opensea.io/collection/the-peass-family)
|
||||
* 获取[**官方 PEASS & HackTricks 商品**](https://peass.creator-spring.com)
|
||||
* **加入** [**💬**](https://emojipedia.org/speech-balloon/) [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**telegram 群组**](https://t.me/peass) 或在 **Twitter** 上 **关注**我 [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
|
||||
* **通过向** [**hacktricks 仓库**](https://github.com/carlospolop/hacktricks) **和** [**hacktricks-cloud 仓库**](https://github.com/carlospolop/hacktricks-cloud) **提交 PR 来分享你的黑客技巧。**
|
||||
* **加入**[**💬**](https://emojipedia.org/speech-balloon/) [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**telegram 群组**](https://t.me/peass),或者**关注**我在**Twitter**上的[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
|
||||
* **通过向**[**hacktricks 仓库**](https://github.com/carlospolop/hacktricks) **和**[**hacktricks-cloud 仓库**](https://github.com/carlospolop/hacktricks-cloud) **提交 PR 来分享你的黑客技巧。**
|
||||
|
||||
</details>
|
||||
|
||||
|
@ -41,28 +41,28 @@ openssl s_client -connect domain.com:443 # GET / HTTP/1.0
|
|||
|
||||
## 方法概述
|
||||
|
||||
> 在这个方法中,我们假设您要攻击一个域名(或子域名),只有这一个。因此,您应该将此方法应用于发现的每个域名、子域名或范围内未确定的Web服务器。
|
||||
> 在这个方法中,我们假设你要攻击一个域名(或子域名),只有这一个。因此,你应该将这个方法应用到每个发现的域名、子域名或范围内未确定的Web服务器上。
|
||||
|
||||
* [ ] 首先,**识别**Web服务器使用的**技术**。寻找在测试的其余部分中要记住的**技巧**,如果您能成功识别出技术。
|
||||
* [ ] 版本的**已知漏洞**?
|
||||
* [ ] 使用任何**众所周知的技术**?有任何**有用的技巧**来提取更多信息吗?
|
||||
* [ ] 有任何**专门的扫描工具**要运行(如wpscan)吗?
|
||||
* [ ] 启动**通用扫描工具**。您永远不知道它们是否会找到一些有趣的信息。
|
||||
* [ ] 首先,**识别**Web服务器使用的**技术**。寻找在测试的其余部分中要记住的**技巧**,如果你能成功识别出技术。
|
||||
* [ ] 版本的**已知漏洞**有吗?
|
||||
* [ ] 使用了任何**众所周知的技术**吗?有没有**有用的技巧**来提取更多信息?
|
||||
* [ ] 有没有**专门的扫描工具**要运行(如wpscan)?
|
||||
* [ ] 启动**通用扫描工具**。你永远不知道它们是否会找到一些东西或者是否会找到一些有趣的信息。
|
||||
* [ ] 从**初始检查**开始:**robots**,**sitemap**,**404**错误和**SSL/TLS扫描**(如果是HTTPS)。
|
||||
* [ ] 开始**爬取**网页:现在是时候**查找**所有可能的**文件、文件夹**和**正在使用的参数**了。还要检查**特殊发现**。
|
||||
* [ ] _请注意,每当在暴力破解或爬取过程中发现一个新目录时,都应该进行爬取。_
|
||||
* [ ] _请注意,每当在暴力破解或爬取过程中发现一个新目录,都应该进行爬取。_
|
||||
* [ ] **目录暴力破解**:尝试对所有发现的文件夹进行暴力破解,以寻找新的**文件**和**目录**。
|
||||
* [ ] _请注意,每当在暴力破解或爬取过程中发现一个新目录时,都应该进行暴力破解。_
|
||||
* [ ] **备份检查**:测试是否可以找到附加常见备份扩展名的**已发现文件**的**备份**。
|
||||
* [ ] _请注意,每当在暴力破解或爬取过程中发现一个新目录,都应该进行暴力破解。_
|
||||
* [ ] **备份检查**:测试是否可以找到附加了常见备份扩展名的**已发现文件**的**备份**。
|
||||
* [ ] **暴力破解参数**:尝试**查找隐藏参数**。
|
||||
* [ ] 一旦您**识别**了所有可能接受**用户输入**的**端点**,请检查与之相关的所有**漏洞**。
|
||||
* [ ] [按照此清单操作](../../pentesting-web/web-vulnerabilities-methodology/)
|
||||
* [ ] 一旦你**识别出**所有可能接受**用户输入**的**端点**,检查与之相关的所有**漏洞**。
|
||||
* [ ] [按照这个清单进行操作](../../pentesting-web/web-vulnerabilities-methodology/)
|
||||
|
||||
## 服务器版本(存在漏洞吗?)
|
||||
|
||||
### 识别
|
||||
|
||||
检查正在运行的服务器**版本**是否存在**已知漏洞**。\
|
||||
检查正在运行的服务器**版本**是否有**已知漏洞**。\
|
||||
**响应的HTTP头和Cookie**可能非常有用,可以用来**识别**正在使用的**技术**和/或**版本**。**Nmap扫描**可以识别服务器版本,但也可以使用工具[**whatweb**](https://github.com/urbanadventurer/WhatWeb)**、**[**webtech**](https://github.com/ShielderSec/webtech)**或**[**https://builtwith.com/**](https://builtwith.com)**:
|
||||
```bash
|
||||
whatweb -a 1 <URL> #Stealthy
|
||||
|
@ -80,7 +80,7 @@ webanalyze -host https://google.com -crawl 2
|
|||
|
||||
### Web技术技巧
|
||||
|
||||
一些用于查找不同已知技术中的漏洞的技巧:
|
||||
一些用于查找不同知名技术中的漏洞的技巧:
|
||||
|
||||
* [AEM - Adobe Experience Cloud](aem-adobe-experience-cloud.md)
|
||||
* [Apache](apache.md)
|
||||
|
@ -114,17 +114,17 @@ webanalyze -host https://google.com -crawl 2
|
|||
* [Wordpress](wordpress.md)
|
||||
* [Electron Desktop(XSS到RCE)](xss-to-rce-electron-desktop-apps/)
|
||||
|
||||
_请注意,**相同的域名**可以在不同的**端口**,**文件夹**和**子域**中使用**不同的技术**。_\
|
||||
如果Web应用程序使用任何已知的**技术/平台**或**其他任何技术**,请不要忘记在互联网上搜索新的技巧(并让我知道!)。
|
||||
请注意,**同一域名**可以在不同**端口**、**文件夹**和**子域**中使用**不同的技术**。\
|
||||
如果Web应用程序使用了之前列出的任何知名**技术/平台**或**其他任何技术**,不要忘记在互联网上搜索新的技巧(并让我知道!)。
|
||||
|
||||
### 源代码审查
|
||||
|
||||
如果应用程序的**源代码**在**github**上可用,除了自己对应用程序进行**白盒测试**之外,还有一些信息对当前的**黑盒测试**可能会有用:
|
||||
|
||||
* 是否有通过Web访问的**更改日志或自述文件或版本**文件或包含**版本信息**的任何内容?
|
||||
* 是否有通过Web访问的**更改日志、自述文件或版本**文件或其他任何包含**版本信息**的文件?
|
||||
* 凭据是如何保存的?是否有(可访问的)包含凭据(用户名或密码)的**文件**?
|
||||
* 密码是以**明文**、**加密**还是使用了哪种**哈希算法**?
|
||||
* 是否使用任何**主密钥**来加密某些内容?使用了哪种**算法**?
|
||||
* 是否使用了任何**主密钥**来加密某些内容?使用了哪种**算法**?
|
||||
* 是否可以通过利用某些漏洞**访问这些文件**?
|
||||
* 在github的(已解决和未解决的)**问题**中是否有任何**有趣的信息**?或在**提交历史**中(也许在旧的提交中有一些**密码**)?
|
||||
|
||||
|
@ -142,23 +142,26 @@ wapiti -u <URL>
|
|||
W3af
|
||||
zaproxy #You can use an API
|
||||
nuclei -ut && nuclei -target <URL>
|
||||
```
|
||||
#### CMS扫描器
|
||||
|
||||
如果使用了CMS,请不要忘记运行扫描器,也许会发现一些有趣的东西:
|
||||
# https://github.com/ignis-sec/puff (client side vulns fuzzer)
|
||||
node puff.js -w ./wordlist-examples/xss.txt -u "http://www.xssgame.com/f/m4KKGHi2rVUN/?query=FUZZ"
|
||||
```
|
||||
#### CMS扫描工具
|
||||
|
||||
如果使用了CMS,请不要忘记运行扫描工具,也许会发现一些有趣的东西:
|
||||
|
||||
[**Clusterd**](https://github.com/hatRiot/clusterd)**:**[**JBoss**](jboss.md)**,ColdFusion,WebLogic**,[**Tomcat**](tomcat.md)**,Railo,Axis2,Glassfish**\
|
||||
[**CMSScan**](https://github.com/ajinabraham/CMSScan):对[**WordPress**](wordpress.md),[**Drupal**](drupal.md),**Joomla**,**vBulletin**网站进行安全问题扫描(图形界面)\
|
||||
[**CMSScan**](https://github.com/ajinabraham/CMSScan):对[**WordPress**](wordpress.md)**,[**Drupal**](drupal.md)**,**Joomla**,**vBulletin**网站进行安全问题扫描(图形界面)\
|
||||
[**VulnX**](https://github.com/anouarbensaad/vulnx)**:**对[**Joomla**](joomla.md)**,**[**Wordpress**](wordpress.md)**,**[**Drupal**](drupal.md)**,PrestaShop,Opencart进行扫描**\
|
||||
**CMSMap**:对[**(W)ordpress**](wordpress.md)**,**[**(J)oomla**](joomla.md)**,**[**(D)rupal**](drupal.md)**或**[**(M)oodle**](moodle.md)**进行扫描**\
|
||||
[**droopscan**](https://github.com/droope/droopescan)**:**对[**Drupal**](drupal.md)**,**[**Joomla**](joomla.md)**,**[**Moodle**](moodle.md)**,Silverstripe,**[**Wordpress**](wordpress.md)进行扫描**
|
||||
[**droopscan**](https://github.com/droope/droopescan)**:**对[**Drupal**](drupal.md)**,**[**Joomla**](joomla.md)**,**[**Moodle**](moodle.md)**,Silverstripe,**[**Wordpress**](wordpress.md)**进行扫描**
|
||||
```bash
|
||||
cmsmap [-f W] -F -d <URL>
|
||||
wpscan --force update -e --url <URL>
|
||||
joomscan --ec -u <URL>
|
||||
joomlavs.rb #https://github.com/rastating/joomlavs
|
||||
```
|
||||
> 在这一点上,您应该已经获得了客户端使用的Web服务器的一些信息(如果提供了任何数据),并且还有一些在测试期间要记住的技巧。如果您很幸运,甚至可能找到了一个CMS并运行了一些扫描器。
|
||||
> 在这一点上,您应该已经获得了客户端使用的Web服务器的一些信息(如果提供了任何数据),并记住了一些测试期间需要注意的技巧。如果您很幸运,甚至可能已经找到了一个CMS并运行了一些扫描器。
|
||||
|
||||
## 逐步的Web应用程序发现
|
||||
|
||||
|
@ -177,19 +180,19 @@ joomlavs.rb #https://github.com/rastating/joomlavs
|
|||
|
||||
**强制错误**
|
||||
|
||||
当向Web服务器发送奇怪的数据时,它们可能会**表现出意外的行为**。这可能会打开**漏洞**或**泄露敏感信息**。
|
||||
当向Web服务器发送奇怪的数据时,它们可能会**表现出意外的行为**。这可能会导致**漏洞**或**泄露敏感信息**。
|
||||
|
||||
* 访问**伪造页面**,如/whatever\_fake.php(.aspx,.html,.etc)
|
||||
* 在**cookie值**和**参数值**中添加"\[]","]] "和"\[\["以创建错误
|
||||
* 在**cookie值**和**参数值**中添加"\[]", "]]"和"\[\["以创建错误
|
||||
* 通过在**URL**的**末尾**给出输入为**`/~randomthing/%s`**来生成错误
|
||||
* 尝试使用**不同的HTTP动词**,如PATCH,DEBUG或错误的FAKE
|
||||
* 尝试使用**不同的HTTP动词**,如PATCH、DEBUG或错误的FAKE
|
||||
|
||||
#### **检查是否可以上传文件(**[**PUT动词,WebDav**](put-method-webdav.md)**)**
|
||||
|
||||
如果发现**WebDav**已**启用**,但您没有足够的权限在根文件夹中**上传文件**,请尝试:
|
||||
如果发现**WebDav**已经**启用**,但您没有足够的权限在根文件夹中**上传文件**,请尝试:
|
||||
|
||||
* **暴力破解**凭据
|
||||
* 通过WebDav将文件**上传**到Web页面中的**其他找到的文件夹**。您可能有权限在其他文件夹中上传文件。
|
||||
* 通过WebDav将文件**上传**到Web页面中**找到的其他文件夹**。您可能有权限在其他文件夹中上传文件。
|
||||
|
||||
### **SSL/TLS漏洞**
|
||||
|
||||
|
@ -212,29 +215,29 @@ sslyze --regular <ip:port>
|
|||
|
||||
### 爬虫
|
||||
|
||||
在网络中启动某种类型的**爬虫**。爬虫的目标是从被测试应用程序中找到尽可能多的路径。因此,应使用网络爬行和外部来源来找到尽可能多的有效路径。
|
||||
在网络中启动某种类型的**爬虫**。爬虫的目标是从被测试应用程序中**找到尽可能多的路径**。因此,应使用网络爬行和外部来源来找到尽可能多的有效路径。
|
||||
|
||||
* [**gospider**](https://github.com/jaeles-project/gospider) (go):HTML爬虫,JS文件和外部来源(Archive.org,CommonCrawl.org,VirusTotal.com,AlienVault.com)中的LinkFinder。
|
||||
* [**hakrawler**](https://github.com/hakluke/hakrawler) (go):HML爬虫,带有JS文件的LinkFider和Archive.org作为外部来源。
|
||||
* [**dirhunt**](https://github.com/Nekmo/dirhunt) (python):HTML爬虫,还指示“juicy files”。
|
||||
* [**evine** ](https://github.com/saeeddhqan/evine)(go):交互式CLI HTML爬虫。它还在Archive.org中搜索。
|
||||
* [**meg**](https://github.com/tomnomnom/meg) (go):这个工具不是一个爬虫,但它可能很有用。您只需指定一个包含主机和路径的文件,meg将在每个主机上获取每个路径并保存响应。
|
||||
* [**meg**](https://github.com/tomnomnom/meg) (go):这个工具不是爬虫,但它可能很有用。您只需指定一个包含主机和路径的文件,meg将在每个主机上获取每个路径并保存响应。
|
||||
* [**urlgrab**](https://github.com/IAmStoxe/urlgrab) (go):带有JS渲染功能的HTML爬虫。然而,它看起来没有维护,预编译版本过旧,当前代码无法编译。
|
||||
* [**gau**](https://github.com/lc/gau) (go):使用外部提供者(wayback,otx,commoncrawl)的HTML爬虫。
|
||||
* [**ParamSpider**](https://github.com/devanshbatham/ParamSpider):此脚本将查找带有参数的URL并列出它们。
|
||||
* [**galer**](https://github.com/dwisiswant0/galer) (go):带有JS渲染功能的HTML爬虫。
|
||||
* [**LinkFinder**](https://github.com/GerbenJavado/LinkFinder) (python):HTML爬虫,具有JS美化功能,能够在JS文件中搜索新路径。还值得一看的是[JSScanner](https://github.com/dark-warlord14/JSScanner),它是LinkFinder的包装器。
|
||||
* [**goLinkFinder**](https://github.com/0xsha/GoLinkFinder) (go):用于提取HTML源代码和嵌入式javascript文件中的端点。对于漏洞猎人、红队人员和信息安全专家很有用。
|
||||
* [**JSParser**](https://github.com/nahamsec/JSParser) (python2.7):使用Tornado和JSBeautifier从JavaScript文件中解析相对URL的Python 2.7脚本。用于轻松发现AJAX请求。看起来没有维护。
|
||||
* [**goLinkFinder**](https://github.com/0xsha/GoLinkFinder) (go):用于提取HTML源代码和嵌入式javascript文件中的端点。对于漏洞猎人、红队人员和信息安全专家非常有用。
|
||||
* [**JSParser**](https://github.com/nahamsec/JSParser) (python2.7):使用Tornado和JSBeautifier解析JavaScript文件中的相对URL的Python 2.7脚本。用于轻松发现AJAX请求。看起来没有维护。
|
||||
* [**relative-url-extractor**](https://github.com/jobertabma/relative-url-extractor) (ruby):给定一个文件(HTML),它将使用巧妙的正则表达式从中提取URL,以查找并提取丑陋(压缩)文件中的相对URL。
|
||||
* [**JSFScan**](https://github.com/KathanP19/JSFScan.sh) (bash,多个工具):使用多个工具从JS文件中收集有趣的信息。
|
||||
* [**subjs**](https://github.com/lc/subjs) (go):查找JS文件。
|
||||
* [**page-fetch**](https://github.com/detectify/page-fetch) (go):在无头浏览器中加载页面,并打印出加载的所有URL以加载页面。
|
||||
* [**page-fetch**](https://github.com/detectify/page-fetch) (go):在无头浏览器中加载页面,并打印出加载页面的所有URL。
|
||||
* [**Feroxbuster**](https://github.com/epi052/feroxbuster) (rust):混合了前面工具的几个选项的内容发现工具。
|
||||
* [**Javascript Parsing**](https://github.com/xnl-h4ck3r/burp-extensions):用于在JS文件中查找路径和参数的Burp扩展。
|
||||
* [**Sourcemapper**](https://github.com/denandz/sourcemapper):给定.js.map URL,将获取美化的JS代码。
|
||||
* [**xnLinkFinder**](https://github.com/xnl-h4ck3r/xnLinkFinder):这是一个用于发现给定目标的端点的工具。
|
||||
* [**waymore**](https://github.com/xnl-h4ck3r/waymore)**:** 从wayback机器中发现链接(还下载wayback中的响应并查找更多链接)
|
||||
* [**waymore**](https://github.com/xnl-h4ck3r/waymore)**:** 从wayback机器中发现链接(还下载wayback中的响应并查找更多链接)。
|
||||
* [**HTTPLoot**](https://github.com/redhuntlabs/HTTPLoot) (go):爬行(甚至通过填写表单)并使用特定的正则表达式查找敏感信息。
|
||||
* [**SpiderSuite**](https://github.com/3nock/SpiderSuite):Spider Suite是一个高级多功能GUI网络安全爬虫,专为网络安全专业人员设计。
|
||||
* [**jsluice**](https://github.com/BishopFox/jsluice) (go):它是一个用于从JavaScript源代码中提取URL、路径、秘密和其他有趣数据的Go包和命令行工具。
|
||||
|
@ -242,21 +245,21 @@ sslyze --regular <ip:port>
|
|||
|
||||
### 暴力破解目录和文件
|
||||
|
||||
从根目录开始进行**暴力破解**,确保使用**此方法**和**爬虫**发现的所有**目录**进行**暴力破解**(可以递归地进行此暴力破解,并在使用的字典的开头添加找到的目录的名称)。\
|
||||
从根目录开始进行**暴力破解**,确保使用**此方法**和**爬虫**发现的所有**目录**进行**递归**暴力破解(可以在使用的字典的开头添加找到的目录的名称)。\
|
||||
工具:
|
||||
|
||||
* **Dirb** / **Dirbuster** - 包含在Kali中,**旧**(而且**慢**),但功能正常。允许自签名证书和递归搜索。与其他选项相比速度较慢。
|
||||
* **Dirb** / **Dirbuster** - 包含在Kali中,**旧**(而且**慢**)但功能齐全。允许自签名证书和递归搜索。与其他选项相比速度较慢。
|
||||
* [**Dirsearch**](https://github.com/maurosoria/dirsearch) (python)**:不允许自签名证书,但**允许递归搜索。
|
||||
* [**Gobuster**](https://github.com/OJ/gobuster) (go):允许自签名证书,**不支持**递归搜索。
|
||||
* [**Feroxbuster**](https://github.com/epi052/feroxbuster) **- 快速,支持递归搜索。**
|
||||
* [**wfuzz**](https://github.com/xmendez/wfuzz) `wfuzz -w /usr/share/seclists/Discovery/Web-Content/raft-medium-directories.txt https://domain.com/api/FUZZ`
|
||||
* [**ffuf** ](https://github.com/ffuf/ffuf)- 快速:`ffuf -c -w /usr/share/wordlists/dirb/big.txt -u http://10.10.10.10/FUZZ`
|
||||
* [**uro**](https://github.com/s0md3v/uro) (python):这不是一个爬虫,而是一个工具,根据找到的URL列表删除“重复”的URL。
|
||||
* [**Scavenger**](https://github.com/0xDexter0us/Scavenger):Burp扩展,用于从不同页面的burp历史记录中创建目录列表
|
||||
* [**TrashCompactor**](https://github.com/michael1026/trashcompactor):删除具有重复功能的URL(基于js导入)
|
||||
* [**uro**](https://github.com/s0md3v/uro) (python):这不是一个爬虫,而是一个工具,根据找到的URL列表删除“重复”URL。
|
||||
* [**Scavenger**](https://github.com/0xDexter0us/Scavenger):Burp扩展,用于从不同页面的burp历史记录中创建目录列表。
|
||||
* [**TrashCompactor**](https://github.com/michael1026/trashcompactor):删除具有重复功能的URL(基于js导入)。
|
||||
* [**Chamaleon**](https://github.com/iustin24/chameleon):它使用wapalyzer检测使用的技术并选择要使用的字典。
|
||||
|
||||
**推荐的字典:**
|
||||
**推荐字典:**
|
||||
* [https://github.com/carlospolop/Auto\_Wordlists/blob/main/wordlists/bf\_directories.txt](https://github.com/carlospolop/Auto\_Wordlists/blob/main/wordlists/bf\_directories.txt)
|
||||
* [**Dirsearch** included dictionary](https://github.com/maurosoria/dirsearch/blob/master/db/dicc.txt)
|
||||
* [http://gist.github.com/jhaddix/b80ea67d85c13206125806f0828f4d10](http://gist.github.com/jhaddix/b80ea67d85c13206125806f0828f4d10)
|
||||
|
@ -275,24 +278,24 @@ sslyze --regular <ip:port>
|
|||
|
||||
请注意,每当在暴力破解或爬虫过程中发现新目录时,应进行暴力破解。
|
||||
|
||||
### 每个找到的文件上要检查的内容
|
||||
### 检查每个找到的文件时要注意的事项
|
||||
|
||||
* [**Broken link checker**](https://github.com/stevenvachon/broken-link-checker):查找HTML中的损坏链接,可能容易被接管
|
||||
* **文件备份**:一旦找到所有文件,查找所有可执行文件的备份(“_.php_”,“_.aspx_”...)。备份的常见变体有:_file.ext\~,#file.ext#,\~file.ext,file.ext.bak,file.ext.tmp,file.ext.old,file.bak,file.tmp和file.old._ 您还可以使用工具[**bfac**](https://github.com/mazen160/bfac)。
|
||||
* **发现新参数**:您可以使用[**Arjun**](https://github.com/s0md3v/Arjun)**,**[**parameth**](https://github.com/maK-/parameth)**,**[**x8**](https://github.com/sh1yo/x8)**和**[**Param Miner**](https://github.com/PortSwigger/param-miner)**等工具来发现隐藏的参数。如果可以的话,您可以尝试在每个可执行的Web文件上搜索隐藏的参数。
|
||||
* _Arjun所有默认字典:_ [https://github.com/s0md3v/Arjun/tree/master/arjun/db](https://github.com/s0md3v/Arjun/tree/master/arjun/db)
|
||||
* _Param-miner“params”:_ [https://github.com/PortSwigger/param-miner/blob/master/resources/params](https://github.com/PortSwigger/param-miner/blob/master/resources/params)
|
||||
* _Assetnote“parameters\_top\_1m”:_ [https://wordlists.assetnote.io/](https://wordlists.assetnote.io)
|
||||
* _nullenc0de“params.txt”:_ [https://gist.github.com/nullenc0de/9cb36260207924f8e1787279a05eb773](https://gist.github.com/nullenc0de/9cb36260207924f8e1787279a05eb773)
|
||||
* **文件备份**:一旦找到所有文件,查找所有可执行文件的备份(“_.php_”,“_.aspx_”等)。备份的常见变体包括:_file.ext\~,#file.ext#,\~file.ext,file.ext.bak,file.ext.tmp,file.ext.old,file.bak,file.tmp和file.old._ 您还可以使用工具[**bfac**](https://github.com/mazen160/bfac)。
|
||||
* **发现新参数**:您可以使用工具如[**Arjun**](https://github.com/s0md3v/Arjun)**,**[**parameth**](https://github.com/maK-/parameth)**,**[**x8**](https://github.com/sh1yo/x8)**和**[**Param Miner**](https://github.com/PortSwigger/param-miner)**来发现隐藏的参数。如果可以的话,您可以尝试在每个可执行的Web文件上搜索隐藏的参数。
|
||||
* _Arjun所有默认字典:_[https://github.com/s0md3v/Arjun/tree/master/arjun/db](https://github.com/s0md3v/Arjun/tree/master/arjun/db)
|
||||
* _Param-miner“params”:_[https://github.com/PortSwigger/param-miner/blob/master/resources/params](https://github.com/PortSwigger/param-miner/blob/master/resources/params)
|
||||
* _Assetnote“parameters\_top\_1m”:_[https://wordlists.assetnote.io/](https://wordlists.assetnote.io)
|
||||
* _nullenc0de“params.txt”:_[https://gist.github.com/nullenc0de/9cb36260207924f8e1787279a05eb773](https://gist.github.com/nullenc0de/9cb36260207924f8e1787279a05eb773)
|
||||
* **注释**:检查所有文件的注释,您可以找到**凭据**或**隐藏功能**。
|
||||
* 如果您正在进行**CTF**比赛,一个“常见”的技巧是在页面的**右侧**的**注释**中**隐藏****信息**(使用**数百个空格**,以便在使用浏览器打开源代码时看不到数据)。另一种可能性是使用**多个新行**并在网页的**底部**的注释中**隐藏信息**。
|
||||
* 如果您正在进行**CTF**比赛,一个“常见”的技巧是在页面的**右侧**的**注释**中**隐藏****信息**(使用**大量**的**空格**,以便在使用浏览器打开源代码时无法看到数据)。另一种可能性是使用**多个新行**并在网页的**底部**的注释中**隐藏信息**。
|
||||
* **API密钥**:如果您**找到任何API密钥**,有一个指南说明如何使用不同平台的API密钥:[**keyhacks**](https://github.com/streaak/keyhacks)**,**[**zile**](https://github.com/xyele/zile.git)**,**[**truffleHog**](https://github.com/trufflesecurity/truffleHog)**,**[**SecretFinder**](https://github.com/m4ll0k/SecretFinder)**,**[**RegHex**](https://github.com/l4yton/RegHex\)/)**,**[**DumpsterDive**](https://github.com/securing/DumpsterDiver)**,**[**EarlyBird**](https://github.com/americanexpress/earlybird)
|
||||
* Google API密钥:如果您找到任何类似**AIza**SyA-qLheq6xjDiEIRisP\_ujUseYLQCHUjik的API密钥,可以使用项目[**gmapapiscanner**](https://github.com/ozguralp/gmapsapiscanner)检查密钥可以访问哪些API。
|
||||
* **S3存储桶**:在爬虫过程中,查看是否有任何子域或任何链接与某个S3存储桶相关。在这种情况下,[**检查存储桶的权限**](buckets/)。
|
||||
|
||||
### 特殊发现
|
||||
|
||||
在执行爬虫和暴力破解时,您可能会发现一些有趣的事情,您需要注意。
|
||||
在执行爬虫和暴力破解时,您可能会发现一些有趣的事情,需要注意。
|
||||
|
||||
**有趣的文件**
|
||||
|
||||
|
@ -300,14 +303,14 @@ sslyze --regular <ip:port>
|
|||
* [如果找到一个名为_**.git**_的文件,可以提取一些信息](git.md)。
|
||||
* 如果找到一个名为_**.env**_的文件,可能会发现诸如API密钥、数据库密码和其他信息。
|
||||
* 如果找到**API端点**,您[也应该测试它们](web-api-pentesting.md)。这些不是文件,但可能会“看起来像”文件。
|
||||
* **JS文件**:在爬虫部分提到了几个可以从JS文件中提取路径的工具。此外,监视找到的每个JS文件可能是有趣的,因为在某些情况下,更改可能表明代码中引入了潜在的漏洞。您可以使用例如[**JSMon**](https://github.com/robre/jsmon)**。**
|
||||
* **JS文件**:在爬虫部分提到了几个可以从JS文件中提取路径的工具。此外,监视每个找到的JS文件可能是有趣的,因为在某些情况下,更改可能表明代码中引入了潜在的漏洞。您可以使用例如[**JSMon**](https://github.com/robre/jsmon)**。**
|
||||
* 您还应该使用[**RetireJS**](https://github.com/retirejs/retire.js/)或[**JSHole**](https://github.com/callforpapers-source/jshole)检查发现的JS文件是否存在漏洞。
|
||||
* **Javascript反混淆和解包器:**[https://lelinhtinh.github.io/de4js/](https://lelinhtinh.github.io/de4js/),[https://www.dcode.fr/javascript-unobfuscator](https://www.dcode.fr/javascript-unobfuscator)
|
||||
* **Javascript美化程序:**[http://jsbeautifier.org/](https://beautifier.io),[http://jsnice.org/](http://jsnice.org)
|
||||
* **Javascript美化器:**[http://jsbeautifier.org/](https://beautifier.io),[http://jsnice.org/](http://jsnice.org)
|
||||
* **JsFuck反混淆**(使用字符:“\[]!+”)[https://ooze.ninja/javascript/poisonjs/](https://ooze.ninja/javascript/poisonjs/)
|
||||
* [**TrainFuck**](https://github.com/taco-c/trainfuck)**:** `+72.+29.+7..+3.-67.-12.+55.+24.+3.-6.-8.-67.-23.`
|
||||
* 在许多情况下,您需要**理解使用的正则表达式**,这将非常有用:[https://regex101.com/](https://regex101.com)
|
||||
* 您还可以**监视检测到表单的文件**,因为参数的更改或新表单的出现可能表明存在潜在的新易受攻击的功能。
|
||||
* 在一些情况下,你需要**理解使用的正则表达式**,这个网站会很有用:[https://regex101.com/](https://regex101.com)
|
||||
* 你还可以**监视检测到表单的文件**,因为参数的更改或新表单的出现可能表明存在潜在的新的易受攻击的功能。
|
||||
|
||||
**403 Forbidden/Basic Authentication/401 Unauthorized (bypass)**
|
||||
|
||||
|
@ -317,31 +320,31 @@ sslyze --regular <ip:port>
|
|||
|
||||
**502 Proxy Error**
|
||||
|
||||
如果任何页面以该**代码**响应,那么可能是**代理配置错误**。**如果您发送类似于:`GET https://google.com HTTP/1.1`**(带有主机头和其他常见头),**代理**将尝试**访问**_**google.com**_**,您将找到一个** SSRF。
|
||||
如果任何页面**响应**这个**状态码**,那么很可能是**代理配置错误**。**如果你发送一个类似这样的HTTP请求:`GET https://google.com HTTP/1.1`**(包括主机头和其他常见头),**代理**将尝试**访问**_**google.com**_**,这样你就发现了**SSRF**。
|
||||
|
||||
**NTLM Authentication - 信息泄露**
|
||||
|
||||
如果运行的服务器要求身份验证是**Windows**,或者您找到一个要求您**凭据**(并要求**域名**)的登录页面,您可以引发**信息泄露**。\
|
||||
**发送**以下**头部**:`“Authorization: NTLM TlRMTVNTUAABAAAAB4IIAAAAAAAAAAAAAAAAAAAAAAA=”`,由于**NTLM身份验证的工作方式**,服务器将在“WWW-Authenticate”头部中回复内部信息(IIS版本、Windows版本...)。\
|
||||
您可以使用**nmap插件**“_http-ntlm-info.nse_”来**自动化**此过程。
|
||||
如果运行的服务器要求身份验证是**Windows**,或者你找到一个要求你输入**凭据**(并要求输入**域名**)的登录页面,你可以引发**信息泄露**。\
|
||||
发送**头部**:`“Authorization: NTLM TlRMTVNTUAABAAAAB4IIAAAAAAAAAAAAAAAAAAAAAAA=”`,由于**NTLM身份验证的工作原理**,服务器将在“WWW-Authenticate”头部中回复内部信息(IIS版本、Windows版本等)。\
|
||||
你可以使用**nmap插件**“_http-ntlm-info.nse_”来**自动化**这个过程。
|
||||
|
||||
**HTTP重定向(CTF)**
|
||||
|
||||
可以在**重定向**中**放置内容**。这个内容**不会显示给用户**(因为浏览器会执行重定向),但其中可能**隐藏**了一些东西。
|
||||
可以在**重定向**中**放置内容**。这个内容**不会显示给用户**(因为浏览器会执行重定向),但是可能会**隐藏**一些东西。
|
||||
|
||||
### 检查Web漏洞
|
||||
|
||||
现在已经对Web应用程序进行了全面的枚举,是时候检查许多可能的漏洞了。您可以在这里找到检查清单:
|
||||
现在已经对Web应用程序进行了全面的枚举,是时候检查可能的许多漏洞了。你可以在这里找到检查清单:
|
||||
|
||||
{% content-ref url="../../pentesting-web/web-vulnerabilities-methodology/" %}
|
||||
[web-vulnerabilities-methodology](../../pentesting-web/web-vulnerabilities-methodology/)
|
||||
{% endcontent-ref %}
|
||||
|
||||
TODO:使用[https://six2dez.gitbook.io/pentest-book/others/web-checklist](https://six2dez.gitbook.io/pentest-book/others/web-checklist)和[https://kennel209.gitbooks.io/owasp-testing-guide-v4/content/en/web\_application\_security\_testing/configuration\_and\_deployment\_management\_testing.html](https://kennel209.gitbooks.io/owasp-testing-guide-v4/content/en/web\_application\_security\_testing/configuration\_and\_deployment\_management\_testing.html)以及[https://owasp-skf.gitbook.io/asvs-write-ups/kbid-111-client-side-template-injection](https://owasp-skf.gitbook.io/asvs-write-ups/kbid-111-client-side-template-injection)来完善漏洞和技术列表。
|
||||
TODO: 使用[https://six2dez.gitbook.io/pentest-book/others/web-checklist](https://six2dez.gitbook.io/pentest-book/others/web-checklist)和[https://kennel209.gitbooks.io/owasp-testing-guide-v4/content/en/web\_application\_security\_testing/configuration\_and\_deployment\_management\_testing.html](https://kennel209.gitbooks.io/owasp-testing-guide-v4/content/en/web\_application\_security\_testing/configuration\_and\_deployment\_management\_testing.html)以及[https://owasp-skf.gitbook.io/asvs-write-ups/kbid-111-client-side-template-injection](https://owasp-skf.gitbook.io/asvs-write-ups/kbid-111-client-side-template-injection)来完善漏洞和技术列表。
|
||||
|
||||
### 监视页面更改
|
||||
### 监视页面变化
|
||||
|
||||
您可以使用工具,如[https://github.com/dgtlmoon/changedetection.io](https://github.com/dgtlmoon/changedetection.io)来监视页面的修改,以便检测可能插入漏洞的更改。
|
||||
你可以使用工具如[https://github.com/dgtlmoon/changedetection.io](https://github.com/dgtlmoon/changedetection.io)来监视页面的修改,以便发现可能插入漏洞的变化。
|
||||
|
||||
### HackTricks自动命令
|
||||
```
|
||||
|
@ -414,18 +417,18 @@ Description: Simple Scan with Ffuf for discovering additional vhosts
|
|||
Command: ffuf -w {Subdomain_List}:FUZZ -u {Web_Proto}://{Domain_Name} -H "Host:FUZZ.{Domain_Name}" -c -mc all {Ffuf_Filters}
|
||||
```
|
||||
<img src="../../.gitbook/assets/i3.png" alt="" data-size="original">\
|
||||
**Bug赏金提示**:**注册**Intigriti,一个由黑客创建的高级**Bug赏金平台**!立即加入我们,让您的赏金高达**$100,000**!
|
||||
**Bug赏金提示**:**注册**Intigriti,一个由黑客创建的高级bug赏金平台!立即加入我们,访问[**https://go.intigriti.com/hacktricks**](https://go.intigriti.com/hacktricks),开始赚取高达**$100,000**的赏金!
|
||||
|
||||
{% embed url="https://go.intigriti.com/hacktricks" %}
|
||||
|
||||
<details>
|
||||
|
||||
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks云 ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
|
||||
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks云 ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 推特 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
|
||||
|
||||
* 您在**网络安全公司**工作吗?您想在HackTricks中看到您的**公司广告**吗?或者您想获得**PEASS的最新版本或下载PDF格式的HackTricks**吗?请查看[**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* 发现我们的独家[**NFTs**](https://opensea.io/collection/the-peass-family)收藏品[**The PEASS Family**](https://opensea.io/collection/the-peass-family)
|
||||
* 你在一家**网络安全公司**工作吗?想要在HackTricks中**宣传你的公司**吗?或者想要**获取PEASS的最新版本或下载HackTricks的PDF**吗?请查看[**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* 发现我们的独家[**NFTs**](https://opensea.io/collection/the-peass-family)收藏品——[**The PEASS Family**](https://opensea.io/collection/the-peass-family)
|
||||
* 获得[**官方PEASS和HackTricks周边产品**](https://peass.creator-spring.com)
|
||||
* **加入**[**💬**](https://emojipedia.org/speech-balloon/) [**Discord群组**](https://discord.gg/hRep4RUj7f)或[**电报群组**](https://t.me/peass),或在**Twitter**上**关注**我[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
|
||||
* **通过向**[**hacktricks repo**](https://github.com/carlospolop/hacktricks) **和**[**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **提交PR来分享您的黑客技巧。**
|
||||
* **通过向**[**hacktricks repo**](https://github.com/carlospolop/hacktricks) **和**[**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **提交PR来分享你的黑客技巧。**
|
||||
|
||||
</details>
|
||||
|
|
Loading…
Reference in a new issue