Tuesday, January 14, 2014

JSDetox 0.2 released

I commited some changes to JSDetox last december, fixing some bugs and introducing new features. The following bugs are now fixed:
  • Handling of anonymous function calls (see Issue #7)
  • Upload of files containing UTF-8 characters (see Issue #9)
  • Handling of Prefix/Postfix Operators (like "i++") in static analysis (thanks to Jackmcbarn)
The JavaScript parsing library used in JSDetox (rkelly) is not maintained anymore, so I removed the ruby gem dependency and included the source with JSDetox to allow bug fixes and improvements.

Appart from the bug fixes, the following improvements/features got implemented:
  • Optimized plugin handling, improving analysis performance
  • Code execution now allows the optional execution of "eval()" statements (thanks to Jackmcbarn)

Jackmcbarn found an obfuscator creating code that led to an error when executed with JSDetox. He tracked the problem down to this code:

function a() {
        /* ... */
}
function b() {
        eval("b = a");
        b();
}
b();

JSDetox logs "eval()" statements and allows the analysis of the code that would be executed. In this case, that behavior leads to code that never returns, and due to the recursive function calls of "b()" this leads to a stack error.
JSDetox now provides the option "Execute eval() statemernts" in the right pane:
When this option is executed, the evaluated code gets logged (allowing further analysis) and executed. JSDetox now detects when too many eval() statements are executed, aborts the execution and provides a hint to the new option.


8 comments:

  1. Thank you for sharing this informative post. Quickbooks is the advanced accounting software to handle business transactions. Restore quickbooks backup

    ReplyDelete
  2. Nice & Informative Blog !
    In the wake of the Coronavirus pandemic, we at QuickBooks Technical Support Phone Number 1-855-652-7978 try our level best to land you out of all the problems that persist in your QuickBooks software.

    ReplyDelete
  3. Hey! Good blog. I was facing an error in my QuickBooks software, so I called QuickBooks For MAC Support (855)756-1077. I was tended to by an experienced and friendly technician who helped me to get rid of that annoying issue in the least possible time.

    ReplyDelete
  4. Hey! Mind-blowing blog. Keep writing such beautiful blogs. In case you are struggling with issues on QuickBooks software, dial QuickBooks Support (877)603-0806. The team, on the other end, will assist you with the best technical services.

    ReplyDelete
  5. Hey! Lovely blog. Your blog contains all the details and information related to the topic. In case you are a QuickBooks user, here is good news for you. You may encounter any error like QuickBooks Customer Support Phone Number, visit at QuickBooks Customer Support Phone Number for quick help.

    ReplyDelete
  6. Hey, I will also really like if you could post reviews on software's and tools like QuickBooks Connection Diagnostic Tool, of how it helps in rectifying common network related errors, H series errors and other errors relating to Quickbooks desktop

    ReplyDelete