We have written Ape using C# and .NET Framework. It is a pretty funny subject for arguments but I'm going to dismiss this thought and tell you about one important advantage of Ape. When you use .NET Framework you get a “managed code”. Your application isn't executed on CPU directly. Instead it goes through the CLR:



It gives you 99.9% of confidence that you are protected from “buffer overflow errors” - most popular hacker method for attaks on Apache server. When a program has too small buffer for some data saving and there aren't any incoming data length checking. So the buffer is overflowed and an attacker gets opportunity to execute some code on attacked machine.
The same error in managed application (Ape is 100% managed) leads to exception with detailed report. Every exception in Ape gives 500 HTTP code and a record in error.log

0 comments: