dblotsky / stringfuzz

Fuzzer and generator for string and regex problems in SMT-LIB 2.x format.
Other
20 stars 9 forks source link

Bandit Issue #3 #43

Open j29scott opened 5 years ago

j29scott commented 5 years ago

Another crash. I don't have an input, but I have the command and trace. This happened consistently for 500 jobs. Normally after 5-8 hours.

Mutated with the following command:stringfuzzx --file /tmp/tmpr_9wd6tx --random bandit --operator 'IndexOf2'

Trace:

  File "/project/6001884/joescott/banditfuzz/venv/bin/stringfuzzx", line 7, in <module>
    exec(compile(f.read(), __file__, 'exec'))
  File "/project/6001884/joescott/banditfuzz/banditfuzz/stringfuzz/bin/stringfuzzx", line 259, in <module>
    main()
  File "/project/6001884/joescott/banditfuzz/banditfuzz/stringfuzz/bin/stringfuzzx", line 253, in main
    transformed = transformer(ast, **transformer_args)
  File "/project/6001884/joescott/banditfuzz/banditfuzz/stringfuzz/stringfuzz/transformers/bandit.py", line 129, in bandit
    transformed = BanditTransformer(ast, pair).walk()
  File "/project/6001884/joescott/banditfuzz/banditfuzz/stringfuzz/stringfuzz/ast_walker.py", line 16, in walk
    self.walk_expression(expression, None)
  File "/project/6001884/joescott/banditfuzz/banditfuzz/stringfuzz/stringfuzz/ast_walker.py", line 27, in walk_expression
    self.walk_expression(sub_expression, expression)
  File "/project/6001884/joescott/banditfuzz/banditfuzz/stringfuzz/stringfuzz/ast_walker.py", line 27, in walk_expression
    self.walk_expression(sub_expression, expression)
  File "/project/6001884/joescott/banditfuzz/banditfuzz/stringfuzz/stringfuzz/ast_walker.py", line 27, in walk_expression
    self.walk_expression(sub_expression, expression)
  File "/project/6001884/joescott/banditfuzz/banditfuzz/stringfuzz/stringfuzz/ast_walker.py", line 27, in walk_expression
    self.walk_expression(sub_expression, expression)
  File "/project/6001884/joescott/banditfuzz/banditfuzz/stringfuzz/stringfuzz/ast_walker.py", line 23, in walk_expression
    self.enter_expression(expression, parent)
  File "/project/6001884/joescott/banditfuzz/banditfuzz/stringfuzz/stringfuzz/transformers/bandit.py", line 31, in enter_expression
    if expr.body[i] == self.pair[0]:
  File "/project/6001884/joescott/banditfuzz/banditfuzz/stringfuzz/stringfuzz/ast.py", line 95, in __eq__
    return repr(self) == repr(other)
  File "/project/6001884/joescott/banditfuzz/banditfuzz/stringfuzz/stringfuzz/ast.py", line 244, in __repr__
    return '(\'{}\' {})'.format(self.symbol, with_spaces(self.body))
  File "/project/6001884/joescott/banditfuzz/banditfuzz/stringfuzz/stringfuzz/ast.py", line 90, in with_spaces
    return ' '.join(map(repr, terms))
  File "/project/6001884/joescott/banditfuzz/banditfuzz/stringfuzz/stringfuzz/ast.py", line 244, in __repr__
    return '(\'{}\' {})'.format(self.symbol, with_spaces(self.body))
  File "/project/6001884/joescott/banditfuzz/banditfuzz/stringfuzz/stringfuzz/ast.py", line 90, in with_spaces
    return ' '.join(map(repr, terms))
  File "/project/6001884/joescott/banditfuzz/banditfuzz/stringfuzz/stringfuzz/ast.py", line 244, in __repr__
    return '(\'{}\' {})'.format(self.symbol, with_spaces(self.body))
  File "/project/6001884/joescott/banditfuzz/banditfuzz/stringfuzz/stringfuzz/ast.py", line 90, in with_spaces
    return ' '.join(map(repr, terms))
  File "/project/6001884/joescott/banditfuzz/banditfuzz/stringfuzz/stringfuzz/ast.py", line 244, in __repr__
    return '(\'{}\' {})'.format(self.symbol, with_spaces(self.body))
  File "/project/6001884/joescott/banditfuzz/banditfuzz/stringfuzz/stringfuzz/ast.py", line 90, in with_spaces
    return ' '.join(map(repr, terms))
  File "/project/6001884/joescott/banditfuzz/banditfuzz/stringfuzz/stringfuzz/ast.py", line 244, in __repr__
    return '(\'{}\' {})'.format(self.symbol, with_spaces(self.body))
  File "/project/6001884/joescott/banditfuzz/banditfuzz/stringfuzz/stringfuzz/ast.py", line 90, in with_spaces
    return ' '.join(map(repr, terms))
  File "/project/6001884/joescott/banditfuzz/banditfuzz/stringfuzz/stringfuzz/ast.py", line 244, in __repr__
    return '(\'{}\' {})'.format(self.symbol, with_spaces(self.body))
  File "/project/6001884/joescott/banditfuzz/banditfuzz/stringfuzz/stringfuzz/ast.py", line 90, in with_spaces
    return ' '.join(map(repr, terms))
  File "/project/6001884/joescott/banditfuzz/banditfuzz/stringfuzz/stringfuzz/ast.py", line 244, in __repr__
    return '(\'{}\' {})'.format(self.symbol, with_spaces(self.body))
  File "/project/6001884/joescott/banditfuzz/banditfuzz/stringfuzz/stringfuzz/ast.py", line 90, in with_spaces
    return ' '.join(map(repr, terms))
  File "/project/6001884/joescott/banditfuzz/banditfuzz/stringfuzz/stringfuzz/ast.py", line 244, in __repr__
    return '(\'{}\' {})'.format(self.symbol, with_spaces(self.body))

(this loops)

Additional sharcnet os stuff FWIW:

unhandled error warning: Can't locate Data/Dumper.pm in @INC (@INC contains: /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5/site_perl /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5 /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5 /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5/site_perl /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at ./banditfuzz/timeout/timeout line 115.
BEGIN failed--compilation aborted at ./banditfuzz/timeout/timeout line 115.
unhandled error warning: Can't locate Data/Dumper.pm in @INC (@INC contains: /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5/site_perl /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5 /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5 /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5/site_perl /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at ./banditfuzz/timeout/timeout line 115.
BEGIN failed--compilation aborted at ./banditfuzz/timeout/timeout line 115.
unhandled error warning: Can't locate Data/Dumper.pm in @INC (@INC contains: /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5/site_perl /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5 /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5 /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5/site_perl /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at ./banditfuzz/timeout/timeout line 115.
BEGIN failed--compilation aborted at ./banditfuzz/timeout/timeout line 115.
unhandled error warning: Can't locate Data/Dumper.pm in @INC (@INC contains: /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5/site_perl /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5 /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5 /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5/site_perl /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at ./banditfuzz/timeout/timeout line 115.
BEGIN failed--compilation aborted at ./banditfuzz/timeout/timeout line 115.
unhandled error warning: Can't locate Data/Dumper.pm in @INC (@INC contains: /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5/site_perl /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5 /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5 /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5/site_perl /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at ./banditfuzz/timeout/timeout line 115.
BEGIN failed--compilation aborted at ./banditfuzz/timeout/timeout line 115.
unhandled error warning: Can't locate Data/Dumper.pm in @INC (@INC contains: /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5/site_perl /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5 /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5 /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5/site_perl /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at ./banditfuzz/timeout/timeout line 115.
BEGIN failed--compilation aborted at ./banditfuzz/timeout/timeout line 115.
unhandled error warning: Can't locate Data/Dumper.pm in @INC (@INC contains: /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5/site_perl /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5 /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5 /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5/site_perl /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at ./banditfuzz/timeout/timeout line 115.
BEGIN failed--compilation aborted at ./banditfuzz/timeout/timeout line 115.
unhandled error warning: Can't locate Data/Dumper.pm in @INC (@INC contains: /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5/site_perl /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5 /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5 /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5/site_perl /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at ./banditfuzz/timeout/timeout line 115.
BEGIN failed--compilation aborted at ./banditfuzz/timeout/timeout line 115.
unhandled error warning: Can't locate Data/Dumper.pm in @INC (@INC contains: /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5/site_perl /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5 /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5 /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5/site_perl /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at ./banditfuzz/timeout/timeout line 115.
BEGIN failed--compilation aborted at ./banditfuzz/timeout/timeout line 115.
unhandled error warning: Can't locate Data/Dumper.pm in @INC (@INC contains: /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5/site_perl /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5 /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5 /cvmfs/soft.computecanada.ca/nix/var/nix/profiles/16.09/lib/perl5/site_perl /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at ./banditfuzz/timeout/timeout line 115.
BEGIN failed--compilation aborted at ./banditfuzz/timeout/timeout line 115.
FedericoAureliano commented 5 years ago

I believe #43 #42 and #41 are all the same issue, and that they are fixed by the most recent commit (https://github.com/dblotsky/stringfuzz/commit/9fb9140862f6427a3636c4f60d84cea11004357c)