Skip to content

Commit ff1e8a5

Browse files
JLLeitschuhTeamModerne
authored andcommitted
vuln-fix: Temporary File Information Disclosure
This fixes temporary file information disclosure vulnerability due to the use of the vulnerable `File.createTempFile()` method. The vulnerability is fixed by using the `Files.createTempFile()` method which sets the correct posix permissions. Weakness: CWE-377: Insecure Temporary File Severity: Medium CVSSS: 5.5 Detection: CodeQL & OpenRewrite (https://public.moderne.io/recipes/org.openrewrite.java.security.SecureTempFileCreation) Reported-by: Jonathan Leitschuh <[email protected]> Signed-off-by: Jonathan Leitschuh <[email protected]> Bug-tracker: JLLeitschuh/security-research#18 Co-authored-by: Moderne <[email protected]>
1 parent 7efb92f commit ff1e8a5

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

src/main/java/org/apache/maven/plugins/checkstyle/CheckstyleViolationCheckMojo.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
import java.io.IOException;
2828
import java.io.OutputStream;
2929
import java.io.Reader;
30+
import java.nio.file.Files;
3031
import java.util.ArrayList;
3132
import java.util.Collections;
3233
import java.util.List;
@@ -855,7 +856,7 @@ else if ( "plain".equals( outputFileFormat ) )
855856
{
856857
// Write a plain output file to the standard output file,
857858
// and write an XML output file to the temp directory that can be used to count violations
858-
outputXmlFile = File.createTempFile( "checkstyle-result", ".xml" );
859+
outputXmlFile = Files.createTempFile( "checkstyle-result", ".xml" ).toFile();
859860
outputXmlFile.deleteOnExit();
860861
OutputStream xmlOut = getOutputStream( outputXmlFile );
861862
CompositeAuditListener compoundListener = new CompositeAuditListener();

0 commit comments

Comments
 (0)