fix a bug,modularize

This commit is contained in:
amammad
2023-10-11 12:04:11 +02:00
parent 90017712a6
commit 609bb762fe
5 changed files with 364 additions and 288 deletions

View File

@@ -1,87 +1,114 @@
edges
| gzipBombs.rb:2:1:2:9 | gzip_path | gzipBombs.rb:3:1:3:32 | call to open |
| gzipBombs.rb:2:1:2:9 | gzip_path | gzipBombs.rb:4:1:6:3 | call to open |
| gzipBombs.rb:2:1:2:9 | gzip_path | gzipBombs.rb:7:1:11:3 | call to open |
| gzipBombs.rb:2:1:2:9 | gzip_path | gzipBombs.rb:12:20:12:51 | call to open |
| gzipBombs.rb:2:1:2:9 | gzip_path | gzipBombs.rb:17:1:17:48 | call to new |
| gzipBombs.rb:2:1:2:9 | gzip_path | gzipBombs.rb:18:1:18:48 | call to new |
| gzipBombs.rb:2:1:2:9 | gzip_path | gzipBombs.rb:22:1:22:38 | call to zcat |
| gzipBombs.rb:2:13:2:29 | "Path/To/bomb.gz" | gzipBombs.rb:2:1:2:9 | gzip_path |
| gzipBombs.rb:17:22:17:47 | call to open | gzipBombs.rb:17:1:17:48 | call to new |
| gzipBombs.rb:18:22:18:47 | call to open | gzipBombs.rb:18:1:18:48 | call to new |
| gzipBombs.rb:22:23:22:37 | call to open | gzipBombs.rb:22:1:22:38 | call to zcat |
| zipBombs.rb:2:1:2:12 | zipfile_path | zipBombs.rb:3:1:8:3 | call to open |
| zipBombs.rb:2:1:2:12 | zipfile_path | zipBombs.rb:9:1:11:3 | call to open |
| zipBombs.rb:2:1:2:12 | zipfile_path | zipBombs.rb:12:9:12:43 | call to open |
| zipBombs.rb:2:1:2:12 | zipfile_path | zipBombs.rb:14:1:14:40 | call to read |
| zipBombs.rb:2:1:2:12 | zipfile_path | zipBombs.rb:15:1:15:49 | call to extract |
| zipBombs.rb:2:1:2:12 | zipfile_path | zipBombs.rb:29:27:29:38 | zipfile_path |
| zipBombs.rb:2:1:2:12 | zipfile_path | zipBombs.rb:48:6:48:32 | call to read |
| zipBombs.rb:2:1:2:12 | zipfile_path | zipBombs.rb:50:27:50:38 | zipfile_path |
| zipBombs.rb:2:16:2:33 | "Path/To/bomb.zip" | zipBombs.rb:2:1:2:12 | zipfile_path |
| zipBombs.rb:29:27:29:38 | zipfile_path | zipBombs.rb:31:3:31:15 | call to extract |
| zipBombs.rb:29:27:29:38 | zipfile_path | zipBombs.rb:32:3:32:29 | call to read |
| zipBombs.rb:50:27:50:38 | zipfile_path | zipBombs.rb:52:3:52:29 | call to read |
| gzipBombs.rb:4:3:4:11 | gzip_path | gzipBombs.rb:6:25:6:33 | gzip_path |
| gzipBombs.rb:4:15:4:20 | call to params | gzipBombs.rb:4:15:4:27 | ...[...] |
| gzipBombs.rb:4:15:4:27 | ...[...] | gzipBombs.rb:4:3:4:11 | gzip_path |
| gzipBombs.rb:6:25:6:33 | gzip_path | gzipBombs.rb:6:3:6:34 | call to open |
| gzipBombs.rb:6:25:6:33 | gzip_path | gzipBombs.rb:7:25:7:33 | gzip_path |
| gzipBombs.rb:7:25:7:33 | gzip_path | gzipBombs.rb:7:3:9:5 | call to open |
| gzipBombs.rb:7:25:7:33 | gzip_path | gzipBombs.rb:10:25:10:33 | gzip_path |
| gzipBombs.rb:10:25:10:33 | gzip_path | gzipBombs.rb:10:3:14:5 | call to open |
| gzipBombs.rb:10:25:10:33 | gzip_path | gzipBombs.rb:15:44:15:52 | gzip_path |
| gzipBombs.rb:15:44:15:52 | gzip_path | gzipBombs.rb:15:22:15:53 | call to open |
| gzipBombs.rb:15:44:15:52 | gzip_path | gzipBombs.rb:20:34:20:42 | gzip_path |
| gzipBombs.rb:20:24:20:49 | call to open | gzipBombs.rb:20:3:20:50 | call to new |
| gzipBombs.rb:20:34:20:42 | gzip_path | gzipBombs.rb:20:24:20:49 | call to open |
| gzipBombs.rb:20:34:20:42 | gzip_path | gzipBombs.rb:21:34:21:42 | gzip_path |
| gzipBombs.rb:21:24:21:49 | call to open | gzipBombs.rb:21:3:21:50 | call to new |
| gzipBombs.rb:21:34:21:42 | gzip_path | gzipBombs.rb:21:24:21:49 | call to open |
| gzipBombs.rb:21:34:21:42 | gzip_path | gzipBombs.rb:25:30:25:38 | gzip_path |
| gzipBombs.rb:25:25:25:39 | call to open | gzipBombs.rb:25:3:25:40 | call to zcat |
| gzipBombs.rb:25:30:25:38 | gzip_path | gzipBombs.rb:25:25:25:39 | call to open |
| zipBombs.rb:4:3:4:14 | zipfile_path | zipBombs.rb:6:25:6:36 | zipfile_path |
| zipBombs.rb:4:18:4:23 | call to params | zipBombs.rb:4:18:4:30 | ...[...] |
| zipBombs.rb:4:18:4:30 | ...[...] | zipBombs.rb:4:3:4:14 | zipfile_path |
| zipBombs.rb:6:25:6:36 | zipfile_path | zipBombs.rb:6:3:11:5 | call to open |
| zipBombs.rb:6:25:6:36 | zipfile_path | zipBombs.rb:12:25:12:36 | zipfile_path |
| zipBombs.rb:12:25:12:36 | zipfile_path | zipBombs.rb:12:3:14:5 | call to open |
| zipBombs.rb:12:25:12:36 | zipfile_path | zipBombs.rb:15:33:15:44 | zipfile_path |
| zipBombs.rb:15:33:15:44 | zipfile_path | zipBombs.rb:15:11:15:45 | call to open |
| zipBombs.rb:15:33:15:44 | zipfile_path | zipBombs.rb:17:18:17:29 | zipfile_path |
| zipBombs.rb:17:18:17:29 | zipfile_path | zipBombs.rb:17:3:17:42 | call to read |
| zipBombs.rb:17:18:17:29 | zipfile_path | zipBombs.rb:18:18:18:29 | zipfile_path |
| zipBombs.rb:18:18:18:29 | zipfile_path | zipBombs.rb:18:3:18:51 | call to extract |
| zipBombs.rb:18:18:18:29 | zipfile_path | zipBombs.rb:20:18:20:29 | zipfile_path |
| zipBombs.rb:20:18:20:29 | zipfile_path | zipBombs.rb:28:7:28:33 | call to read |
| zipBombs.rb:20:18:20:29 | zipfile_path | zipBombs.rb:32:29:32:40 | zipfile_path |
| zipBombs.rb:32:29:32:40 | zipfile_path | zipBombs.rb:34:5:34:17 | call to extract |
| zipBombs.rb:32:29:32:40 | zipfile_path | zipBombs.rb:35:5:35:31 | call to read |
| zipBombs.rb:32:29:32:40 | zipfile_path | zipBombs.rb:39:18:39:29 | zipfile_path |
| zipBombs.rb:39:18:39:29 | zipfile_path | zipBombs.rb:41:7:41:31 | call to read |
| zipBombs.rb:39:18:39:29 | zipfile_path | zipBombs.rb:42:7:42:19 | call to extract |
| zipBombs.rb:39:18:39:29 | zipfile_path | zipBombs.rb:46:10:46:36 | call to read |
| zipBombs.rb:39:18:39:29 | zipfile_path | zipBombs.rb:49:29:49:40 | zipfile_path |
| zipBombs.rb:49:29:49:40 | zipfile_path | zipBombs.rb:51:8:51:34 | call to read |
| zipBombs.rb:49:29:49:40 | zipfile_path | zipBombs.rb:53:29:53:40 | zipfile_path |
| zipBombs.rb:53:29:53:40 | zipfile_path | zipBombs.rb:55:5:55:31 | call to read |
nodes
| gzipBombs.rb:2:1:2:9 | gzip_path | semmle.label | gzip_path |
| gzipBombs.rb:2:13:2:29 | "Path/To/bomb.gz" | semmle.label | "Path/To/bomb.gz" |
| gzipBombs.rb:3:1:3:32 | call to open | semmle.label | call to open |
| gzipBombs.rb:4:1:6:3 | call to open | semmle.label | call to open |
| gzipBombs.rb:7:1:11:3 | call to open | semmle.label | call to open |
| gzipBombs.rb:12:20:12:51 | call to open | semmle.label | call to open |
| gzipBombs.rb:17:1:17:48 | call to new | semmle.label | call to new |
| gzipBombs.rb:17:22:17:47 | call to open | semmle.label | call to open |
| gzipBombs.rb:18:1:18:48 | call to new | semmle.label | call to new |
| gzipBombs.rb:18:22:18:47 | call to open | semmle.label | call to open |
| gzipBombs.rb:22:1:22:38 | call to zcat | semmle.label | call to zcat |
| gzipBombs.rb:22:23:22:37 | call to open | semmle.label | call to open |
| zipBombs.rb:2:1:2:12 | zipfile_path | semmle.label | zipfile_path |
| zipBombs.rb:2:16:2:33 | "Path/To/bomb.zip" | semmle.label | "Path/To/bomb.zip" |
| zipBombs.rb:3:1:8:3 | call to open | semmle.label | call to open |
| zipBombs.rb:9:1:11:3 | call to open | semmle.label | call to open |
| zipBombs.rb:12:9:12:43 | call to open | semmle.label | call to open |
| zipBombs.rb:14:1:14:40 | call to read | semmle.label | call to read |
| zipBombs.rb:15:1:15:49 | call to extract | semmle.label | call to extract |
| zipBombs.rb:29:27:29:38 | zipfile_path | semmle.label | zipfile_path |
| zipBombs.rb:31:3:31:15 | call to extract | semmle.label | call to extract |
| zipBombs.rb:32:3:32:29 | call to read | semmle.label | call to read |
| zipBombs.rb:48:6:48:32 | call to read | semmle.label | call to read |
| zipBombs.rb:50:27:50:38 | zipfile_path | semmle.label | zipfile_path |
| zipBombs.rb:52:3:52:29 | call to read | semmle.label | call to read |
| gzipBombs.rb:4:3:4:11 | gzip_path | semmle.label | gzip_path |
| gzipBombs.rb:4:15:4:20 | call to params | semmle.label | call to params |
| gzipBombs.rb:4:15:4:27 | ...[...] | semmle.label | ...[...] |
| gzipBombs.rb:6:3:6:34 | call to open | semmle.label | call to open |
| gzipBombs.rb:6:25:6:33 | gzip_path | semmle.label | gzip_path |
| gzipBombs.rb:7:3:9:5 | call to open | semmle.label | call to open |
| gzipBombs.rb:7:25:7:33 | gzip_path | semmle.label | gzip_path |
| gzipBombs.rb:10:3:14:5 | call to open | semmle.label | call to open |
| gzipBombs.rb:10:25:10:33 | gzip_path | semmle.label | gzip_path |
| gzipBombs.rb:15:22:15:53 | call to open | semmle.label | call to open |
| gzipBombs.rb:15:44:15:52 | gzip_path | semmle.label | gzip_path |
| gzipBombs.rb:20:3:20:50 | call to new | semmle.label | call to new |
| gzipBombs.rb:20:24:20:49 | call to open | semmle.label | call to open |
| gzipBombs.rb:20:34:20:42 | gzip_path | semmle.label | gzip_path |
| gzipBombs.rb:21:3:21:50 | call to new | semmle.label | call to new |
| gzipBombs.rb:21:24:21:49 | call to open | semmle.label | call to open |
| gzipBombs.rb:21:34:21:42 | gzip_path | semmle.label | gzip_path |
| gzipBombs.rb:25:3:25:40 | call to zcat | semmle.label | call to zcat |
| gzipBombs.rb:25:25:25:39 | call to open | semmle.label | call to open |
| gzipBombs.rb:25:30:25:38 | gzip_path | semmle.label | gzip_path |
| zipBombs.rb:4:3:4:14 | zipfile_path | semmle.label | zipfile_path |
| zipBombs.rb:4:18:4:23 | call to params | semmle.label | call to params |
| zipBombs.rb:4:18:4:30 | ...[...] | semmle.label | ...[...] |
| zipBombs.rb:6:3:11:5 | call to open | semmle.label | call to open |
| zipBombs.rb:6:25:6:36 | zipfile_path | semmle.label | zipfile_path |
| zipBombs.rb:12:3:14:5 | call to open | semmle.label | call to open |
| zipBombs.rb:12:25:12:36 | zipfile_path | semmle.label | zipfile_path |
| zipBombs.rb:15:11:15:45 | call to open | semmle.label | call to open |
| zipBombs.rb:15:33:15:44 | zipfile_path | semmle.label | zipfile_path |
| zipBombs.rb:17:3:17:42 | call to read | semmle.label | call to read |
| zipBombs.rb:17:18:17:29 | zipfile_path | semmle.label | zipfile_path |
| zipBombs.rb:18:3:18:51 | call to extract | semmle.label | call to extract |
| zipBombs.rb:18:18:18:29 | zipfile_path | semmle.label | zipfile_path |
| zipBombs.rb:20:18:20:29 | zipfile_path | semmle.label | zipfile_path |
| zipBombs.rb:28:7:28:33 | call to read | semmle.label | call to read |
| zipBombs.rb:32:29:32:40 | zipfile_path | semmle.label | zipfile_path |
| zipBombs.rb:34:5:34:17 | call to extract | semmle.label | call to extract |
| zipBombs.rb:35:5:35:31 | call to read | semmle.label | call to read |
| zipBombs.rb:39:18:39:29 | zipfile_path | semmle.label | zipfile_path |
| zipBombs.rb:41:7:41:31 | call to read | semmle.label | call to read |
| zipBombs.rb:42:7:42:19 | call to extract | semmle.label | call to extract |
| zipBombs.rb:46:10:46:36 | call to read | semmle.label | call to read |
| zipBombs.rb:49:29:49:40 | zipfile_path | semmle.label | zipfile_path |
| zipBombs.rb:51:8:51:34 | call to read | semmle.label | call to read |
| zipBombs.rb:53:29:53:40 | zipfile_path | semmle.label | zipfile_path |
| zipBombs.rb:55:5:55:31 | call to read | semmle.label | call to read |
subpaths
#select
| gzipBombs.rb:3:1:3:32 | call to open | gzipBombs.rb:2:13:2:29 | "Path/To/bomb.gz" | gzipBombs.rb:3:1:3:32 | call to open | This file extraction depends on a $@. | gzipBombs.rb:2:13:2:29 | "Path/To/bomb.gz" | potentially untrusted source |
| gzipBombs.rb:3:1:3:32 | call to open | gzipBombs.rb:3:1:3:32 | call to open | gzipBombs.rb:3:1:3:32 | call to open | This file extraction depends on a $@. | gzipBombs.rb:3:1:3:32 | call to open | potentially untrusted source |
| gzipBombs.rb:4:1:6:3 | call to open | gzipBombs.rb:2:13:2:29 | "Path/To/bomb.gz" | gzipBombs.rb:4:1:6:3 | call to open | This file extraction depends on a $@. | gzipBombs.rb:2:13:2:29 | "Path/To/bomb.gz" | potentially untrusted source |
| gzipBombs.rb:4:1:6:3 | call to open | gzipBombs.rb:4:1:6:3 | call to open | gzipBombs.rb:4:1:6:3 | call to open | This file extraction depends on a $@. | gzipBombs.rb:4:1:6:3 | call to open | potentially untrusted source |
| gzipBombs.rb:7:1:11:3 | call to open | gzipBombs.rb:2:13:2:29 | "Path/To/bomb.gz" | gzipBombs.rb:7:1:11:3 | call to open | This file extraction depends on a $@. | gzipBombs.rb:2:13:2:29 | "Path/To/bomb.gz" | potentially untrusted source |
| gzipBombs.rb:7:1:11:3 | call to open | gzipBombs.rb:7:1:11:3 | call to open | gzipBombs.rb:7:1:11:3 | call to open | This file extraction depends on a $@. | gzipBombs.rb:7:1:11:3 | call to open | potentially untrusted source |
| gzipBombs.rb:12:20:12:51 | call to open | gzipBombs.rb:2:13:2:29 | "Path/To/bomb.gz" | gzipBombs.rb:12:20:12:51 | call to open | This file extraction depends on a $@. | gzipBombs.rb:2:13:2:29 | "Path/To/bomb.gz" | potentially untrusted source |
| gzipBombs.rb:12:20:12:51 | call to open | gzipBombs.rb:12:20:12:51 | call to open | gzipBombs.rb:12:20:12:51 | call to open | This file extraction depends on a $@. | gzipBombs.rb:12:20:12:51 | call to open | potentially untrusted source |
| gzipBombs.rb:17:1:17:48 | call to new | gzipBombs.rb:2:13:2:29 | "Path/To/bomb.gz" | gzipBombs.rb:17:1:17:48 | call to new | This file extraction depends on a $@. | gzipBombs.rb:2:13:2:29 | "Path/To/bomb.gz" | potentially untrusted source |
| gzipBombs.rb:17:1:17:48 | call to new | gzipBombs.rb:17:1:17:48 | call to new | gzipBombs.rb:17:1:17:48 | call to new | This file extraction depends on a $@. | gzipBombs.rb:17:1:17:48 | call to new | potentially untrusted source |
| gzipBombs.rb:17:1:17:48 | call to new | gzipBombs.rb:17:22:17:47 | call to open | gzipBombs.rb:17:1:17:48 | call to new | This file extraction depends on a $@. | gzipBombs.rb:17:22:17:47 | call to open | potentially untrusted source |
| gzipBombs.rb:18:1:18:48 | call to new | gzipBombs.rb:2:13:2:29 | "Path/To/bomb.gz" | gzipBombs.rb:18:1:18:48 | call to new | This file extraction depends on a $@. | gzipBombs.rb:2:13:2:29 | "Path/To/bomb.gz" | potentially untrusted source |
| gzipBombs.rb:18:1:18:48 | call to new | gzipBombs.rb:18:1:18:48 | call to new | gzipBombs.rb:18:1:18:48 | call to new | This file extraction depends on a $@. | gzipBombs.rb:18:1:18:48 | call to new | potentially untrusted source |
| gzipBombs.rb:18:1:18:48 | call to new | gzipBombs.rb:18:22:18:47 | call to open | gzipBombs.rb:18:1:18:48 | call to new | This file extraction depends on a $@. | gzipBombs.rb:18:22:18:47 | call to open | potentially untrusted source |
| gzipBombs.rb:22:1:22:38 | call to zcat | gzipBombs.rb:2:13:2:29 | "Path/To/bomb.gz" | gzipBombs.rb:22:1:22:38 | call to zcat | This file extraction depends on a $@. | gzipBombs.rb:2:13:2:29 | "Path/To/bomb.gz" | potentially untrusted source |
| gzipBombs.rb:22:1:22:38 | call to zcat | gzipBombs.rb:22:1:22:38 | call to zcat | gzipBombs.rb:22:1:22:38 | call to zcat | This file extraction depends on a $@. | gzipBombs.rb:22:1:22:38 | call to zcat | potentially untrusted source |
| gzipBombs.rb:22:1:22:38 | call to zcat | gzipBombs.rb:22:23:22:37 | call to open | gzipBombs.rb:22:1:22:38 | call to zcat | This file extraction depends on a $@. | gzipBombs.rb:22:23:22:37 | call to open | potentially untrusted source |
| zipBombs.rb:3:1:8:3 | call to open | zipBombs.rb:2:16:2:33 | "Path/To/bomb.zip" | zipBombs.rb:3:1:8:3 | call to open | This file extraction depends on a $@. | zipBombs.rb:2:16:2:33 | "Path/To/bomb.zip" | potentially untrusted source |
| zipBombs.rb:3:1:8:3 | call to open | zipBombs.rb:3:1:8:3 | call to open | zipBombs.rb:3:1:8:3 | call to open | This file extraction depends on a $@. | zipBombs.rb:3:1:8:3 | call to open | potentially untrusted source |
| zipBombs.rb:9:1:11:3 | call to open | zipBombs.rb:2:16:2:33 | "Path/To/bomb.zip" | zipBombs.rb:9:1:11:3 | call to open | This file extraction depends on a $@. | zipBombs.rb:2:16:2:33 | "Path/To/bomb.zip" | potentially untrusted source |
| zipBombs.rb:9:1:11:3 | call to open | zipBombs.rb:9:1:11:3 | call to open | zipBombs.rb:9:1:11:3 | call to open | This file extraction depends on a $@. | zipBombs.rb:9:1:11:3 | call to open | potentially untrusted source |
| zipBombs.rb:12:9:12:43 | call to open | zipBombs.rb:2:16:2:33 | "Path/To/bomb.zip" | zipBombs.rb:12:9:12:43 | call to open | This file extraction depends on a $@. | zipBombs.rb:2:16:2:33 | "Path/To/bomb.zip" | potentially untrusted source |
| zipBombs.rb:12:9:12:43 | call to open | zipBombs.rb:12:9:12:43 | call to open | zipBombs.rb:12:9:12:43 | call to open | This file extraction depends on a $@. | zipBombs.rb:12:9:12:43 | call to open | potentially untrusted source |
| zipBombs.rb:14:1:14:40 | call to read | zipBombs.rb:2:16:2:33 | "Path/To/bomb.zip" | zipBombs.rb:14:1:14:40 | call to read | This file extraction depends on a $@. | zipBombs.rb:2:16:2:33 | "Path/To/bomb.zip" | potentially untrusted source |
| zipBombs.rb:14:1:14:40 | call to read | zipBombs.rb:14:1:14:40 | call to read | zipBombs.rb:14:1:14:40 | call to read | This file extraction depends on a $@. | zipBombs.rb:14:1:14:40 | call to read | potentially untrusted source |
| zipBombs.rb:15:1:15:49 | call to extract | zipBombs.rb:2:16:2:33 | "Path/To/bomb.zip" | zipBombs.rb:15:1:15:49 | call to extract | This file extraction depends on a $@. | zipBombs.rb:2:16:2:33 | "Path/To/bomb.zip" | potentially untrusted source |
| zipBombs.rb:15:1:15:49 | call to extract | zipBombs.rb:15:1:15:49 | call to extract | zipBombs.rb:15:1:15:49 | call to extract | This file extraction depends on a $@. | zipBombs.rb:15:1:15:49 | call to extract | potentially untrusted source |
| zipBombs.rb:31:3:31:15 | call to extract | zipBombs.rb:2:16:2:33 | "Path/To/bomb.zip" | zipBombs.rb:31:3:31:15 | call to extract | This file extraction depends on a $@. | zipBombs.rb:2:16:2:33 | "Path/To/bomb.zip" | potentially untrusted source |
| zipBombs.rb:31:3:31:15 | call to extract | zipBombs.rb:31:3:31:15 | call to extract | zipBombs.rb:31:3:31:15 | call to extract | This file extraction depends on a $@. | zipBombs.rb:31:3:31:15 | call to extract | potentially untrusted source |
| zipBombs.rb:32:3:32:29 | call to read | zipBombs.rb:2:16:2:33 | "Path/To/bomb.zip" | zipBombs.rb:32:3:32:29 | call to read | This file extraction depends on a $@. | zipBombs.rb:2:16:2:33 | "Path/To/bomb.zip" | potentially untrusted source |
| zipBombs.rb:32:3:32:29 | call to read | zipBombs.rb:32:3:32:29 | call to read | zipBombs.rb:32:3:32:29 | call to read | This file extraction depends on a $@. | zipBombs.rb:32:3:32:29 | call to read | potentially untrusted source |
| zipBombs.rb:48:6:48:32 | call to read | zipBombs.rb:2:16:2:33 | "Path/To/bomb.zip" | zipBombs.rb:48:6:48:32 | call to read | This file extraction depends on a $@. | zipBombs.rb:2:16:2:33 | "Path/To/bomb.zip" | potentially untrusted source |
| zipBombs.rb:48:6:48:32 | call to read | zipBombs.rb:48:6:48:32 | call to read | zipBombs.rb:48:6:48:32 | call to read | This file extraction depends on a $@. | zipBombs.rb:48:6:48:32 | call to read | potentially untrusted source |
| zipBombs.rb:52:3:52:29 | call to read | zipBombs.rb:2:16:2:33 | "Path/To/bomb.zip" | zipBombs.rb:52:3:52:29 | call to read | This file extraction depends on a $@. | zipBombs.rb:2:16:2:33 | "Path/To/bomb.zip" | potentially untrusted source |
| zipBombs.rb:52:3:52:29 | call to read | zipBombs.rb:52:3:52:29 | call to read | zipBombs.rb:52:3:52:29 | call to read | This file extraction depends on a $@. | zipBombs.rb:52:3:52:29 | call to read | potentially untrusted source |
| gzipBombs.rb:6:3:6:34 | call to open | gzipBombs.rb:4:15:4:20 | call to params | gzipBombs.rb:6:3:6:34 | call to open | This file Decompression depends on a $@. | gzipBombs.rb:4:15:4:20 | call to params | potentially untrusted source |
| gzipBombs.rb:7:3:9:5 | call to open | gzipBombs.rb:4:15:4:20 | call to params | gzipBombs.rb:7:3:9:5 | call to open | This file Decompression depends on a $@. | gzipBombs.rb:4:15:4:20 | call to params | potentially untrusted source |
| gzipBombs.rb:10:3:14:5 | call to open | gzipBombs.rb:4:15:4:20 | call to params | gzipBombs.rb:10:3:14:5 | call to open | This file Decompression depends on a $@. | gzipBombs.rb:4:15:4:20 | call to params | potentially untrusted source |
| gzipBombs.rb:15:22:15:53 | call to open | gzipBombs.rb:4:15:4:20 | call to params | gzipBombs.rb:15:22:15:53 | call to open | This file Decompression depends on a $@. | gzipBombs.rb:4:15:4:20 | call to params | potentially untrusted source |
| gzipBombs.rb:20:3:20:50 | call to new | gzipBombs.rb:4:15:4:20 | call to params | gzipBombs.rb:20:3:20:50 | call to new | This file Decompression depends on a $@. | gzipBombs.rb:4:15:4:20 | call to params | potentially untrusted source |
| gzipBombs.rb:21:3:21:50 | call to new | gzipBombs.rb:4:15:4:20 | call to params | gzipBombs.rb:21:3:21:50 | call to new | This file Decompression depends on a $@. | gzipBombs.rb:4:15:4:20 | call to params | potentially untrusted source |
| gzipBombs.rb:25:3:25:40 | call to zcat | gzipBombs.rb:4:15:4:20 | call to params | gzipBombs.rb:25:3:25:40 | call to zcat | This file Decompression depends on a $@. | gzipBombs.rb:4:15:4:20 | call to params | potentially untrusted source |
| zipBombs.rb:6:3:11:5 | call to open | zipBombs.rb:4:18:4:23 | call to params | zipBombs.rb:6:3:11:5 | call to open | This file Decompression depends on a $@. | zipBombs.rb:4:18:4:23 | call to params | potentially untrusted source |
| zipBombs.rb:12:3:14:5 | call to open | zipBombs.rb:4:18:4:23 | call to params | zipBombs.rb:12:3:14:5 | call to open | This file Decompression depends on a $@. | zipBombs.rb:4:18:4:23 | call to params | potentially untrusted source |
| zipBombs.rb:15:11:15:45 | call to open | zipBombs.rb:4:18:4:23 | call to params | zipBombs.rb:15:11:15:45 | call to open | This file Decompression depends on a $@. | zipBombs.rb:4:18:4:23 | call to params | potentially untrusted source |
| zipBombs.rb:17:3:17:42 | call to read | zipBombs.rb:4:18:4:23 | call to params | zipBombs.rb:17:3:17:42 | call to read | This file Decompression depends on a $@. | zipBombs.rb:4:18:4:23 | call to params | potentially untrusted source |
| zipBombs.rb:18:3:18:51 | call to extract | zipBombs.rb:4:18:4:23 | call to params | zipBombs.rb:18:3:18:51 | call to extract | This file Decompression depends on a $@. | zipBombs.rb:4:18:4:23 | call to params | potentially untrusted source |
| zipBombs.rb:28:7:28:33 | call to read | zipBombs.rb:4:18:4:23 | call to params | zipBombs.rb:28:7:28:33 | call to read | This file Decompression depends on a $@. | zipBombs.rb:4:18:4:23 | call to params | potentially untrusted source |
| zipBombs.rb:34:5:34:17 | call to extract | zipBombs.rb:4:18:4:23 | call to params | zipBombs.rb:34:5:34:17 | call to extract | This file Decompression depends on a $@. | zipBombs.rb:4:18:4:23 | call to params | potentially untrusted source |
| zipBombs.rb:35:5:35:31 | call to read | zipBombs.rb:4:18:4:23 | call to params | zipBombs.rb:35:5:35:31 | call to read | This file Decompression depends on a $@. | zipBombs.rb:4:18:4:23 | call to params | potentially untrusted source |
| zipBombs.rb:41:7:41:31 | call to read | zipBombs.rb:4:18:4:23 | call to params | zipBombs.rb:41:7:41:31 | call to read | This file Decompression depends on a $@. | zipBombs.rb:4:18:4:23 | call to params | potentially untrusted source |
| zipBombs.rb:42:7:42:19 | call to extract | zipBombs.rb:4:18:4:23 | call to params | zipBombs.rb:42:7:42:19 | call to extract | This file Decompression depends on a $@. | zipBombs.rb:4:18:4:23 | call to params | potentially untrusted source |
| zipBombs.rb:46:10:46:36 | call to read | zipBombs.rb:4:18:4:23 | call to params | zipBombs.rb:46:10:46:36 | call to read | This file Decompression depends on a $@. | zipBombs.rb:4:18:4:23 | call to params | potentially untrusted source |
| zipBombs.rb:51:8:51:34 | call to read | zipBombs.rb:4:18:4:23 | call to params | zipBombs.rb:51:8:51:34 | call to read | This file Decompression depends on a $@. | zipBombs.rb:4:18:4:23 | call to params | potentially untrusted source |
| zipBombs.rb:55:5:55:31 | call to read | zipBombs.rb:4:18:4:23 | call to params | zipBombs.rb:55:5:55:31 | call to read | This file Decompression depends on a $@. | zipBombs.rb:4:18:4:23 | call to params | potentially untrusted source |

View File

@@ -1,24 +1,27 @@
require 'zlib'
gzip_path = "Path/To/bomb.gz"
Zlib::GzipReader.open(gzip_path).read
Zlib::GzipReader.open(gzip_path) do |uncompressedfile|
puts uncompressedfile.read
end
Zlib::GzipReader.open(gzip_path) do |uncompressedfile|
class TestController < ActionController::Base
gzip_path = params[:path]
Zlib::GzipReader.open(gzip_path).read
Zlib::GzipReader.open(gzip_path) do |uncompressedfile|
puts uncompressedfile.read
end
Zlib::GzipReader.open(gzip_path) do |uncompressedfile|
uncompressedfile.each do |entry|
puts entry
end
end
uncompressedfile = Zlib::GzipReader.open(gzip_path)
uncompressedfile.each do |entry|
puts entry
end
end
uncompressedfile = Zlib::GzipReader.open(gzip_path)
uncompressedfile.each do |entry|
puts entry
Zlib::GzipReader.new(File.open(gzip_path, 'rb')).read
Zlib::GzipReader.new(File.open(gzip_path, 'rb')).each do |entry|
puts entry
end
Zlib::GzipReader.zcat(open(gzip_path))
end
Zlib::GzipReader.new(File.open(gzip_path, 'rb')).read
Zlib::GzipReader.new(File.open(gzip_path, 'rb')).each do |entry|
puts entry
end
Zlib::GzipReader.zcat(open(gzip_path))

View File

@@ -1,55 +1,57 @@
require 'zip'
zipfile_path = "Path/To/bomb.zip"
Zip::InputStream.open(zipfile_path) do |input|
while (entry = input.get_next_entry)
puts :file_name, entry.name
input
class TestController < ActionController::Base
zipfile_path = params[:path]
Zip::InputStream.open(zipfile_path) do |input|
while (entry = input.get_next_entry)
puts :file_name, entry.name
input
end
end
end
Zip::InputStream.open(zipfile_path) do |input|
input.read
end
input = Zip::InputStream.open(zipfile_path)
Zip::InputStream.open(zipfile_path) do |input|
input.read
end
input = Zip::InputStream.open(zipfile_path)
Zip::File.open(zipfile_path).read "10GB"
Zip::File.open(zipfile_path).extract "10GB", "./"
Zip::File.open(zipfile_path).read "10GB"
Zip::File.open(zipfile_path).extract "10GB", "./"
Zip::File.open(zipfile_path) do |zip_file|
# Handle entries one by one
Zip::File.open(zipfile_path) do |zip_file|
# Handle entries one by one
zip_file.each do |entry|
puts "Extracting #{entry.name}"
raise 'File too large when extracted' if entry.size > MAX_SIZE
# Extract to file or directory based on name in the archive
entry.extract
# Read into memory
entry.get_input_stream.read
end
end
zip_file = Zip::File.open(zipfile_path)
zip_file.each do |entry|
puts "Extracting #{entry.name}"
raise 'File too large when extracted' if entry.size > MAX_SIZE
# Extract to file or directory based on name in the archive
entry.extract
# Read into memory
entry.get_input_stream.read
end
# Find specific entry
Zip::File.open(zipfile_path) do |zip_file|
zip_file.glob('*.xml').each do |entry|
zip_file.read(entry.name)
entry.extract
end
entry = zip_file.glob('*.csv').first
raise 'File too large when extracted' if entry.size > MAX_SIZE
puts entry.get_input_stream.read
end
zip_file = Zip::File.open(zipfile_path)
entry = zip_file.glob('*.csv')
puts entry.get_input_stream.read
zip_file = Zip::File.open(zipfile_path)
zip_file.glob('*') do |entry|
entry.get_input_stream.read
end
end
zip_file = Zip::File.open(zipfile_path)
zip_file.each do |entry|
entry.extract
entry.get_input_stream.read
end
# Find specific entry
Zip::File.open(zipfile_path) do |zip_file|
zip_file.glob('*.xml').each do |entry|
zip_file.read(entry.name)
entry.extract
end
entry = zip_file.glob('*.csv').first
raise 'File too large when extracted' if entry.size > MAX_SIZE
puts entry.get_input_stream.read
end
zip_file = Zip::File.open(zipfile_path)
entry = zip_file.glob('*.csv')
puts entry.get_input_stream.read
zip_file = Zip::File.open(zipfile_path)
zip_file.glob('*') do |entry|
entry.get_input_stream.read
end