Notes Site.
post @ 2024-10-12

XSS 漏洞主要有三种类型:

Type Description
Stored (Persistent) XSS 最严重的 XSS 类型,发生在用户输入存储在后端数据库并在检索时显示(例如,帖子或评论)时
Reflected (Non-Persistent) XSS 用户输入经过后端服务器处理后显示在页面上,但未被存储(例如搜索结果或错误信息)时发生
DOM-based XSS 另一种非持久性 XSS 类型,当用户输入直接显示在浏览器中并完全在客户端处理,而无需到达后端服务器(例如,通过客户端 HTTP 参数或锚标记)时发生

污染页面元素

更改背景

1
2
3
4
5
<script>document.body.style.background = "#141d2b"</script>  

# or

<script>document.body.style.background = "https://www.hackthebox.eu/images/logo-htb.svg"</script>

更改标题

1
<script>document.title = 'HackTheBox Academy'</script>

更改文本

1
2
3
4
5
document.getElementById("todo").innerHTML = "New Text"  

# or

document.getElementsByTagName('body')[0].innerHTML = "New Text"

 XSS payload

Read More
post @ 2024-10-10

File Inclusion

下表显示了哪些函数可以执行文件以及哪些函数只能读取文件内容:

功能 阅读内容 执行 远程 URL
PHP
include()/include_once()
require()/require_once()
file_get_contents()
fopen()/file()
NodeJS
fs.readFile()
fs.sendFile()
res.render()
Java
include
import
.NET
@Html.Partial()
@Html.RemotePartial()
Response.WriteFile()
include

常见可读文件C:\Windows\boot.ini/etc/passwd,结合FUZZ技术测试。

Baisc bypass

双写

针对 LFI 的最基本过滤器之一是搜索和替换过滤器,它只是删除 ( ../) 的子字符串以避免路径遍历(非递归)。

1
$point = str_replace('../', '', $_GET['point']);
1
....//

编码

Read More
⬆︎TOP