ich wollte mal wissen, wie steht es eigentlich um die Security auf Technologie / Programmiersprachen-Ebene? D.h. welche Programmiersprachen machen es einem schwer vs. einfach sichere Software zu schreiben?

Natürlich kann man in jeder Programmiersprache angreifbare Projekte entwickeln… das ist kein Problem, das genaue Gegenteil ist ja erwünscht:

  1. debugbare / wartbare / modulare / gut dokumentierte Projekte mit gut kommentiertem code, dessen Zusammenhänge man noch mit einem Gehirn und an einem Tag verstehen kann.
  2. Ressourcen effizient, performant, schnell, einfach, kompakt, zielgerichtet, kein schnick schnack – do your job
    1. OwnCloud z.B. sollte eine zuverlässige Dateiablage sein – und nicht gleich alle Desktop Applikationen in Web-Form anbieten… (verrennen in Details und Features, dabei wird die Kern-Anforderung vernachlässigt)
  3. Fall-Dokumentation / Test-Dokumentation
    1. nur eine immer wieder verbesserte Test-Dokumentation liefert qualitativen hochwertigen Code welcher die (sich ständig anpassenden) Anforderungen erfüllt.
  4. ASAP – as simple as possible
    1. oder: SWSWM – So Wenig Software Wie Möglich – auf einem System gleichzeitig läuft – umso kleiner die Angriffsfläche – von aussen wie von innen.
      1. es gibt mittlerweile auch Websites welche via JavaScript den eigenen DSL-Router angreiffen – um diesen in einen DDoS-Bot zu verwandeln.

Man muss aber dazu sagen, dass es natürlich keine 100%tig sichere Software gibt und leider ist es mit ziemlich hoher Wahrscheinlichkeit auch so:

Umso komplexer und monolithischer die Software wird (Kernel sei es Windows wie Linux) umso mehr Schwachstellen verbergen sich in dieser.

Ich erinnere mich an einen Exploit namens Brutus welcher einfach nur eine brutus.exe war und Windows XP SP1 quasi „sofort“ gehackt hat. Man konnte sich auf jedem Windows XP SP1 rechner via cmd einwählen und Befehle absetzen.

Ohne großes Passwort-Raten via Brute-Forcing, wie es ja oft auch versucht wird. This is cary.

„Applications written in web scripting languages have a far higher prevalence rate of vulnerability classes like SQL injection and Cross-Site Scripting than applications written in .NET or Java.“

Security Audit Results:

  • 64 percent of applications written in Microsoft’s Classic ASP,
  • 62 percent of applications written in ColdFusion, and
  • 56 percent of applications written in PHP were observed to have at least one SQL injection vulnerability on initial assessment,

compared to:

  • 29 percent of .NET applications and
  • 21 percent of Java applications.
    • was bei Java extrem nervt sind die stäääändigen Updates, welche im schlimmsten Fall existierende Programme unbenutzbar machen (!!!). Katastrophe!

This is of concern given the large numbers of web applications written atop PHP-based content management systems such as WordPress and Drupal.“

What about Privacy?

„Mobile applications had the highest rate of cryptographic issues:“

  • 87 percent for Android
  • 80 percent for iOS

„This suggests that while mobile app developers may be aware of the need for cryptography to protect sensitive data and thus use it in their applications, few of them know how to implement it correctly.“

Threat awareness at the customer level

Es ist nicht immer einfach einem Auftraggeber die Notwendigkeit des Aufwandes von „IT-Security“ begreiflich zu machen – zumal das viel Geld kosten kann. (Firewall, Router, VPN, Virenscanner, Backups, Brute-Force-Audits)

Meist wird eine Sensitivität für das Thema erst erreicht – wenn schon ein Schaden entstanden ist – ein Virus sämtliche Daten verschlüsselt hat und und jetzt nach 1000€ in BitCoins über eine Anonyme-TOR-Seite frägt.

„Ich wollte doch nur den neusten Flashplayer installieren“. „Ich wollte doch nur den Mail-Anhang anschauen“

Tja.

Katastrophe wenn das überhaupt möglich ist. Der User muss vor sich selbst geschützt werden.

What can you do?

  • Alle Server seitigen Scripts welche irgendeinen Datei-Zugriff ermöglichen sind potentielle Schwachstellen.
    • Mir ist es selbst schon ein mal passiert – dass ein PHP-Script die .htaccess geändert hat, welche dann auf Spam-Seiten umgeleitet hat, wenn man die Seite über Google aufgerufen hat – hat man die Seite direkt aufgerufen – sah alles normal aus.
  • Fortbildung is Key / Keep an eye on security
    • „The PCI-DSS standard goes so far as to mandate developer education in secure coding practices in support of this goal“
    • Security Newsletter wie „Krebs on Security“ abonnieren.
    • Sophos Naked Security Newsletter ist evtl. nicht unbedingt zu empfehlen, die machen wohl viel Fear-Mongering – Sie möchten ja schließlich Anti-Viren-Software verkaufen.

„The choice of assessment type can make a difference in remediation as well. We see a 28 percent higher fix rate for vulnerabilities found by static analysis compared to those found by dynamic analysis.

While no single assessment technology is sufficient to secure an application, understanding the tools’ strengths and weaknesses as it comes
to fixing — not just finding — software vulnerabilities is important.“

This post was produced in a hurry – Always happy about comments.

src: https://thehackernews.com/2015/12/programming-language-security.html

src: https://info.whitehatsec.com/rs/whitehatsecurity/images/statsreport2014-20140410.pdf

admin