21 Stimmen

C++: Was sind die häufigsten Schwachstellen und wie kann man sie vermeiden?

Beim Programmieren versuche ich, stets auf Sicherheit zu achten. Das Problem ist, dass ich wissen muss, worauf ich achten und was ich verhindern muss.

Gibt es irgendwo eine Liste der häufigsten (C++-)Software-Schwachstellen und wie man sie vermeiden kann?

Wie sieht es mit C++-Software für spezielle Zwecke aus, z. B. eine Linux-Konsolensoftware oder eine Webanwendung?

0 Stimmen

Code lässt sich nicht kompilieren ist die häufigste :)

4 Stimmen

Ich hätte gedacht, dass die Nichtkompilierung von Code eine der besten Möglichkeiten ist, um zu verhindern, dass Sicherheitslücken veröffentlicht werden.

0 Stimmen

Ich stimme zu: keine ausführbare Datei - keine Sicherheitslücken. Statische Codeprüfung in Sprachen wie C++ ist sehr schwierig, wenn überhaupt möglich.

17voto

逆さま Punkte 71730

Es stehen zahlreiche Ressourcen zur Verfügung, von denen einige in Frage kommen:

5voto

chrisaycock Punkte 34286

Diese Website enthält möglicherweise Links zu dem, was Sie suchen:

http://www.deitel.com/ResourceCenters/Programming/C/CSecurity/tabid/1549/Default.aspx


Ich möchte hinzufügen, dass eines der häufigsten Probleme in C und C++ der Pufferüberlauf ist:

http://en.wikipedia.org/wiki/Buffer_overflow#Use_of_safe_libraries

Verwenden Sie dazu nur Funktionen, die Grenzen prüfen, wie strncpy() anstelle von strcpy() .

3 Stimmen

strncpy ist eine schlecht Idee, weil es Sie ohne null-terminierte Strings verlassen kann, was zu noch schlimmeren Pufferüberläufen führt. Alternativen wie strlcpy , strcpy_s y memcpy sind besser.

2voto

1s2a3n4j5e6e7v Punkte 1235

Außerdem gibt es Probleme wie 1. Fehler bei der Segmentierung 2. Speicherleck 3. Speicherzuweisungsfehler, etc. die für Sie von Bedeutung sein könnten...

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X