WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Programmierung

Programmierung Rat & Tat für Programmierer

Microsoft KARRIERECAMPUS

Antwort
 
Themen-Optionen Ansicht
Alt 12.01.2005, 12:45   #1
Satan_666
Inventar
 
Registriert seit: 03.09.2000
Beiträge: 4.010


Standard a-typische verarbeitung von anwendersoftware?

Zitat:
aus einem bericht von heise-online:
Durch ein Sicherheitsloch im freien MP3-Player mpg123 kann beliebiger Code zur Ausführung gebracht werden. Das Problem besteht beim Parsen von Frame-Headern in Layer-2-Streams. Angreifer können durch speziell präparierte MP2- oder MP3-Dateien einen Buffer Overflow produzieren und so beliebigen Code ausführen. Yuri D'Elia hat das Sicherheitsproblem entdeckt und gemeldet.
kann mir das jemand näher erklären? wie kann es möglich sein, dass durch einen buffer overflow beliebiger code ausgeführt wird? welchen vorteil soll es haben, wenn ein mp3-abspielprogramm irgendwelchen code ausführt? was bringt mir bzw könnte mir eine solche funktion bringen?


meine erwartungen an ein mp3-abspielprogramm lässt sich ganz einfach beschreiben, nach der formel

Zitat:
input --> verarbeitung --> output
demnach soll so ein programm lediglich ein input haben (das mp3-file), die verarbeitung ist das decodieren der mp3-daten und die ausgabe ist das hörbarmachen der daten (via soundkarte). da brauche ich doch keine funktionionalität, die irgendeinen maschinencode ausführt, der im mp3-file versteckt ist.....


gleiches gilt auch für den blödsinn, der auch beim darstellen von jpg-files gemacht wird - weil dort ja auch viren, würmer, trojaner, ... eingschleust werden können!


ist das nicht widersinnig? oder sehe nur ich das so....?
____________________________________
Für ein friedliches Zusammenleben im Forum werde ich ab sofort keine Trolle mehr füttern, und zwar unabhängig von der Sinnhaftigkeit ihrer Wortmeldungen.
Satan_666 ist offline   Mit Zitat antworten
Alt 12.01.2005, 14:39   #2
pc.net
Aussteiger
 
Benutzerbild von pc.net
 
Registriert seit: 07.10.2001
Ort: Nettistan
Beiträge: 12.997

Mein Computer

Standard

wenn du dich mal genau informierst, was ein buffer-overflow ist, wirst du es vielleicht verstehen

http://www.paramind.org/dindobuo.htm
http://www.zotteljedi.de/doc/stacksm...ksmashing.html
http://www.google.at/search?hl=de&q=...le-Suche&meta=
____________________________________
Praktizierender Eristiker

No hace falta ser un genio para saber quién dijo eso.
Der wirklich faule Mensch ist oft extrem fleißig, denn er will möglichst schnell wieder faul sein.
pc.net ist offline   Mit Zitat antworten
Alt 13.01.2005, 09:00   #3
Satan_666
Inventar
 
Registriert seit: 03.09.2000
Beiträge: 4.010


Standard

ich danke für die links - aber was ein buffer-overflow ist, weiß ich wohl!

was ich nicht weiß: warum das betroffene programm beim auftreten eines solchen overflows auf die idee kommen muss, einen im input-file (!!!) eingebetteten maschinencode auszuführen. einen absturz kann ich noch verstehen - und, ehrlich gesagt: ich erwarte sogar, dass in diesen fällen das programm abstürzt oder meinetwegen nur das abspielen dieses einen stückes beendet und mit dem nächsten mp3-file weitermacht.

und da ich nicht glaube, dass sowas irrtümlich in derartige programme eingebaut wird (wie soll man sowas auch irrtümlich einbauen???), muss es absichtlich eingebaut worden sein. daher meine frage: wem nützt so ein feature? außer den viren-programmierern.....

für mich hat das ganze schön langsam methode: scheinbar zahlen die virenprogramme-hersteller den entwicklern viel geld, damit diese solchen unsinn in ihre programme einbauen.
____________________________________
Für ein friedliches Zusammenleben im Forum werde ich ab sofort keine Trolle mehr füttern, und zwar unabhängig von der Sinnhaftigkeit ihrer Wortmeldungen.
Satan_666 ist offline   Mit Zitat antworten
Alt 13.01.2005, 10:15   #4
John_Doe
Inventar
 
Registriert seit: 29.12.2000
Alter: 50
Beiträge: 1.671


Standard

Wieso kommst du drauf dass es absichtlich eingebaut wurde? Hast schonmal eine Applikation geschrieben und weißt du auch worauf du da alles achten muss, dass es auch wirklich wasserdicht ist (falls es das überhaupt gibt)???

Übrigens, sowas hat wenig mit Anti-Viren Herstellern zu tun, soetwas wird eher für andere Dinge ausgenützt (ned von Viren)
John_Doe ist offline   Mit Zitat antworten
Alt 13.01.2005, 10:37   #5
cg32
Jr. Member
 
Registriert seit: 10.06.2000
Beiträge: 84


Standard

Zitat:
Original geschrieben von Satan_666
ich danke für die links - aber was ein buffer-overflow ist, weiß ich wohl!
Anscheinend weisst du nur zum Teil was ein Buffer Overflow ist bzw. was durch das Ausnützen eines Buffer Overflows passieren kann.

Lies die Links von pc.net und du verstehst, wie malicious code mittels eines Buffer Overflows den Weg in ein Computersystem nehmen kann.
cg32 ist offline   Mit Zitat antworten
Alt 13.01.2005, 11:22   #6
Satan_666
Inventar
 
Registriert seit: 03.09.2000
Beiträge: 4.010


Standard

Zitat:
Original geschrieben von cg32
Lies die Links von pc.net und du verstehst, wie malicious code mittels eines Buffer Overflows den Weg in ein Computersystem nehmen kann.

Zitat:
aus einem der links von pc.net
Nun gibt es aber eine noch größere Gefahr als das unkontrollierte Abstürzen des Programms: das unkontrollierte Weiterlaufen.

gut, ändere ich meine frage in: welchen sinn soll es machen, dass ein programm weiter läuft, wenn das input einen nicht erwarteten zustand hervorruft?

sind meinetwegen halt die compiler-hersteller idioten - oder werden von den antivirenprogrammen-herstellern bezahlt. für mich als anwender ist das doch vollkommen wurscht, wer den ball zugespielt kriegt. denn: wenn das schon so schön und brav dokumentiert ist, dann sollten meiner meinung nach - eben wegen der sicherheit - genau diese kritischen fehler bereinigt werden. und zwar möglichst rasch!
____________________________________
Für ein friedliches Zusammenleben im Forum werde ich ab sofort keine Trolle mehr füttern, und zwar unabhängig von der Sinnhaftigkeit ihrer Wortmeldungen.
Satan_666 ist offline   Mit Zitat antworten
Alt 13.01.2005, 11:52   #7
ruffy_mike
Inventar
 
Registriert seit: 10.12.2001
Ort: Wien
Alter: 44
Beiträge: 2.651


Standard

Hier liegt wohl das Problem...

Zitat:
http://www.paramind.org/dindobuo.htm
Bei einer Reihe von Programmiersprachen nehmen Compiler bei der Übersetzung des Programmcodes keine Bereichsgrenzenüberprüfung für Schreibzugriffe auf Speichervariablen vor. Kritisch wird es beispielsweise in der Hochsprache C. Viele grosse Anwendungen werden gerade wegen der hohen Performanceanforderungen in C geschrieben.
Im Prinzip sollte es schon von der Programmiersprache unmöglich sein, in "fremde" Speicherbereiche einzugreifen. In jedem C-für-Dummies-Buch wird schon darauf hingewiesen, dass C in diesem Bereich sehr sensibel ist, Zeigervariablen etc.

Wenn schon die Programmiersprache zu "dumm" (oder zu freizügig, je nachdem, wie man will) ist, dann sollte man doch auf der OS-Ebene einen Riegel dazwischen schieben können?

Aber mal abgesehen von all den technischen Details verstehe ich sehr wohl die Frage bzw. die Bedenken von Satan_666! Eigentlich sehr unlogisch und blöd konstruiert, dieses Buffer-Overflow-Zeugs...
____________________________________
If the milk turns out to be sour, I ain't the kinda pussy to drink it.

"Every time I see an Alfa Romeo go by, I tip my hat" - Henry Ford
ruffy_mike ist offline   Mit Zitat antworten
Alt 13.01.2005, 15:05   #8
Satan_666
Inventar
 
Registriert seit: 03.09.2000
Beiträge: 4.010


Standard

Zitat:
Original geschrieben von ruffy_mike
Eigentlich sehr unlogisch und blöd konstruiert, dieses Buffer-Overflow-Zeugs...
... und höchst an der zeit, dass die hersteller von compilern (oder auch betriebssystemen?) endlich und hoffentlich rasch etwas dagegen unternehmen. als gestandener edv-mann geht mir persönlich sicherheit weit vor performance!
____________________________________
Für ein friedliches Zusammenleben im Forum werde ich ab sofort keine Trolle mehr füttern, und zwar unabhängig von der Sinnhaftigkeit ihrer Wortmeldungen.
Satan_666 ist offline   Mit Zitat antworten
Alt 13.01.2005, 15:47   #9
Harika
Master
 
Registriert seit: 04.06.2004
Ort: Irland
Beiträge: 724


Standard

Das ist halt der Nachteil von C und C++. Etwas besser ist es mit Java wo man den Garbage Collector hat. Da es aber nicht leicht für einen Compiler ist zu erkennen wo ein Buffer Overflow stattfindet wird es diese weitergeben. Oder glaubt jemand ernsthaft das man diese Overflows absichtlich nicht verhindert? Die werden ja auch nicht bewusst implementiert.
Harika ist offline   Mit Zitat antworten
Alt 13.01.2005, 16:42   #10
ruffy_mike
Inventar
 
Registriert seit: 10.12.2001
Ort: Wien
Alter: 44
Beiträge: 2.651


Standard

Zitat:
Original geschrieben von Harika
Das ist halt der Nachteil von C und C++. Etwas besser ist es mit Java wo man den Garbage Collector hat. Da es aber nicht leicht für einen Compiler ist zu erkennen wo ein Buffer Overflow stattfindet wird es diese weitergeben. Oder glaubt jemand ernsthaft das man diese Overflows absichtlich nicht verhindert? Die werden ja auch nicht bewusst implementiert.
Naja, irgendwie muss das ja sehr wohl verhinderbar sein. Sonst gäbe es ja bei jeder Programmiersprache die selben Overflows, ist aber nicht so.
____________________________________
If the milk turns out to be sour, I ain't the kinda pussy to drink it.

"Every time I see an Alfa Romeo go by, I tip my hat" - Henry Ford
ruffy_mike ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 11:25 Uhr.


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Forum SEO by Zoints
© 2009 FSL Verlag