Vault 7: Projects

This publication series is about specific projects related to the Vault 7 main publication.
webserver
'-E4' means that mtd_w program had an error when writing the sq.bin file
to flash.
'-S' means the upgrade was successful.
If you encounter any '-E' messages, you can try again with step 3. Any '-W'
messages are ignored by the script, although if a '-W' occurs, it is likely
that an '-E' will occur.
After clicking the "Check Firmware" button and checking the status with
dumbbellc, the '-' should show immediately. If not, then the most likely
cause of error is step 5. Repeat the operation starting from step 3 being
careful with paths and filenames.
Assuming the '-' is present, files are first transferred from the wireless
client to the device during the first 2 or 3 seconds. After this, the flash
writing takes another 60-70 seconds. The device will then reboot in another
4-8 seconds.
If any error ('-E') occurs, the script is stopped at that point, and the
router will not reboot. If dumbbelld was started successfully, the operator
can use dumbbellc (see "DUMBBELL NOTES" below) to diagnose the problem,
although this could be a time consuming procedure and requires knowledge
of linux and the bootstrapping procedure in the aforementioned a.sh. Still,
the flexibility is there for an expert user.
Assuming all has gone well, the router will reboot about 70-80 seconds after
the clicking of the "Check Firmware" button.
12. The device can take up to 60 seconds to reboot. After 60 seconds, verify
reconnect of your wireless client card to the device.
DUMBBELL NOTES:
The bootstrapping procedure starts a process on the device called dumbbelld.
It is a telnetd-like application. The Belkin does not support the proper
ptys/ttys for telnetd to work.
dumbbellc is the client program that works with the dumbbelld server.
dumbbellc is located at <HOME>/<PACKAGE>/wireless_client_files/dumbbellc.
dumbbellc has the following usage:
./dumbbellc <WIRELESS_ROUTER_IP_ADDRESS> "command"
Quotes are typically used around the command because the command typically
contains spaces. For example:
./dumbbellc 192.168.2.1 "/bin/ls -al /usr/sbin"
will list the contents of /usr/sbin. Note that full paths to executables
must be used (/bin/ls instead of just ls).
For more complicated commands that use pipes/redirects, it is best to use a
formal /bin/sh -c call:
./dumbbellc 192.168.2.1 "/bin/sh -c 'echo abc > /tmp/abc.txt'"
54