java.insecure-jms-deserialization

返回列表 · CWE 索引

javaWARNING规则详情

各语言消息对照

语言消息
de

JMS-Object-Nachrichten stützen bei ObjectMessage.getObject() auf die Java-Serialisierung für das Marshalling/Unmarshalling der Nachrichtennutzdaten. Die Deserialisierung nicht vertrauenswürdiger Daten kann Sicherheitslücken öffnen; ein entfernter Angreifer könnte über eine präparierte JMS ObjectMessage beliebigen Code mit den Rechten der Anwendung ausführen, die JMS-Nachrichten entgegennimmt bzw. verarbeitet. Hier verarbeitet der JMS MessageListener einen ObjectMessage-Typ, der innerhalb der onMessage-Methode empfangen wird – der Aufruf von $Y.getObject kann so zu beliebiger Code-Ausführung führen.

en

JMS Object messages depend on Java Serialization for marshalling/unmarshalling of the message payload when ObjectMessage.getObject() is called. Deserialization of untrusted data can lead to security flaws; a remote attacker could via a crafted JMS ObjectMessage to execute arbitrary code with the permissions of the application listening/consuming JMS Messages. In this case, the JMS MessageListener consume an ObjectMessage type received inside the onMessage method, which may lead to arbitrary code execution when calling the $Y.getObject method.

fr

Les messages JMS Object reposent sur la sérialisation Java pour le marshall/unmarshall de la charge du message lors de l'appel à ObjectMessage.getObject(). La désérialisation de données non fiables peut créer des failles : un attaquant distant peut, via un JMS ObjectMessage forgé, exécuter du code arbitraire avec les permissions de l'application qui écoute/consomme les messages JMS. Ici, le MessageListener consomme un ObjectMessage dans la méthode onMessage, et l'appel à $Y.getObject peut déclencher une exécution de code arbitraire.

ja

JMS Object メッセージは、ObjectMessage.getObject() の呼び出し時に、メッセージペイロードの処理を Java シリアライズに依存しています。信頼できないデータをデシリアライズするとセキュリティ上の欠陥につながります:リモートの攻撃者は、細工された JMS ObjectMessage を通じて、JMS メッセージをリスン/消費するアプリケーションの権限で任意のコードを実行できてしまいます。ここでは MessageListener が onMessage 内で ObjectMessage を消費しており、$Y.getObject の呼び出し時に任意のコード実行が引き起こされる恐れがあります。

ko

JMS Object 메시지는 ObjectMessage.getObject()를 호출할 때 메시지 페이로드를 처리하는 데 Java 직렬화에 의존합니다. 신뢰할 수 없는 데이터를 역직렬화하면 보안 결함이 발생합니다: 원격 공격자는 조작된 JMS ObjectMessage를 통해 JMS 메시지를 수신/소비하는 애플리케이션의 권한으로 임의 코드를 실행할 수 있습니다. 여기서 MessageListener는 onMessage에서 ObjectMessage를 소비하며, $Y.getObject를 호출할 때 임의 코드 실행이 트리거될 수 있습니다.

ru

Сообщения JMS Object при вызове ObjectMessage.getObject() полагаются на сериализацию Java для сборки и разборки полезной нагрузки. Десериализация недоверенных данных ведёт к уязвимостям: удалённый злоумышленник может через специально собранное JMS ObjectMessage выполнить произвольный код с правами приложения, слушающего и потребляющего JMS-сообщения. Здесь MessageListener потребляет ObjectMessage в методе onMessage, и вызов $Y.getObject может привести к выполнению произвольного кода.

zh

JMS Object 消息在调用 ObjectMessage.getObject() 时依赖 Java 序列化来编排消息载荷。反序列化不可信数据会导致安全缺陷:远程攻击者可通过构造的 JMS ObjectMessage,以监听/消费 JMS 消息的应用权限执行任意代码。此处 MessageListener 在 onMessage 中消费 ObjectMessage,调用 $Y.getObject 时可能触发任意代码执行。

zh-Hant

JMS Object 訊息在呼叫 ObjectMessage.getObject() 時依賴 Java 序列化來編排訊息酬載。還原序列化不可信資料會導致安全缺陷:遠端攻擊者可透過建構的 JMS ObjectMessage,以監聽/消費 JMS 訊息的應用權限執行任意程式碼。此處 MessageListener 在 onMessage 中消費 ObjectMessage,呼叫 $Y.getObject 時可能觸發任意程式碼執行。

CWE 知识卡

语言名称修复建议
deUnsichere DeserialisierungDeserialisieren Sie nicht vertrauenswürdige Daten nicht mit nativen Verfahren (pickle/unserialize/yaml.load); wechseln Sie zu sicheren Formaten wie JSON und prüfen Sie gegen ein Schema.
en——
frDésérialisation de données non fiablesInterdisez la désérialisation native de données non fiables (pickle/unserialize/yaml.load) ; préférez des formats sûrs comme JSON avec validation de schéma.
ja安全でないデシリアライゼーション信頼できないデータに対してネイティブなデシリアライズ(pickle/unserialize/yaml.load)を使用しないでください。JSON などの安全な形式に切り替え、schema 検証を行います。
ko안전하지 않은 역직렬화신뢰할 수 없는 데이터에 네이티브 역직렬화(pickle/unserialize/yaml.load)를 사용하지 마십시오. JSON 등 안전한 형식으로 전환하고 schema 검증을 수행하십시오.
ruНебезопасная десериализацияЗапрещена нативная десериализация недоверенных данных (pickle/unserialize/yaml.load); используйте безопасные форматы вроде JSON с проверкой по схеме.
zh不安全的反序列化禁止对不可信数据使用原生反序列化(pickle/unserialize/yaml.load);改用 JSON 等安全格式并做 schema 校验。
zh-Hant不安全的還原序列化禁止對不可信資料使用原生還原序列化(pickle/unserialize/yaml.load);改用 JSON 等安全格式並做 schema 驗證。

OWASP

A08:2017 - Insecure DeserializationA08:2021 - Software and Data Integrity Failures

元数据

likelihoodLOW
impactMEDIUM
confidenceMEDIUM

修复字段

fix无
fix-regex无

上游规则源

github.com/opengrep/opengrep-rules/tree/main/java/lang/security/insecure-jms-deserialization.yaml