As long as you are using interpreted languages and not compiled languages, this may happen.
First of all, great work to all involved in catching and fixing this situation so quickly.
But it does raise some questions. This seems similar to an SQL injection, in that a malformed entry caused the system to crash, which seems like a possible attack vector. For example, if InstantSend had been activated when this happened, would it have only used those few MNs that were showing as active? I could see a (likely implausible) scenario where someone could submit a proposal that brings down MNs and then uses the remaining ones to perform some type of attack. Is that really feasible? And has the underlying problem been completely fixed that caused this to happen in the first place?
In EVERY update of the interpreted language or of its libraries, bad things may happen. Actually the one who controls the updates of the interpreted language, controls also the dash code, and consequently the whole dash network. Do you think satoshi was stupid, when he choosed a compiled language for his bitcoin?
You may say, will the interpreted language developers do such a thing? Yes of course they will do it. We are talking about money religion, remember? For the religion of money, some people kill their own mother and father. The language developers could also target the MNO IP adresses and send only to those specific addresses a buggy language update. In such a case, when the dash network will accuse the language developers, all the rest world will have the correct version of the language and they will not believe Dash's accusations. Yet another reason you should hide the IPs of the MNOs and allow TOR or similar precautions.
Fortunately for you, the masternode owners are complete stupid, they do not understand a word of all that I have just said, so they keep giving their dollars to dash. And this is a good thing, because although the dash generation is greedy, the dollar generation is much more greedy. So they deserve to be fooled.