java - Where does HP Fortify put the intermediate files? -


according hp fortify documentation, static code analyzer first translates source code intermediate format, , scans translated code , generates vulnerability report.

it says translation can done using following ant code:

<antcall target="compile">     <param name="build.compiler" value="com.fortify.dev.ant.scacompiler"/> </antcall> 

this call "compile" target force use scacompiler instead of regular javac compiler.

i have run fortify on our java code , produces vulnerability reports. not see intermediate files anywhere. ran diff between java class files regular javac compiler produced , java class files scacompiler produced, , same. intermediate files stored somewhere else, or fortify automatically delete them after performing scan?

the intermediate files not class or object files. nst (normalized syntax tree) files, proprietary format used hp fortify (this discussed in book "secure programming static analysis". when translating build id, such as:

sourceanalyzer -b test ant 

then stored in project working directory. in windows, typically:

%userprofile%\appdata\local\fortify\sca<version>\build\test 

or on other platforms:

~/.fortify/sca<version>/build/test 

this contain canonicalized path nst, performed during translation. these can used scan multiple times if needed, should "cleaned" if scanning separate new (or updated) codebase.

for ant integration think depends on version of ant, , way translating, way think calls sourceanalyzer.jar file (which contains com.fortify.dev.ant.scacompiler class) in order hook jvm , follow build create nst files needed scanning. don't believe it's separate version of javac, although perhaps there separate version under <sca installation directory>/jre/ may use.


Comments

Popular posts from this blog

java - How to specify maven bin in eclipse maven plugin? -

single sign on - Logging into Plone site with credentials passed through HTTP -

php - Why does AJAX not process login form? -