433 Stimmen

Was sollte jeder Programmierer über Sicherheit wissen?

Ich bin Informatikstudent und befinde mich jetzt im 3. Bis jetzt haben wir viele Fächer studiert, die mit Computern im Allgemeinen zu tun haben (Programmierung, Algorithmen, Computerarchitektur, Mathe usw.).

Ich bin mir sehr sicher, dass niemand alles über Sicherheit lernen kann, aber sicher gibt es ein "Minimum" an Wissen, das jeder Programmierer oder IT-Student darüber wissen sollte, und meine Frage ist, was ist dieses Minimum an Wissen?

Können Sie mir einige E-Books oder Kurse empfehlen, die mir helfen können, diesen Weg zu beschreiten?

4voto

Miguel Ping Punkte 17786

Ich würde Folgendes hinzufügen:

  • Wie digitale Signaturen und digitale Zertifikate funktionieren
  • Was ist Sandboxing?

Verstehen, wie verschiedene Angriffsvektoren funktionieren:

  • Pufferüberläufe/Unterläufe/etc bei nativem Code
  • Soziales Engagement
  • DNS-Spoofing
  • Mann in der Mitte
  • CSRF/XSS und andere
  • SQL-Einschleusung
  • Kryptoangriffe (z. B. Ausnutzung schwacher Kryptoalgorithmen wie DES)
  • Programm-/Framework-Fehler (z.B.: github's neueste Sicherheitslücke)

Sie können dies alles leicht über Google herausfinden. Das wird Ihnen eine gute Grundlage bieten. Wenn Sie die Schwachstellen von Webanwendungen sehen wollen, gibt es ein Projekt namens google gruyere das Ihnen zeigt, wie Sie eine funktionierende Webanwendung ausnutzen können.

4voto

rahul_pratap Punkte 1045

Wenn Sie ein Unternehmen oder eine Ihrer eigenen Software entwickeln, sollten Sie wie ein Hacker denken. Wie wir wissen, sind Hacker auch keine Experten in allen Bereichen, aber wenn sie eine Schwachstelle finden, beginnen sie, diese zu erforschen, indem sie Informationen über alle Dinge sammeln und schließlich unsere Software angreifen:

  • Versuchen Sie immer, Ihre Codes zu knacken (verwenden Sie Cheatsheets und googeln Sie die Dinge für weitere Informationen).
  • auf Sicherheitslücken in Ihrem Programmierbereich aktualisiert werden.
  • und, wie bereits erwähnt, vertrauen Sie niemals auf irgendeine Art von Benutzer- oder automatisierten Eingaben.
  • Verwendung von Open-Source-Anwendungen (deren Sicherheitslücken größtenteils bekannt und behoben sind).

Weitere Sicherheitsressourcen finden Sie unter den folgenden Links:

für weitere Informationen googeln Sie über die Sicherheitsabläufe Ihres Anwendungsanbieters.

3voto

Richard Punkte 103159
  1. Warum das wichtig ist.
  2. Es geht immer um Kompromisse.
  3. Die Kryptographie lenkt weitgehend von der Sicherheit ab.

3voto

Michael Kopinsky Punkte 854

Sehen Sie sich auch die OWASP Top 10 Liste für eine Kategorisierung der wichtigsten Angriffsvektoren/Schwachstellen.

Es ist faszinierend, über diese Dinge zu lesen. Wenn man lernt, wie ein Angreifer zu denken, lernt man, woran man denken muss, wenn man seinen eigenen Code schreibt.

3voto

Dan Esparza Punkte 27398

Für allgemeine Informationen zum Thema Sicherheit empfehle ich die Lektüre Bruce Schneier . Er hat eine Website, seine Krypto-Gramm-Newsletter mehrere Bücher und hat eine Vielzahl von Interviews .

Ich würde mich auch mit Social Engineering vertraut machen (und Kevin Mitnick ).

Für ein gutes (und ziemlich unterhaltsames) Buch darüber, wie sich Sicherheit in der realen Welt auswirkt, würde ich das ausgezeichnete (wenn auch etwas veraltete) Das Kuckucksei von Cliff Stoll.

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