
Oracle E-Business Suite (संस्करण 12.2.3 - 12.2.14) में एक गंभीर प्री-ऑथेंटिकेशन रिमोट कोड एक्ज़ीक्यूशन (RCE) दोष हमलावरों को दुर्भावनापूर्ण HTTP अनुरोधों के माध्यम से कमजोर सर्वरों पर पूर्ण नियंत्रण प्राप्त करने की अनुमति देता है - जिसका अब वास्तविक दुनिया में सक्रिय रूप से शोषण किया जा रहा है।
CVE-2025-61882 Oracle E-Business Suite (EBS) में एक गंभीर, प्री-ऑथ RCE है जो जबरन वसूली/डेटा चोरी अभियानों में सक्रिय रूप से शोषित किया जा रहा है। प्रभावित संस्करण: 12.2.3 → 12.2.14। Oracle ने IOCs (IPs, शेल-स्टेजर कमांड, SHA-256s) के साथ एक आपातकालीन सलाह प्रकाशित की। प्रभावित सिस्टम को तुरंत पैच या सुरक्षित करें, दिए गए डिटेक्शन के साथ खोज करें, और लॉग स्कैन करने के लिए नीचे दिए गए सुरक्षित Python स्क्रिप्ट का उपयोग करें। प्रोडक्शन पर सार्वजनिक PoCs न चलाएं — केवल अधिकृत पृथक लैब में परीक्षण करें। 🛑🗿
Oracle EBS महत्वपूर्ण व्यावसायिक कार्यों (ERP, पेरोल, वित्त, HR) को चलाता है। वेब-फेसिंग EBS इंस्टेंस में प्री-ऑथ RCE हमलावर को एप्लिकेशन सर्वर पर मनमाने कमांड निष्पादित करने, संवेदनशील डेटा तक पहुंचने, वेबशेल ड्रॉप करने और फाइलें एक्सफिल्ट्रेट करने की अनुमति देता है। यह कमजोरी वास्तविक दुनिया में हथियार बनाई गई और जबरन वसूली अभियानों से जुड़ी — यह एक वास्तविक व्यावसायिक घटना है, कोई सैद्धांतिक CVE नहीं। 🔥
/OA_HTML/ फ्लो, और संबंधित एंडपॉइंटUiServlet और /OA_HTML/ पर तैयार किए गए POSTs/अनुरोध भेजना।/bin/bash -i >& /dev/tcp/...)।Oracle नोट करता है कि ये IOCs घटनाओं में देखी गई गतिविधि हैं (केवल CVE-2025-61882 तक सीमित नहीं)। किसी भी सकारात्मक मिलान को उच्च प्राथमिकता मानें।
IPs
200.107.207.26 — संभावित GET/POST गतिविधि185.181.60.11 — संभावित GET/POST गतिविधिशेल स्टेजर पैटर्न
sh -c /bin/bash -i >& /dev/tcp// 0>&1 — देखी गई आउटबाउंड TCP रिवर्स शेल शैली कमांडSHA-256 हैश (एक्सप्लॉइट / PoC आर्टिफैक्ट्स)
76b6d36e04e367a2334c445b51e1ecce97e4c614e88dfb4f72b104ca0f31235d
(oracle_ebs_nday_exploit_poc_scattered_lapsus_retard_cl0p_hunters.zip)aa0d3859d6633b62bccfb69017d33a8979a3be1f3f0a5a4bf6960d6c73d41121
(.../exp.py)6fd538e4a8e3493dda6f9fcdc96e814bdd14f3e2ef8aa46f0143bff34b882c1b
(.../server.py)प्रभावित संस्करण (जोर देने के लिए दोहराया गया)
TL;DR GitHub रेपो में CVE-2025-61882 (Oracle E-Business Suite प्री-ऑथ RCE) के लिए निष्क्रिय डिटेक्शन आर्टिफैक्ट्स शामिल हैं। इनका उपयोग खोज, ट्राइएज और रोकथाम के लिए करें — शोषण के लिए नहीं। 🛑🗿
detections/ फ़ोल्डर के अंदर एक संक्षिप्त Description.md (मिनी-README) पहले ही जोड़ा जा चुका है — पूर्ण राइटअप और TL;DR के लिए उस फ़ाइल की जांच करें। यह टॉप-लेवल README केवल डिटेक्शन पैक और उपयोग का सारांश देता है ताकि आप जल्दी से चीजें पकड़ सकें और चला सकें।
detections/splunk/
oracle_cve61882_ioc_traffic.spl — Oracle-प्रदत्त IOC IPs से/को ट्रैफिक का पता लगाएं।oracle_cve61882_uiservlet_post.spl — बाहरी IPs से UiServlet / /OA_HTML/ पर संदिग्ध POSTs का पता लगाएं।oracle_cve61882_reverse_shell.spl — एंडपॉइंट लॉग में रिवर्स-शेल शैली प्रोसेस निर्माण का पता लगाएं।detections/elastic/
oracle_cve61882_uiservlet_post.kql — UiServlet/OA_HTML POSTs के लिए KQL।oracle_cve61882_filehash_detection.kql — Oracle-प्रदत्त दुर्भावनापूर्ण SHA-256s से मिलान करने के लिए KQL।detections/scripts/
ebs_safe_hunt.py — सुरक्षित, ऑफ़लाइन Python लॉग पार्सर (कोई नेटवर्क कॉल नहीं, कोई एक्सप्लॉइट निष्पादन नहीं)। अपने एक्सेस लॉग की प्रतियों पर चलाएं।detections/Description.md
संदर्भ और IOCs के लिए detections/Description.md की समीक्षा करें। ✅
Splunk .spl क्वेरीज़ को अपने Splunk वातावरण में ड्रॉप करें (या उन्हें सेव्ड सर्च / अलर्ट में आयात करें)।
KQL क्वेरीज़ को Kibana / Elastic डिटेक्शन नियमों में पेस्ट करें।
ebs_safe_hunt.py को ऐसे होस्ट पर कॉपी करें जिसके पास केवल संग्रहीत या संपादित लॉग तक पढ़ने की पहुंच हो, फिर चलाएं:
python3 ebs_safe_hunt.py /path/to/access.log
फ़्लैग किए गए malicious_ips, servlet_posts, shell_stager, और malicious_hash आउटपुट की समीक्षा करें और आवश्यकतानुसार एस्केलेट करें। 🕵️♂️
सिद्धांत: संस्करण प्रकटीकरण या UI हिट्स को उच्च-विश्वास संकेतकों (दुर्भावनापूर्ण IPs, UiServlet/OA_HTML पर POST, रिवर्स शेल प्रोसेस स्ट्रिंग्स, फ़ाइल हैश मिलान, बड़े आउटबाउंड अपलोड) के साथ संयोजित करें।
Splunk उदाहरण Oracle IOCs के लिए ट्रैफिक का पता लगाएं:
index=web_logs OR index=proxy_logs
| where clientip IN ("200.107.207.26","185.181.60.11") OR dest_ip IN ("200.107.207.26","185.181.60.11")
| stats count by clientip, dest_ip, uri, method, useragent, _time
| sort - count
बाहरी IPs से UiServlet/OA_HTML POSTs का पता लगाएं:
index=web_logs sourcetype=access_combined
| where (uri LIKE "%UiServlet%" OR uri LIKE "%/OA_HTML/%") AND method="POST"
| where NOT cidrmatch("10.0.0.0/8", clientip) // अपनी आंतरिक रेंज के लिए समायोजित करें
| stats count by clientip, uri, useragent, _time
| sort - count
रिवर्स शेल प्रोसेस निर्माण का पता लगाएं (EDR):
index=endpoint_events sourcetype=os_process
| where process_cmdline LIKE "%/bin/bash -i%/dev/tcp/%" OR process_cmdline LIKE "%/dev/tcp//%"
| table _time host user process_name process_cmdline parent_process
Elastic / KQL उदाहरण UiServlet संदिग्ध POST:
http.request.method : "POST" and (http.request.uri : "*UiServlet*" or http.request.uri : "/OA_HTML/*") and not client.ip : ("10.0.0.0/8")
फ़ाइल हैश डिटेक्शन:
event.type: "file" and file.hash.sha256 : ("76b6d36e04e3...", "aa0d3859d66...", "6fd538e4a8e3...")
Sigma (पोर्टेबल नियम विचार)
UiServlet//OA_HTML/ पर POST → उच्च प्राथमिकता/bin/bash -i >& /dev/tcp/ के साथ प्रोसेस निर्माण → गंभीरयह स्क्रिप्ट संयुक्त प्रारूप में वेब एक्सेस लॉग पार्स करती है और संदिग्ध UiServlet/OA_HTML POSTs, Oracle-सूचीबद्ध दुर्भावनापूर्ण IPs से अनुरोध, शेल स्टेजर पैटर्न, और प्रदत्त SHA-256 हैश की घटनाओं को फ़्लैग करती है। यह कोई नेटवर्क गतिविधि नहीं करती या एक्सप्लॉइट कोड नहीं चलाती।
#!/usr/bin/env python3
"""
ebs_safe_hunt.py — CVE-2025-61882 संकेतकों के लिए सुरक्षित लॉग पार्सर।
उपयोग:
python3 ebs_safe_hunt.py /path/to/access.log
नोट्स:
- Apache/Nginx संयुक्त लॉग लाइनें पार्स करता है।
- UiServlet/OA_HTML POSTs, Oracle सलाह से दुर्भावनापूर्ण IPs,
शेल स्टेजर पैटर्न, और देखे गए SHA256 हैश फ़्लैग करता है।
- सुरक्षित: कोई नेटवर्क / कोई एक्सप्लॉइट निष्पादन नहीं।
"""
import sys
import re
from collections import Counter, defaultdict
# सामान्य संयुक्त लॉग प्रारूप के लिए रेगेक्स
LOG_PATTERN = re.compile(
r'(?P<ip>\S+) \S+ \S+ \[(?P<time>.*?)\] "(?P<method>\S+) (?P<uri>\S+) \S+" (?P<status>\d{3}) (?P<size>\S+) "(?P<ref>[^"]*)" "(?P<ua>[^"]*)"'
)
# Oracle-प्रदत्त IOCs
MALICIOUS_IPS = {"200.107.207.26", "185.181.60.11"}
MALICIOUS_HASHES = {
"76b6d36e04e367a2334c445b51e1ecce97e4c614e88dfb4f72b104ca0f31235d",
"aa0d3859d6633b62bccfb69017d33a8979a3be1f3f0a5a4bf6960d6c73d41121",
"6fd538e4a8e3493dda6f9fcdc96e814bdd14f3e2ef8aa46f0143bff34b882c1b",
}
SHELL_PATTERN = "/bin/bash -i" # हम इस सबस्ट्रिंग की खोज करते हैं (रिवर्स शेल शैली)
SUSPICIOUS_PATHS = ["UiServlet", "/OA_HTML/"]
# वैकल्पिक: स्कैनर्स द्वारा अक्सर उपयोग किए जाने वाले संदिग्ध यूज़र-एजेंटों की सूची
SUSPICIOUS_UAS = ["curl", "wget", "python-requests", "nikto", "sqlmap", "masscan", "Nmap"]
def analyze_log(path):
ip_counts = Counter()
uri_counts = Counter()
ua_counts = Counter()
suspicious = defaultdict(list)
with open(path, "r", errors="replace") as fh:
for line_no, line in enumerate(fh, 1):
m = LOG_PATTERN.search(line)
if not m:
# वैकल्पिक रूप से, असंरचित लाइनों में हैश या शेल पैटर्न की जांच करें
if any(h in line for h in MALICIOUS_HASHES):
suspicious["malicious_hash_lines"].append((line_no, line.strip()))
if SHELL_PATTERN in line or "/dev/tcp/" in line:
suspicious["shell_pattern_lines"].append((line_no, line.strip()))
continue
ip = m.group("ip")
method = m.group("method")
uri = m.group("uri")
ua = m.group("ua")
size = m.group("size")
ip_counts[ip] += 1
uri_counts[uri] += 1
ua_counts[ua] += 1
# 1) दुर्भावनापूर्ण IPs (Oracle)
if ip in MALICIOUS_IPS:
suspicious["malicious_ips"].append((line_no, ip, method, uri, ua))
# 2) संदिग्ध EBS पथों पर POSTs
if method.upper() == "POST" and any(p in uri for p in SUSPICIOUS_PATHS):
suspicious["servlet_posts"].append((line_no, ip, uri, ua))
# 3) संदिग्ध यूज़र एजेंट (स्कैनर्स)
if any(k.lower() in ua.lower() for k in SUSPICIOUS_UAS):
suspicious["suspicious_ua"].append((line_no, ip, uri, ua))
# 4) बहुत बड़े प्रतिक्रियाएं (संभावित एक्सफिल) — अपने वातावरण के लिए थ्रेशोल्ड ट्यून करें
try:
if size != "-" and int(size) > 5_000_000: # >5MB
suspicious["large_responses"].append((line_no, ip, uri, size))
except ValueError:
pass
# 5) लाइन में शेल स्टेजर पैटर्न या /dev/tcp पैटर्न
if SHELL_PATTERN in line or "/dev/tcp/" in line:
suspicious["shell_stager"].append((line_no, ip, uri, line.strip()))
# 6) लॉग में मौजूद ज्ञात दुर्भावनापूर्ण फ़ाइल हैश (यदि उपलब्ध हों)
for h in MALICIOUS_HASHES:
if h in line:
suspicious["malicious_hash"].append((line_no, ip, uri, h))
return {
"ip_counts": ip_counts,
"uri_counts": uri_counts,
"ua_counts": ua_counts,
"suspicious": suspicious
}
def pretty_report(r, top=10):
print("\n=== EBS HUNT REPORT ===\n")
print("शीर्ष स्रोत IPs:")
for ip, c in r["ip_counts"].most_common(top):
print(f" {ip}: {c}")
print("\nशीर्ष URIs:")
for uri, c in r["uri_counts"].most_common(top):
print(f" {uri}: {c}")
print("\nशीर्ष यूज़र-एजेंट:")
for ua, c in r["ua_counts"].most_common(top):
print(f" {ua}: {c}")
print("\nसंदिग्ध निष्कर्ष:")
if not r["suspicious"]:
print(" कोई नहीं मिला।")
return
for k, items in r["suspicious"].items():
print(f"\n-- {k} ({len(items)} मिलान) --")
for item in items[:100]:
print(" " + " | ".join(map(str, item)))
if __name__ == "__main__":
if len(sys.argv) != 2:
print("उपयोग: python3 ebs_safe_hunt.py /path/to/access.log")
sys.exit(1)
path = sys.argv[1]
result = analyze_log(path)
pretty_report(result)
उपयोग कैसे करें: ebs_safe_hunt.py को ऐसे होस्ट पर कॉपी करें जिसके पास संग्रहीत या कॉपी किए गए लॉग तक पढ़ने की पहुंच हो। चलाएं:
python3 ebs_safe_hunt.py /path/to/access.log
फ़्लैग किए गए malicious_ips, servlet_posts, shell_stager, और malicious_hash परिणामों की समीक्षा करें और उचित रूप से एस्केलेट करें। 🕵️♂️
200.107.207.26 और 185.181.60.11 और किसी भी अन्य विक्रेता-आपूर्ति IOC IPs/डोमेन को ब्लॉक करें।विषय: गंभीर: CVE-2025-61882 — Oracle E-Business Suite — तत्काल कार्रवाई आवश्यक
क्या: Oracle EBS (12.2.3–12.2.14) में गंभीर प्री-ऑथ RCE (CVE-2025-61882)। डेटा-चोरी/जबरन वसूली अभियानों में शोषित।
तत्काल अनुरोध (अगले 24 घंटे):
जोखिम: उच्च — संभावित पूर्ण एप्लिकेशन सर्वर समझौता, डेटा एक्सफिल्ट्रेशन, विनियामक जोखिम। निचली पंक्ति: अभी पैच या सुरक्षित करें। — 🗿
आपके पास वह सब कुछ है जो आपको चाहिए: अवलोकन, सीधे Oracle से IOCs, व्यावहारिक हंट्स, और ट्राइएज शुरू करने के लिए एक सुरक्षित स्क्रिप्ट। अपने EBS बॉक्स को पैच या सुरक्षित करें, अपने SOC के माध्यम से IOC हंट्स चलाएं, और कुछ भी संदिग्ध दिखने वाला अलग करें। सतर्क रहें, तेज़ी से पैच करें, और अपनी घटना-प्रतिक्रिया मांसपेशियों को फ्लेक्स करें। 🗿🔥