Archives
Send an archive and livewells opens it, lists every file inside and hands each file to the reader for its type. All files from one archive stay in one case.
Send an archive
Send the archive on the Upload a file tab, or through the API.
| Kind | Password | What livewells does |
|---|---|---|
| ZIP | none, ZipCrypto or AES | Opens it. A JAR file opens the same way. |
| 7z | none, or a password on the files or on the file names | Opens it. |
| RAR | none, or a password on the files or on the file names | Opens it. |
| tar | none | Opens it. |
gzip (.gz, .tar.gz, .tgz) | none | Opens it. A .tar.gz file opens as a tar. |
| ISO | none | Opens it. |
livewells reads the type from the content of the file, whatever the extension says.
Locked archives
Many teams lock a suspicious archive with the password infected. This holds for ZIP, 7z and RAR files. Send the password with the archive. livewells uses it on the archive and on every locked archive inside it.
- You can send up to 3 passwords. livewells tries them in the order given.
- livewells keeps a password in memory for one check.
- When the password is missing or wrong, the case shows This file is locked. Every file stays closed until a password works.
For a locked archive of a kind that livewells cannot open, the case shows the flag "This archive is locked in a way livewells cannot open." Send an unlocked copy or a ZIP copy.
What you see
For every file that livewells opens, the case shows:
- the name, with every dot and at-sign broken (for example
invoice[.]example[.]com.txt), - the type, read from the content,
- the size,
- the start of the SHA-256 hash. The full hash is in the case indicators.
Each opened file becomes an item of the same case. The matching reader opens it: email, QR code, HTML, PDF or Office. livewells hashes and lists a file of any other type.
Names and links
livewells opens a file only when its name stays inside the archive. A file with one of these names is listed with a flag and stays closed:
- a name that starts at the top of a disk, such as
/etc/xorC:\x, - a name that climbs out of its folder with
.., - a name that holds a hidden end mark.
A link, a hard link, a device or another special file in an archive is listed with a flag. livewells leaves it where it is.
An archive that holds two files with one name, files that share the same bytes, or a directory that disagrees with its file headers gets the flag "This archive is built to confuse programs that open it." Its files stay closed.
Limits
| Limit | Value |
|---|---|
| File size | 25 MiB |
| Files in one archive | 200 |
| Files opened from one archive | 100. livewells lists the rest. |
| Archives inside archives | 3 levels |
| Size of all unpacked files in one case | 256 MiB |
| Size of one unpacked file | 64 MiB |
| Unpacked size compared with packed size | 100 to 1 |
| Parts in one gzip file | 4 |
| Time | 60 seconds |
When an archive passes a limit, the report says so. The case shows the flag "This archive is larger or deeper than livewells opens. Some files were not opened."
Flags
| Flag | Severity | What it means |
|---|---|---|
archive-opened-with-password | info | This archive is locked. livewells opened it with the password you sent. |
archive-lock-unsupported | medium | This archive is locked in a way livewells cannot open. Its files were not read. |
archive-format-unsupported | low | livewells cannot read how some files in this archive are packed. They were listed and not opened. |
archive-damaged | medium | This archive is damaged or cut short. livewells opened what it could. |
archive-trick | high | This archive is built to confuse programs that open it. livewells did not open it. |
archive-unsafe-name | high | A file in this archive has a name that points outside its folder. livewells did not open it. |
archive-link | high | This archive holds a link to another place. livewells did not follow it. |
archive-special-file | medium | This archive holds a special system file. livewells did not open it. |
limit-exceeded | medium | This archive is larger or deeper than livewells opens. Some files were not opened. |
name-reversed-text | medium | A file name uses hidden characters that make it read backwards. |
archive-holds-archive | info | This archive holds another archive. |
archive-empty | info | This archive holds no files. |