Le coût du développement des capacités

December 22, 2019 in Malware Analysis

How much does it cost to develop la capacité ?

I took a stab at it, because there is an opinion out there suggesting that delayed, limited, or otherwise responsible disclosure of certain ‘open source’ security tools will affect the attackers by costing them time and money to develop their own.

I argue that this cost is low. Low enough to make it negligible. I base my assumption on a pure technical assessment of the code development task. Let me clarify it a bit: I am assuming that the aim is to replace a tool only, while existing operators and processes they follow is already established. From this point of view, I believe my technical approach is not far fetched.

The time to develop capabilities is hard to assess. There are coders who are magicians of assembly and produce very high quality code, with novelty ideas, tricks and solutions, and do it quickly. And then there are these who use RAD tools to develop quickly, and w/o much flair, but may actually cut time a lot. The end result is often similar tho — the capability exists and can deliver desired results.

In order to make it easier, I split the assuming coding task into a couple of categories:

  • atomic operations (you need them to build everything else e.g. create a file with content)
  • utilities (you need these as building blocks to code more complex features e.g. save screenshot)
  • rich features (quite complex coding tasks that require more time to code and test, and often research e.g. VNC client)
  • very complex stuff (some evasions, but primarily vulnerability research that helps to develop 0days)

Additionally, I introduced extra time (and cost) ‘penalty’ for writing in assembly and position-independent code (PIC). As many argue, and I agree with them, such extra time is usually negligible and in some cases non-existent, but I aim to present the worse case cost scenario.

Another assumption I make is that the coder has 3-5 years of experience. Knows how to program, but may need to research new topics and learn by trial and error. Last, but not least — it is very Windows-centric.

I didn’t list all the features, and I bet I missed some — please send me a feedback on what I missed and I will add it to the sheet.

This assessment is based on a 50 USD / hour rate. You can adjust it easily to any other hourly rate. It is important to mention that 100K USD / year is a lot of money and in many countries this number should be much smaller e.g. closer to 15-45K. As such, the final cost may be far lower.

Also, you may have a team of coders working on different parts of a project, and only code cherry-picked bits reducing both time and cost of the development. Finally, imho a 16-20yo bored coder can kill it (except for VR part) in ~3 months for no salary at all, but putting a dollar value on it helps to make it a tangible data in any argument about a cost of capabilities

The latest version is shown below:

You can also download a sheet and play around with it yourself.

If you have any comments, please let me know.

Comments are closed.