sknetwork-team / scikit-network

Graph Algorithms
Other
602 stars 67 forks source link

CVE-2007-4559 Patch #542

Closed TrellixVulnTeam closed 1 year ago

TrellixVulnTeam commented 1 year ago

Patching CVE-2007-4559

Hi, we are security researchers from the Advanced Research Center at Trellix. We have began a campaign to patch a widespread bug named CVE-2007-4559. CVE-2007-4559 is a 15 year old bug in the Python tarfile package. By using extract() or extractall() on a tarfile object without sanitizing input, a maliciously crafted .tar file could perform a directory path traversal attack. We found at least one unsantized extractall() in your codebase and are providing a patch for you via pull request. The patch essentially checks to see if all tarfile members will be extracted safely and throws an exception otherwise. We encourage you to use this patch or your own solution to secure against CVE-2007-4559. Further technical information about the vulnerability can be found in this blog.

If you have further questions you may contact us through this projects lead researcher Kasimir Schulz.

mclegrand commented 1 year ago

Given that these functions "download and extract" directly a file, we could be vulnerable here if someone either spoofs netset (hard, https) or konect (we use http so it only needs minor dns manipulation on the target's network); or manages to upload a malicious file there and convinces a user to "try sknetwork on it".

It could be safer to use the suggested mitigation (no heavy performance penalty afaict), but the proposed patch duplicates code so it should be refactored a bit

tbonald commented 1 year ago

Thanks for the patch. It has been included in the develop branch.