IDA JScript 2


Author: David Zimmer
Date: 09.07.20 - 11:15pm



Ok, so I finally updated my personal IDA license to 7.5 and have ported the IDASrvr2 and IDA JScript with debugger over to the new API.

They both now support x64 disassemblies. The IDAJS script functions are unchanged, but since neither JS nor VB6 support 64 bit numbers intrinsically, all x64 numbers are represented as strings. If you have to do math you can use the new x64.add/subtract methods.

If the IDAJS script functions detect a string arg, they will auto convert it to an x64 number. 32bit numbers can still be worked with in JS as normal. It is as seamless as possible for the given tech.

For some back story on why I bother with this anymore, well the first versions of this came about long long ago in an off and distant land when IDA only offered IDC scripting. I really really wanted a syntax highlight control with intellisense for IDA scripting. The debugger is just icing on the cake.

Anyway..after years and years and investing loads of time to create the custom components necessary, it has become a pet project and is just what I use for my IDA scripting needs. Sooo in for a penny in for a pound.

Going forward IDASrvr2 is going to be the foundation for my other plug-ins as well. Well actually plug-outs seeing how I will be doing as little as possible from within the IDA process. (IDAJScript IDE and JS engine run in their own 32bit process and only interact with 64bit IDA over an IPC channel)

Really, just being able to query data/control IDA from small external apps is enough of a reason to keep this project alive.




Comments: (3)

On 09.25.20 - 7:10am Dave wrote:
so I did a little spelunking out of curiosity.

1994 IDC script

2004 IDAPython 0.5 for IDA 4.6. (preinstalled as of IDA 5.4)

2004 Perl script plugin by redplait (perl5.5, ida4.7)

2006 IdaRub 0.8 by spoonm (Ruby interpreter)

2006 IDA Vbscript for IDA 4.7 (in process, msscript, limited api, crude intellisense, no syntax highlighting)

2008 IDAPerl for IDA 5.2, activesync perl

2009 IDA Javascript by Hexrays for IDA 5.5 (full api, V8 JS engine)

2011 idaocaml - Rolf Rolles

2013 IDA JScript (IPC, msscript, limited api, intellisense, full syntax highlighting, debugger w/duktape in 2015)

2015 IDA IPython (Looks like IPython supports remote UI connections to the python instance running within IDA)

If anyone knows of any other script interpreter projects for IDA id love to hear about them :)

On 06.01.22 - 12:41pm vmallet wrote:
Maybe these too 2010 IdaJava https//github.com/cblichmann/idajava 2010 IDA C https//blog.karatos.in/a?ID01000-69f2f124-560e-47a5-bb0c-93052d9763af (the original post is in Chinese)

On 01.26.24 - 6:12am MyName wrote:
If 2009 ... by Hexrays has full api then why years later limited api? **Answer** Unlike by Hexrays you can edit source and add whatever API you need, hence the intellisense, full syntax highlighting and debugger are the main goal here. Thanks for your hard work. I was actaully searching for a way to decompile and debug web-site JavaScript (not my own plugin script), but this can serve even there as learning material.

 
Leave Comment:
Name:
Email: (not shown)
Message: (Required)
Math Question: 53 + 7 = ? followed by the letter: A 



About Me
More Blogs
Main Site
Posts: (All)
2023 ( 4 )
2022 ( 5 )
2021 ( 2 )
2020 (5)
     AutoIT versions
     IDA JScript 2
     Using VB6 Obj files from C
     Yara Corrupt Imports
     Yara Undefined values
2019 (6)
     Yara WorkBench
     SafeArrayGetVartype
     vb6 API and call backs
     PrintFile
     ImpAdCallNonVirt
     UConnect Disable Cell Modem
2017 (5)
     IDA python over IPC
     dns wildcard blocking
     64bit IDA Plugins
     anterior lines
     misc news/updates
2016 ( 4 )
2015 ( 5 )
2014 ( 5 )
2013 ( 9 )
2012 ( 13 )
2011 ( 19 )
2010 ( 11 )
2009 ( 1 )