From e6285d34145e6a80dfd3bb69d6777373beb55c77 Mon Sep 17 00:00:00 2001 From: sns Date: Mon, 6 Aug 2018 13:44:24 +0530 Subject: [PATCH] Updated docs for XXE --- docs/resources/xxe1.png | Bin 0 -> 55659 bytes docs/resources/xxe2.png | Bin 0 -> 47157 bytes docs/solution/a4-xxe.md | 43 ++++++++++++++----- docs/solution/a8-insecure-deserialization.md | 4 +- 4 files changed, 33 insertions(+), 14 deletions(-) create mode 100644 docs/resources/xxe1.png create mode 100644 docs/resources/xxe2.png diff --git a/docs/resources/xxe1.png b/docs/resources/xxe1.png new file mode 100644 index 0000000000000000000000000000000000000000..82d9994ad08b1b9726f6630dc1309159612dc00e GIT binary patch literal 55659 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 C?bWmZ literal 0 HcmV?d00001 diff --git a/docs/resources/xxe2.png b/docs/resources/xxe2.png new file mode 100644 index 0000000000000000000000000000000000000000..44800e2eddad3bf4d01a4a2dc908d0c720f958c1 GIT binary patch literal 47157 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 +]> + + + Playstation 4 + 274 + gaming console + &bar; + + +``` -There is a SQL Injection in `User Search` feature at the following URL +The resulting product's description will have the contents of `/etc/passwd` -http://127.0.0.1:9090/app/usersearch +![xxe2](/resources/xxe2.png) **Vulnerable Code snippet** *core/appHandler.js* -``` +``` ... - +module.exports.bulkProducts = function(req, res) { + if (req.files.products && req.files.products.mimetype=='text/xml'){ + var products = libxmljs.parseXmlString(req.files.products.data.toString('utf8'), {noent:true,noblanks:true}) ... ``` + **Solution** +The XML parsing library used is `libxmljs` which allows for parsing external entities. We can disable parsing of external entities by modifying the flag value `noent` to `false`. *core/appHandler.js* ``` ... - +module.exports.bulkProducts = function(req, res) { + if (req.files.products && req.files.products.mimetype=='text/xml'){ + var products = libxmljs.parseXmlString(req.files.products.data.toString('utf8'), {noent:false,noblanks:true}) ... ``` -But it is recommended to explicitly validate/sanitize inputs - **Fixes** -Implemented in the following files +Implemented in the following file - *core/appHandler.js* **Recommendation** -- Validate Input before processing -- Sanitize Input before storing +- Ensure that External entity parsing is disabled +- If parsing is absoutely required, then validate the data before parsing **Reference** diff --git a/docs/solution/a8-insecure-deserialization.md b/docs/solution/a8-insecure-deserialization.md index 592e5ded..601ff4bd 100644 --- a/docs/solution/a8-insecure-deserialization.md +++ b/docs/solution/a8-insecure-deserialization.md @@ -1,8 +1,6 @@ # Insecure Deserialization -## Insecure Deserialization in XYZ - -There is a SQL Injection in `User Search` feature at the following URL +There input file to legacy bulk import feature does not securely deserialize the causing http://127.0.0.1:9090/app/usersearch