Live data from Hacker News

A hands-on introduction to static code analysis

deepsource.io

31–32 of 32 posts

Re: A hands-on introduction to static code analysis

#31
post #26

Earlier quoted context omitted.

I would not recommend POPA to people wanting to go down this road, its an extremely difficult text. Personally, just my 2 cents here, a far more useful text would be Practical Binary Analysis, https://practicalbinaryanalysis.com/ The Cousant's text is fascinating but requires a level of mathematical maturity at virtually post-doc researcher levels

Principles of Program Analysis isn't the Cousot's text, but it does make significant use of abstract math. In particular, it uses tools from order theory[0] to describe many program analysis algorithms as finding fixpoints of functions between lattices[1]. This is useful because it reduces many program analysis design questions to questions of which lattice to use. It also allows you to compare algorithms by comparin…

You're correct on the Cousot text, thank you. I stand by the assertion that if people want to go beyond the simple PA described in the article a far better and more approachable text is the binary analysis one I listed. Practical hands on experience that doesn't require a math major in uni is a good thing!

Re: A hands-on introduction to static code analysis

#32

Going to drop a toplevel comment and say while this is interesting (sincerely!) if people are interested in deeper tools/techniques the book Practical Binary Analysis is excellent, it ends in taint checking, symbolic excution techniques and uses Pin. https://practicalbinaryanalysis.com/ Also worth checking out is BAP, the Binary Analysis Platform, which is the successor project to Bit Blaze, and is one of the most fa…

I’m unsure of what you mean: while I did not participate in CGC personally IIRC they used a custom platform that required teams to retool for. How would an entry that runs “on real binaries” be useful for this situation?

because the test binaries they used were not really close enough to reality to test finding real vulnerabilities. and BAP can, which, if you want to learn static binary analysis, seems useful
Post reply on HN