98 lines
1.8 KiB
Plaintext

include::../description.adoc[]
include::../ask-yourself.adoc[]
include::../recommended.adoc[]
== Sensitive Code Example
Node.js https://nodejs.org/api/fs.html[``++fs++``]
----
const fs = require('fs');
fs.chmodSync("/tmp/fs", 0o777); // Sensitive
----
----
const fs = require('fs');
const fsPromises = fs.promises;
fsPromises.chmod("/tmp/fsPromises", 0o777); // Sensitive
----
----
const fs = require('fs');
const fsPromises = fs.promises
async function fileHandler() {
let filehandle;
try {
filehandle = fsPromises.open('/tmp/fsPromises', 'r');
filehandle.chmod(0o777); // Sensitive
} finally {
if (filehandle !== undefined)
filehandle.close();
}
}
----
Node.js https://nodejs.org/api/process.html#process_process_umask_mask[``++process.umask++``]
----
const process = require('process');
process.umask(0o000); // Sensitive
----
== Compliant Solution
Node.js https://nodejs.org/api/fs.html[``++fs++``]
----
const fs = require('fs');
fs.chmodSync("/tmp/fs", 0o770); // Compliant
----
----
const fs = require('fs');
const fsPromises = fs.promises;
fsPromises.chmod("/tmp/fsPromises", 0o770); // Compliant
----
----
const fs = require('fs');
const fsPromises = fs.promises
async function fileHandler() {
let filehandle;
try {
filehandle = fsPromises.open('/tmp/fsPromises', 'r');
filehandle.chmod(0o770); // Compliant
} finally {
if (filehandle !== undefined)
filehandle.close();
}
}
----
Node.js https://nodejs.org/api/process.html#process_process_umask_mask[``++process.umask++``]
----
const process = require('process');
process.umask(0o007); // Compliant
----
include::../see.adoc[]
ifdef::env-github,rspecator-view[]
'''
== Comments And Links
(visible only on this page)
include::../comments-and-links.adoc[]
endif::env-github,rspecator-view[]