Binwalk does carving, it doesn't care if embeedded file maybe cut into pieces, and its the parts are not stored in the container file continuously. It just finds JFIF header and tries to guess the size, and saves data starting from the point it found the header at. You may try to carve using photorec, but most probably it won't help either.
I was able to extract the file system just fine. I used Binwalk v2.1.2b and have sasquatch installed.
Extracted file system:
_squashfs.tmp.extracted/squashfs-root $ ls
bin boot config dev etc home lib media mnt opt proc root root.dev run sbin selinux srv sys tmp usr var
It is indeed for a MIPS device:
$ file bin/bash
bin/bash: ELF 32-...
Assuming nothing is cryptographically signed, that should be possible. You simply need to follow your steps in reverse. If you used binwalk's extract option, that made it too easy; you'll want to figure out how to unpack/pack the image manually (maybe the verbose option will provide more info on the steps taken). I realize this is a generic sounding answer, ...
Binwalk has this feature but you need to enable it explicitly:
Scan target file(s) for common executable opcode signatures
A project which explicitly tries to determine an architecture of a given binary is cpu_rec from Airbus.
Please note that both solutions can only handle a small set of processors: binwalk has a short list of ...
you can mount jffs2 file system directly
fo rmount jffs2 file system on linux
One method of mounting JFFS2 images uses the mtdram module to emulate an MTD device using system RAM. This works well for JFFS2 images that are less than approximately 32 MB but will not work for larger images since it requires allocating a large amount of system RAM. The basic ...
A few things:
Please include an entropy plot of the file using the -E flag; this will show if any portion of the file is indeed compressed or encrypted.
Please include a link to either the firmware download site or a direct download link, as well as a link to the UAV product page.
The presence of plaintext strings such as "description" and "image" in the ...
Main part of fortigate firmware is a /bin/init executable, most of other files are just symbolic links to it. So, you can obtain this file (or any other file of interest) from device or VM using fnsysctl and exec backup commands, together with the configured tftp-server. In my case it looks like this:
#> fnsysctl cp /bin/init /var/log/root/mlog.0