Ejecuta análisis estático (SAST) sobre el código buscando el patrón inseguro en el flujo de datos.
EJB Bad Practices: Use of Sockets
This vulnerability occurs when an Enterprise JavaBeans (EJB) component breaks the EJB specification by directly creating or using network sockets.
What is CWE-577?
Real-world CVEs caused by CWE-577
Todavía no hay CVEs públicos enlazados a esta CWE en el catálogo de MITRE.
Ruta del atacante paso a paso
- 1
The following Java example is a simple stateless Enterprise JavaBean that retrieves stock symbols and stock values. The Enterprise JavaBean creates a socket and listens for and accepts connections from clients on the socket.
- 2
And the following Java example is similar to the previous example but demonstrates the use of multicast socket connections within an Enterprise JavaBean.
- 3
The previous two examples within any type of Enterprise JavaBean violate the EJB specification by attempting to listen on a socket, accepting connections on a socket, or using a socket for multicast.
Vulnerable Java
The following Java example is a simple stateless Enterprise JavaBean that retrieves stock symbols and stock values. The Enterprise JavaBean creates a socket and listens for and accepts connections from clients on the socket.
@Stateless
public class StockSymbolBean implements StockSymbolRemote {
ServerSocket serverSocket = null;
Socket clientSocket = null;
public StockSymbolBean() {
try {
serverSocket = new ServerSocket(Constants.SOCKET_PORT);
} catch (IOException ex) {...}
try {
clientSocket = serverSocket.accept();
} catch (IOException e) {...}
}
public String getStockSymbol(String name) {...}
public BigDecimal getStockValue(String symbol) {...}
private void processClientInputFromSocket() {...}
} Secure pseudo
// Validate, sanitize, or use a safe API before reaching the sink.
function handleRequest(input) {
const safe = validateAndEscape(input);
return executeWithGuards(safe);
} How to prevent CWE-577
- Architecture and Design / Implementation Do not use Sockets when writing EJBs.
How to detect CWE-577
Ejecuta pruebas dinámicas de seguridad de aplicaciones (DAST) contra el endpoint en vivo.
Vigila los logs en tiempo de ejecución para detectar trazas de excepción inusuales, entradas malformadas o intentos de bypass de autorización.
Revisión de código: marca cualquier código nuevo que maneje entrada desde esta superficie sin usar los helpers validados del framework.
Plexicus detecta automáticamente CWE-577 y abre un PR de corrección en menos de 60 segundos.
Codex Remedium escanea cada commit, identifica esta debilidad concreta y entrega un pull request listo para revisión con el parche. Sin tickets. Sin traspasos.
Frequently asked questions
¿Qué es CWE-577?
This vulnerability occurs when an Enterprise JavaBeans (EJB) component breaks the EJB specification by directly creating or using network sockets.
¿Qué gravedad tiene CWE-577?
MITRE no ha publicado una calificación de probabilidad de explotación para esta debilidad. Trátala como de impacto medio hasta que tu modelo de amenazas demuestre lo contrario.
¿Qué lenguajes o plataformas se ven afectados por CWE-577?
MITRE lists the following affected platforms: Java.
¿Cómo puedo prevenir CWE-577?
Do not use Sockets when writing EJBs.
¿Cómo detecta y corrige Plexicus CWE-577?
El motor SAST de Plexicus detecta la firma de flujo de datos para CWE-577 en cada commit. Cuando hay coincidencia, nuestro agente Codex Remedium abre un PR de corrección con el código corregido, las pruebas y un resumen de una línea para el revisor.
¿Dónde puedo aprender más sobre CWE-577?
MITRE publica la definición canónica en https://cwe.mitre.org/data/definitions/577.html. También puedes consultar la documentación de OWASP y NIST para guías relacionadas.
Weaknesses related to CWE-577
Improper Following of Specification by Caller
This weakness occurs when software fails to properly follow the documented rules, protocols, or requirements of an external component it…
Struts: Incomplete validate() Method Definition
This vulnerability occurs in a Struts application when a validator form either completely omits a validate() method or includes one but…
Struts: Form Bean Does Not Extend Validation Class
This vulnerability occurs in Apache Struts applications when a form bean class does not properly extend the framework's validation class.…
Creation of chroot Jail Without Changing Working Directory
This vulnerability occurs when a program creates a chroot jail but fails to change its current working directory afterward. Because the…
Incorrect Check of Function Return Value
This vulnerability occurs when a program misinterprets or improperly validates the return value from a function, causing it to miss…
Improper Following of a Certificate's Chain of Trust
This vulnerability occurs when software fails to properly validate the entire certificate chain back to a trusted root authority. This…
Missing Critical Step in Authentication
This vulnerability occurs when a software authentication process omits a required step, weakening its overall security.
Missing Cryptographic Step
This vulnerability occurs when a software implementation skips a critical step in a cryptographic process, resulting in security that is…
Generation of Predictable IV with CBC Mode
This vulnerability occurs when software uses a predictable or reused Initialization Vector (IV) with Cipher Block Chaining (CBC) mode…
Deja de pagar por desarrollador.
Empieza a cerrar el bucle.
Plexicus es el ASPM nativo de IA que escanea, filtra, corrige, pentestea y explica — de forma autónoma. Desarrolladores ilimitados, repos ilimitados, acciones de IA de uso justo. Nivel gratuito real, €269/mo anual cuando estés listo.