Avoid using unsanitized user input with sendFile Ce produit n'est pas pris en charge par le
site Datadog que vous avez sélectionné. (
).
Cette page n'est pas encore disponible en français, sa traduction est en cours.
Si vous avez des questions ou des retours sur notre projet de traduction actuel,
n'hésitez pas à nous contacter .
TRY THIS RULE ID: typescript-express/external-filename-upload
Language: TypeScript
Severity: Warning
Category: Security
CWE : 73
Description Using unsanitized user input in a sendFile method can allow attackers to access unintended resources.
Set the root option directly in your sendFile options will make this rule not report a violation.
Learn More Non-Compliant Code Examples app . post ( "/upload" , ( req : Request , res : Response ) => {
res . sendFile ( req . params . filename )
res . sendFile ( req . params . filename , { maxAge : 0 })
res . sendFile ( req . params . filename , { maxAge : 0 }, ( err ) => console . log ( err ))
})
Compliant Code Examples app . post ( "/upload" , ( req : Request , res : Response ) => {
res . sendFile ( "foo" )
const options = { maxAge : 0 , root : path.join ( __dirname , "upload" ) }
res . sendFile ( req . params . filename , options )
res . sendFile ( req . params . filename , { maxAge : 0 , root : path.join ( __dirname , "upload" ) })
res . sendFile ( req . params . filename , options , ( err ) => console . log ( err ))
res . sendFile ( req . params . filename , { maxAge : 0 , root : path.join ( __dirname , "upload" ) }, ( err ) => console . log ( err ))
})
Intégrations fluides. Essayez Datadog Code Security