Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

CWE-749 (暴露危险的方法或函数) — Vulnerability Class 119

119 vulnerabilities classified as CWE-749 (暴露危险的方法或函数). AI Chinese analysis included.

CWE-749 represents a critical architectural flaw where an application exposes a dangerous method or function through its API without adequate access controls. This weakness occurs when developers fail to restrict sensitive operations, allowing external actors to invoke functions that should remain internal or privileged. Attackers typically exploit this by directly calling these unrestricted endpoints to bypass intended security logic, potentially leading to unauthorized data access, privilege escalation, or system compromise. The severity depends on the specific function exposed, ranging from information disclosure to complete system takeover. To mitigate this risk, developers must implement strict authentication and authorization checks on all API endpoints. Additionally, adhering to the principle of least privilege ensures that only necessary methods are exposed, while comprehensive input validation and regular security audits help identify and remediate improperly secured interfaces before they can be weaponized by malicious actors.

MITRE CWE Description
The product provides an Applications Programming Interface (API) or similar interface for interaction with external actors, but the interface includes a dangerous method or function that is not properly restricted. This weakness can lead to a wide variety of resultant weaknesses, depending on the behavior of the exposed method. It can apply to any number of technologies and approaches, such as ActiveX controls, Java functions, IOCTLs, and so on. The exposure can occur in a few different ways: The function/method was never intended to be exposed to outside actors. The function/method was only intended to be accessible to a limited set of actors, such as Internet-based access from a single web site.
Common Consequences (1)
Integrity, Confidentiality, Availability, Access Control, OtherGain Privileges or Assume Identity, Read Application Data, Modify Application Data, Execute Unauthorized Code or Commands, Other
Exposing critical functionality essentially provides an attacker with the privilege level of the exposed functionality. This could result in the modification or exposure of sensitive data or possibly even execution of arbitrary code.
Mitigations (2)
Architecture and DesignIf you must expose a method, make sure to perform input validation on all arguments, limit access to authorized parties, and protect against all possible vulnerabilities.
Architecture and Design, ImplementationIdentify all exposed functionality. Explicitly list all functionality that must be exposed to some user or set of users. Identify which functionality may be: accessible to all users restricted to a small set of privileged users prevented from being directly accessible at all Ensure that the implemented code follows these expectations. This includes setting the appropriate access modifiers where ap…
Examples (2)
In the following Java example the method removeDatabase will delete the database with the name specified in the input parameter.
public void removeDatabase(String databaseName) { try { Statement stmt = conn.createStatement(); stmt.execute("DROP DATABASE " + databaseName); } catch (SQLException ex) {...} }
Bad · Java
private void removeDatabase(String databaseName) { try { Statement stmt = conn.createStatement(); stmt.execute("DROP DATABASE " + databaseName); } catch (SQLException ex) {...} }
Good · Java
These Android and iOS applications intercept URL loading within a WebView and perform special actions if a particular URL scheme is used, thus allowing the Javascript within the WebView to communicate with the application:
// Android @Override public boolean shouldOverrideUrlLoading(WebView view, String url){ if (url.substring(0,14).equalsIgnoreCase("examplescheme:")){ if(url.substring(14,25).equalsIgnoreCase("getUserInfo")){ writeDataToView(view, UserData); return false; } else{ return true; } } }
Bad · Java
// iOS -(BOOL) webView:(UIWebView *)exWebView shouldStartLoadWithRequest:(NSURLRequest *)exRequest navigationType:(UIWebViewNavigationType)exNavigationType { NSURL *URL = [exRequest URL]; if ([[URL scheme] isEqualToString:@"exampleScheme"]) { NSString *functionString = [URL resourceSpecifier]; if ([functionString hasPrefix:@"specialFunction"]) { // Make data available back in webview. UIWebView *webView = [self writeDataToView:[URL query]]; } return NO; } return YES; }
Bad · Objective-C
CVE IDTitleCVSSSeverityPublished
CVE-2022-37365 PDF-XChange Editor 安全漏洞 — PDF-XChange Editor 7.8 -2023-03-29
CVE-2021-33639 Linux kernel 安全漏洞 — kernel 7.5 -2023-03-08
CVE-2023-26478 org.xwiki.platform:xwiki-platform-store-filesystem-oldcore has Exposed Dangerous Method or Function — xwiki-platform 6.6 Medium2023-03-02
CVE-2022-4136 Exposed Dangerous Method or Function in qmpaas/leadshop — qmpaas/leadshop 9.8 -2022-11-24
CVE-2021-34996 Commvault CommCell 安全漏洞 — CommCell 8.8 -2022-01-13
CVE-2021-35243 HTTP PUT & DELETE Methods Enabled — Web Help Desk 5.3 Medium2021-12-23
CVE-2021-42128 Ivanti Avalanche 安全漏洞 — Ivanti Avalanche 8.8 -2021-12-07
CVE-2021-26614 IpTime C200 IP camera remote code execution vulnerability — ipTIME C200 IP Camera 7.5 High2021-11-22
CVE-2019-20923 Crash while handling internal Javascript exception types — MongoDB Server 6.5 Medium2020-11-23
CVE-2020-12927 AMD VBIOS Flash Tool SDK 安全漏洞 — AMD VBIOS Flash Tool SDK 7.8 -2020-11-12
CVE-2020-12912 AMD Linux hwmon 安全漏洞 — AMD extension to Linux "hwmon" for Zen1 platforms 6.5 -2020-11-12
CVE-2020-27123 Cisco AnyConnect Secure Mobility Client for Windows Arbitrary File Read Vulnerability — Cisco AnyConnect Secure Mobility Client 5.5 Medium2020-11-06
CVE-2020-12928 AMD Ryzen 安全特征问题漏洞 — AMD Ryzen Master 7.8 -2020-10-13
CVE-2020-3416 Cisco IOS XE Software for Cisco ASR 900 Series Route Switch Processor 3 Arbitrary Code Execution Vulnerabilities — Cisco IOS XE Software 6.7 Medium2020-09-24
CVE-2020-3513 Cisco IOS XE Software for Cisco ASR 900 Series Route Switch Processor 3 Arbitrary Code Execution Vulnerabilities — Cisco IOS XE Software 6.7 Medium2020-09-24
CVE-2020-17388 Marvell QConvergeConsole 安全漏洞 — QConvergeConsole 8.8 -2020-08-25
CVE-2020-17391 Corel Parallels Desktop 安全漏洞 — Desktop 6.5 -2020-08-25
CVE-2020-8212 Citrix Systems XenMobile Server 安全漏洞 — Citrix XenMobile Server 9.8 -2020-08-17
CVE-2020-15623 CentOS Web Panel 安全漏洞 — CentOS Web Panel 9.8 -2020-07-28
CVE-2020-10268 RVD#2550: Terminate Critical Services in KUKA controller KR C4 — KR3R540, KRC4, KSS8.5.7HF1, Win7_Embedded 4.6 -2020-06-16
CVE-2019-18342 Siemens SiNVR 3 Central Control Server和SiNVR 3 Video Server 安全漏洞 — Control Center Server (CCS) 9.9 Critical2019-12-12
CVE-2019-13945 Siemens SIMATIC S7-200和S7-1200 输入验证错误漏洞 — SIMATIC S7-1200 CPU family (incl. SIPLUS variants) 6.1 -2019-12-12
CVE-2019-10918 西门子 SIMATIC WinCC 安全漏洞 — SIMATIC PCS 7 V8.0 and earlier 8.8 -2019-05-14
CVE-2019-5015 Pixar Renderman 代码问题漏洞 — Pixar Renderman 7.8 -2019-03-08
CVE-2018-10931 Cobbler 资料不足漏洞 — cobbler 9.8 -2018-08-09
CVE-2018-8868 Medtronic MyCareLink Patient Monitor Exposed Dangerous Method or Function — 24950 MyCareLink Monitor 6.2 Medium2018-07-02
CVE-2016-9469 GitLab 安全漏洞 — GitLab Community Edition & GitLab Enterprise Edition 8.13.0, 8.13.0-ee, 8.13.1, 8.13.1-ee, 8.13.2, 8.13.2-ee, 8.13.3, 8.13.3-ee, 8.13.4, 8.13.4-ee, 8.13.5, 8.13.5-ee, 8.13.6, 8.13.6-ee, 8.13.7, 8.14.0, 8.14.0-ee, 8.14.1 8.2 -2017-03-28
CVE-2014-5415 Beckhoff Embedded PC Images and TwinCAT Components Exposed Dangerous Method or Function — Embedded PC Images 9.1 Critical2016-10-05
CVE-2014-0758 ICONICS GENESIS32 Exposed Dangerous Method or Function — GENESIS32 7.8 -2014-02-24

Vulnerabilities classified as CWE-749 (暴露危险的方法或函数) represent 119 CVEs. The CWE taxonomy describes the weakness; review individual CVEs for product-specific impact.