Skip to content

Conversation

mbaluda
Copy link
Contributor

@mbaluda mbaluda commented Jul 21, 2024

@mbaluda mbaluda self-assigned this Jul 21, 2024

for (var entryPath in zipArchive) {
var targetFilePath = require("path").join(targetFolderName, entryPath)
require("fs").createWriteStream(targetFilePath).write(zip[entryPath]);

Check failure

Code scanning / CodeQL

XSJS Zip Slip

The path of [this zip file](1) being saved depends on a [user-provided value](2).
function test1(requestParameters) {
let someParameterValue = requestParameters.get("someParameter");
$.response.status = $.net.http.OK;
$.response.headers.set("location", someParameterValue);

Check warning

Code scanning / CodeQL

XSJS URL Redirect

[This URL](1) depends on a [user-provided value](2).
let query = "INSERT INTO " + someParameterValue1 + ".ENTITY (COL1) VALUES (" + someParameterValue2 + ")";

let dbConnection = $.db.getConnection();
let preparedStatement = dbConnection.prepareStatement(query);

Check failure

Code scanning / CodeQL

XSJS SQL injection

This query depends on a [user-provided value](1). This query depends on a [user-provided value](2).
function test1(requestParameters) {
let someParameterValue1 = requestParameters.get("someParameter1");
$.response.contentType = "text/html";
$.response.setBody(requestParameterHandler(someParameterValue1));

Check failure

Code scanning / CodeQL

XSJS Reflected XSS

Reflected XSS vulnerability due to [user-provided value](1).
@mbaluda mbaluda requested a review from jeongsoolee09 July 21, 2024 10:52
@jeongsoolee09
Copy link
Contributor

@mbaluda Thanks a lot! Can you change the toplevel folder name (javascript/frameworks/XSJS) to lowercase (javascript/frameworks/xsjs) to match the name of other framework folders?


for (var entryPath in zipArchive) {
var targetFilePath = require("path").join(targetFolderName, entryPath)
require("fs").createWriteStream(targetFilePath).write(zip[entryPath]);

Check failure

Code scanning / CodeQL

XSJS Zip Slip

The path of [this zip file](1) being saved depends on a [user-provided value](2).
function test1(requestParameters) {
let someParameterValue = requestParameters.get("someParameter");
$.response.status = $.net.http.OK;
$.response.headers.set("location", someParameterValue);

Check warning

Code scanning / CodeQL

XSJS URL Redirect

[This URL](1) depends on a [user-provided value](2).
let query = "INSERT INTO " + someParameterValue1 + ".ENTITY (COL1) VALUES (" + someParameterValue2 + ")";

let dbConnection = $.db.getConnection();
let preparedStatement = dbConnection.prepareStatement(query);

Check failure

Code scanning / CodeQL

XSJS SQL injection

This query depends on a [user-provided value](1). This query depends on a [user-provided value](2).
function test1(requestParameters) {
let someParameterValue1 = requestParameters.get("someParameter1");
$.response.contentType = "text/html";
$.response.setBody(requestParameterHandler(someParameterValue1));

Check failure

Code scanning / CodeQL

XSJS Reflected XSS

Reflected XSS vulnerability due to [user-provided value](1).
Copy link
Contributor

@jeongsoolee09 jeongsoolee09 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

:shipit:

@jeongsoolee09 jeongsoolee09 merged commit 1e27135 into main Jul 24, 2024
@jeongsoolee09 jeongsoolee09 deleted the mbaluda/xsjs branch July 24, 2024 23:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants