Taninluv's blog

Archives · All

Home

Archives

loading..
basehackthebox

Buffer Overflows:part-1

Overview简而言之,缓冲区溢出是由不正确的程序代码引起的,CPU无法正确处理过多的数据,因此可能会操纵CPU的处理。例如,假设有太多数据被写入到不受限制的保留内存缓冲区或堆栈中。在这种情况下,特定的寄存器将被覆盖,这可能允许代码被执行。缓冲区溢出可能导致程序崩溃、损坏数据或损坏程序运行时的数据结构。最后一种可以用任意数据覆盖特定程序的返回地址,使攻击者能够以易受缓冲区溢出影响的进程的权限执行命令,从而通过传递任意机器代码。此代码通常旨在让我们更方便地访问系统,以便将其用于自己的目的。这种缓冲区在普通服务器中溢出,互联网蠕虫也会利用客户端软件。Unix系统上一个特别流行的目标是root访问,它赋予我们所有人访问系统的权限。然而,正如人们经常误解的那样,这并不意味着“仅”导致标准用户权限的缓冲区溢出是无害..

Read more
basepracticehackthebox

File_inclusion:Automation and Prevention

Automated Scanning了解文件包含攻击是如何工作的,以及我们如何手动制作高级有效载荷并使用自定义技术来实现远程代码执行,这一点至关重要。这是因为在许多情况下,我们要利用该漏洞,可能需要与其特定配置相匹配的自定义负载。此外,在处理WAF或防火墙等安全措施时,我们必须运用我们的理解来了解特定的有效负载/角色是如何被阻止的,并试图制定一个自定义的有效负载来绕过它。在许多琐碎的情况下,我们可能不需要手动利用LFI漏洞。有许多自动化方法可以帮助我们快速识别和利用微不足道的LFI漏洞。我们可以使用模糊化工具来测试大量常见的LFI有效载荷,看看其中是否有任何一个有效,或者我们可以使用专门的LFI工具来测试这些漏洞。

Read more
basepracticehackthebox

File-inclusion:RCE

PHP Wrappers到目前为止,在本模块中,我们一直在利用文件包含漏洞,通过各种方法披露本地文件。从本节中,我们将开始学习如何使用文件包含漏洞在后端服务器上执行代码并获得对它们的控制。我们可以使用许多方法来执行远程命令,每种方法都有特定的用例,因为它们取决于后端语言/框架和易受攻击的函数的功能。获得对后端服务器控制的一种简单而常见的方法是枚举用户凭据和SSH密钥,然后使用它们通过SSH或任何其他远程会话登录到后端服务器。例如,我们可能会在config.php这样的文件中找到数据库密码,如果用户重复使用相同的密码,该密码可能会与用户的密码相匹配。或者,我们可以检查每个用户主目录中的.ssh目录,如果读取权限设置不正确,那么我们可以获取他们的私钥(id_rsa),并使用它将ssh连接到系统中。除了..

Read more
loading..
basepracticehackthebox

File inclusion:File Disclosure

理论让我们看一些易受文件包含攻击的代码示例,以了解此类漏洞是如何发生的。如前所述,文件包含漏洞可能出现在许多最流行的web服务器和开发框架中,如PHP、NodeJS、Java、.Net等。它们中的每一个都有一种稍微不同的方法来包含本地文件,但它们都有一个共同点:从指定的路径加载文件。这样的文件可以是动态头或基于用户指定语言的不同内容。例如,页面可能有一个?language GET参数,如果用户从下拉菜单中更改语言,则会返回相同的页面,但使用不同的语言参数(例如?language=es)。在这种情况下,更改语言可能会更改web应用程序加载页面的目录(例如/en/或/es/)。如果我们能够控制正在加载的路径,那么我们可能能够利用此漏洞读取其他文件,并可能实现远程..

Read more
basetoolhacktheboxffuf

Fuzzing

子域模糊 (Sub-domain Fuzzing)target: HackTheBox有一个在线Swag商店。试着在“hacktebox.eu”上运行子域模糊测试来找到它。它的完整域是什么?

Read more
basetoolhacktheboxffuf

ffuf:Basic Fuzzing

模糊(Fuzzing)​ 术语模糊化是指一种测试技术,它将各种类型的用户输入发送到某个接口,以研究其反应。如果我们对SQL注入漏洞进行模糊处理,我们将发送随机的特殊字符,并查看服务器的反应。如果我们对缓冲区溢出进行模糊处理,我们将发送长字符串并增加它们的长度,以查看二进制文件是否以及何时会中断。​ 我们通常会为每种类型的网络模糊测试使用预定义的常用术语词汇表,看看网络服务器是否会接受它们。这样做是因为web服务器通常不会提供所有可用链接和域的目录(除非进行了严格的配置),因此我们必须检查各种链接,并查看哪些链接返回页面。 一些最常用的单词列表可以在GitHub SecLists 存储库中找到,该存储库将单词列表分类为各种类型的模糊,甚至包括常用的密码,这些密码稍后将用于密码强制。

Read more
basepracticehackthebox

MSF_LEARN_1

MSF - 转储哈希 MSF - 转储哈希 meterpreter > hashdump Administrator:500:c74761604a24f0dfd0a9ba2c30e462cf:d6908f022af0373e9e21b8a241c86dca::: ASPNET:1007:3f71d62ec68a06a39721cb3f54f04a3b:edc0d5506804653f58964a2376bbd769::: Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0::: IUSR_GRANPA:1003:a274b4532c9ca5cdf684351fab962e86:6a981cb5e03..

Read more
base

bash

bash参数变量: $# 此变量保存传递给脚本的参数数。 $@ 此变量可用于检索命令行参数列表。 $n 可以使用其位置有选择地检索每个命令行参数。例如,第一个参数位于 。$1 $$ 当前正在执行的进程的进程 ID。 $? 脚本的退出状态。此变量可用于确定命令是否成功。值 0 表示成功执行,而值 1 表示失败的结果。 $# 在这种情况下,我们只需要一个需要分配给该变量的变量。此变量用于指定我们要使用的目标。如果我们只提供一个 FQDN 作为参数,则该变量的值为 .domain``$#``1 $0 此特殊变量被分配执行脚本的名称,然后在 “” 示例中显示。Usage: $1 用空格分隔,第一个参数分配给该特殊变量。

Read more
靶场学习

Apache Mod CGI

Apache Mod CGI知识储备:参考文章:CTFHUB-Apache Mod CGI(PHP学习) 原理简述 早期的Web服务器,只能响应浏览器发来的HTTP静态资源的请求,并将存储在服务器中的静态资源返回给浏览器。随着Web技术的发展,逐渐出现了动态技术,但是Web服务器并不能够直接运行动态脚本,为了解决Web服务器与外部应用程序(CGI程序)之间数据互通,于是出现了CGI(Common Gateway Interface)通用网关接口。简单理解,可以认为CGI是Web服务器和运行其上的应用程序进行“交流”的一种约定。 当遇到动态脚本请求时,Web服务器主进程就会Fork创建出一个新的进程来启动CGI程序,运行外部C程序或Perl、PHP脚本等,也就是将动态脚本交给CGI程序来处理。这样,每次用户..

Read more
156789