From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-0.3 required=5.0 tests=BAYES_00, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 107f24,582dff0b3f065a52 X-Google-Attributes: gid107f24,public X-Google-Thread: 103376,bc1361a952ec75ca X-Google-Attributes: gid103376,public X-Google-Thread: 1014db,582dff0b3f065a52 X-Google-Attributes: gid1014db,public X-Google-Thread: 109fba,582dff0b3f065a52 X-Google-Attributes: gid109fba,public X-Google-ArrivalTime: 2001-08-01 15:40:56 PST Path: archiver1.google.com!newsfeed.google.com!newsfeed.stanford.edu!paloalto-snf1.gtei.net!news.gtei.net!enews.sgi.com!newshub2.rdc1.sfba.home.com!news.home.com!news1.rdc1.bc.home.com.POSTED!not-for-mail From: kaz@ashi.footprints.net (Kaz Kylheku) Newsgroups: comp.lang.ada,comp.lang.c,comp.lang.c++,comp.lang.functional Subject: Re: How Ada could have prevented the Red Code distributed denial of service attack. References: <3B6555ED.9B0B0420@sneakemail.com> <87n15lxzzv.fsf@deneb.enyo.de> <3B672322.B5EA1B66@home.com> <5ee5b646.0108010949.5abab7fe@posting.google.com> <%CX97.14134$ar1.47393@www.newsranger.com> Organization: Psycho-Neurotic Institute for the Very, Very Nervous Reply-To: kaz@ashi.footprints.net User-Agent: slrn/0.9.6.3 (Linux) Message-ID: Date: Wed, 01 Aug 2001 22:40:55 GMT NNTP-Posting-Host: 24.68.85.82 X-Complaints-To: abuse@home.net X-Trace: news1.rdc1.bc.home.com 996705655 24.68.85.82 (Wed, 01 Aug 2001 15:40:55 PDT) NNTP-Posting-Date: Wed, 01 Aug 2001 15:40:55 PDT Xref: archiver1.google.com comp.lang.ada:10997 comp.lang.c:71446 comp.lang.c++:79184 comp.lang.functional:7118 Date: 2001-08-01T22:40:55+00:00 List-Id: In article , Dale Stanbrough wrote: >Mike Smith wrote: > >> Yes, I do. However, what I also understand is that buffer overflow problems >> are a *bug*, not a "feature", and they are a bug in the *application code*, >> not the language. Only improperly written C code can contain buffer >> overflow problems, and there is absolutely *no* excuse for finding them in >> C++ code, because the STL can be used to eliminate them completely. > > >Ah, that's the solution! Lets just write -proper- code. > >Chain saw guards - not needed, just use them properly! >Seat belts - not needed, just drive properly! Can you drive improperly or saw improperly because of the presence of safety features? >Languages with checks - not needed - just code properly! An analogy for this is the use of video cameras to prevent crime. In reality, cameras only displace crime to location without cameras. Languages with checks are great, but they don't compensate for bad programming. What they do is displace bad programming. Programmers are displaced to causing other types of errors, or maybe they are displaced to other programming languages entirely. If programs in some language tend to demonstrate more robustness than programs in some other language, is it due to the language, or is it due to the types of people that gravitate toward using these languages? I suspect that if Microsoft wrote IIS in Caml, Lisp or Ada, using the same developers, it would still have security holes. They would not be the same holes, revolving around the injection of a machine language through a buffer overflow, but I'm sure they could figure out some creative ways of screwing up.