Chaff Bugs: Deterring Attackers by Making Software Buggier (2018)
1–10 of 16 posts
Re: Chaff Bugs: Deterring Attackers by Making Software Buggier (2018)
#2Re: Chaff Bugs: Deterring Attackers by Making Software Buggier (2018)
#3New coping strategy for low-quality software just dropped.
Re: Chaff Bugs: Deterring Attackers by Making Software Buggier (2018)
#4....some of the most difficult locks to pick can be those that are just 'buggy' and worn. The kind where you need to lift your key or rattle it in the lock just-so to get it to open :-)
Re: Chaff Bugs: Deterring Attackers by Making Software Buggier (2018)
#5Re: Chaff Bugs: Deterring Attackers by Making Software Buggier (2018)
#6Re: Chaff Bugs: Deterring Attackers by Making Software Buggier (2018)
#7I could easily see people saying things like "I know my software is buggy, but that just makes it more secure, dude!"
So you would have to have a database of these bugs that would be available to testers (including unofficial testers, like end-user testers), so they wouldn't waste their time, tracking down deliberate bugs. If it were open enough to do that, then hackers would simply consult that list, before going much further.
Re: Chaff Bugs: Deterring Attackers by Making Software Buggier (2018)
#8Re: Chaff Bugs: Deterring Attackers by Making Software Buggier (2018)
#9Re: Chaff Bugs: Deterring Attackers by Making Software Buggier (2018)
#10For those who don't know, dongles are hardware tokens that represent your license to use the software, and the dongle had to be attached to the computer so the software could check for its presence. Using dongles required you to either add code to your program to test for the presence of the dongle, or you could encrypt the executable using a key stored on the dongle and a program launcher would retrieve the key from the dongle to decrypt your program. In either case, if the dongle wasn't present a dialog would appear telling you the software was unlicensed and then terminate the application.
My evil idea was to tell people up front that the dongle was required for the software to work, but rather than terminate the application when the dongle wasn't present I would introduce subtle errors into the data manipulated by the program.
* CAD program missing the dongle? Each second, a random vertex is moved by 1 pixel
* Statistics program missing the dongle? Random numbers are added to data sets during aggregate calculations
* Video game missing the dongle? Game stutters at random intervals.
Oh sure you could use the software without the dongle, but it would be super-annoying to do so.I never got the opportunity to implement this because people realized that dongles are dumb.