trailofbits / sienna-locomotive

A user-friendly fuzzing and crash triage tool for Windows
https://blog.trailofbits.com/user-friendly-fuzzing-with-sienna-locomotive
GNU Affero General Public License v3.0
131 stars 24 forks source link

If wizard not run in gui: targets file not found: #294

Closed haxmeadroom closed 6 years ago

haxmeadroom commented 6 years ago

I get this if no ./make regress beforehand

PS F:\proj\sl2\sienna-locomotive> python gui.py
[!] Nonexistent targets file: C:\Users\IEUser\AppData\Roaming\Trail of Bits\fuzzkit\targets\TEST_APPLICATION_d2df04918c0c20726ca69b8277c3f40ad78716d5\targets.msg
Traceback (most recent call last):
[!] Nonexistent targets file: C:\Users\IEUser\AppData\Roaming\Trail of Bits\fuzzkit\targets\TEST_APPLICATION_d2df04918c0c20726ca69b8277c3f40ad78716d5\targets.msg
  File "F:\proj\sl2\sienna-locomotive\harness\threads.py", line 48, in run
[!] Nonexistent targets file: C:\Users\IEUser\AppData\Roaming\Trail of Bits\fuzzkit\targets\TEST_APPLICATION_d2df04918c0c20726ca69b8277c3f40ad78716d5\targets.msg
Traceback (most recent call last):
[!] Nonexistent targets file: C:\Users\IEUser\AppData\Roaming\Trail of Bits\fuzzkit\targets\TEST_APPLICATION_d2df04918c0c20726ca69b8277c3f40ad78716d5\targets.msg
Traceback (most recent call last):
Traceback (most recent call last):
  File "F:\proj\sl2\sienna-locomotive\harness\threads.py", line 48, in run
  File "F:\proj\sl2\sienna-locomotive\harness\threads.py", line 48, in run
    crashed, run_id = fuzzer_run(self.config_dict, self.target_file)
  File "F:\proj\sl2\sienna-locomotive\harness\instrument.py", line 268, in fuzzer_run
  File "F:\proj\sl2\sienna-locomotive\harness\threads.py", line 48, in run
    crashed, run_id = fuzzer_run(self.config_dict, self.target_file)
    crashed, run_id = fuzzer_run(self.config_dict, self.target_file)
  File "F:\proj\sl2\sienna-locomotive\harness\instrument.py", line 268, in fuzzer_run
  File "F:\proj\sl2\sienna-locomotive\harness\instrument.py", line 268, in fuzzer_run
    crashed, run_id = fuzzer_run(self.config_dict, self.target_file)
    with open(targets_file, 'rb') as targets_msg:
  File "F:\proj\sl2\sienna-locomotive\harness\instrument.py", line 268, in fuzzer_run
FileNotFoundError: [Errno 2] No such file or directory: 'C:\\Users\\IEUser\\AppData\\Roaming\\Trail of Bits\\fuzzkit\\targets\\TEST_APPLICATION_d2df04918c0c20726ca69b8277c3f40ad78716d5\\targets.msg'
    with open(targets_file, 'rb') as targets_msg:
FileNotFoundError: [Errno 2] No such file or directory: 'C:\\Users\\IEUser\\AppData\\Roaming\\Trail of Bits\\fuzzkit\\targets\\TEST_APPLICATION_d2df04918c0c20726ca69b8277c3f40ad78716d5\\targets.msg'
    with open(targets_file, 'rb') as targets_msg:
    with open(targets_file, 'rb') as targets_msg:
FileNotFoundError: [Errno 2] No such file or directory: 'C:\\Users\\IEUser\\AppData\\Roaming\\Trail of Bits\\fuzzkit\\targets\\TEST_APPLICATION_d2df04918c0c20726ca69b8277c3f40ad78716d5\\targets.msg'
FileNotFoundError: [Errno 2] No such file or directory: 'C:\\Users\\IEUser\\AppData\\Roaming\\Trail of Bits\\fuzzkit\\targets\\TEST_APPLICATION_d2df04918c0c20726ca69b8277c3f40ad78716d5\\targets.msg'
haxmeadroom commented 6 years ago

If you haven't run the wizard first you get this. Could make it more obvious to the user.

woodruffw commented 6 years ago

Ran the wizard without the GUI today and wasn't able to repro, so we probably fixed this during the shift from harness.py/gui.py to sl2-cli/sl2.

woodruffw commented 5 years ago

https://github.com/trailofbits/sienna-locomotive/commit/983bdcee9a2d6b8845e78c3b1af7c9f1ae9aaecf should also improve the user experience here.