Haben die alten Widgets ausgesorgt?



  • Ich kann nur soviel sagen, in keiner der Firmen, in die ich bis jetzt an Websachen gearbeitet habe, wurde wirklich großes Testing durchgeführt. Selbst in der einen großen Bude, die OpenSource Software entwickelt und sehr auf Sicherheit nach außen bedacht sind, wurde es nicht so genau genommen mit dem Testing. Und ganz wichtige Projekte wie OpenSSL und Truecrypt, Bash usw beweisen ja dass selbst dort KEINER sich wirklich um die Sicherheit kümmert. Was nutzt OpenSource wenn das Thema so komplex ist, dass eh kaum einer durchblickt, genau gar nichts!

    Nicht jeder Entwickler ist auch gleichzeitig auch ein Vollzeit-Hacker und kennt jede Schwachstelle die es abzusichern gilt. Da werden ein paar Strings escaped und PDOs eingesetzt und das war es dann auch schon im Großen und Ganzen.

    Um es kurz zu machen. Für Sicherheit ist kein Geld und keine Kompetenz da. Die Leute die wirklich richtig Ahnung von Sicherheit haben, sind keine Entwickler mehr, sondern die beraten die Firmen die es sich leisten können und selbst dann wird mit Sicherheit nicht alles umgesetzt oder umsetzbar sein.

    Sicherheit hat dann zudem noch was mit der Dummheit oder auch Faulheit der User zu tun. Was hilft mir ein Linux auf dem Desktop, wo ich dann brülle: "Aber hier ist Root und User strikt getrennt!" Wenn dem Angreifer der User-Account völlig reicht, da dort alle privaten Daten zu finden sind.



  • NiceJava schrieb:

    Warum man Webapps nicht mehr neu entwickelt und Frameworks einsetzt?

    Davon war nie die Rede. Du hast ja nur geschrieben, "keine entwickelt Webapps". Das beinhaltet auch, dass man keine Webapps in Java oder PHP mit Frameworks entwickelt 😉 Natürlich würde ich Webapps auch in einer entsprechenden Sprache (J2EE oder Scriptsprache, wenn das was kleineres ist) mit entsprechenden Frameworks entwickeln.

    Warum ich das mal in C++ gebraucht habe, hab ich ja schon geschrieben. Da führt kein Weg vorbei, die Software musste in C++ geschrieben werden und das Webfrontend hat im Endeffekt nur eine Statustabelle angezeigt, mehr nicht.



  • Achso, na eine Tablle anzeigen als Webapp zu bezeichnen ist aber auch grenzwertig^^ Webapps sind meist um einiges komplexer als so ein Desktop-Programm in C++ mit GUI.



  • Mechanics schrieb:

    Kannst du was über die Verbreitung von tntnet erzählen? Benutzt das jemand, benutzt das jemand in kommerziellen Anwendungen? Habs schon mal gesehen, als ich sowas für die Arbeit gesucht habe, hatte mich auf den ersten Blick aber nicht so überzeugt.

    Die Verbreitung ist leider gering. Es ist sehr schwer, die Leute davon zu überzeugen, dass C++ geeignet ist, um Webapplikationen zu schreiben. Es gibt ein paar Projekte, wo es erfolgreich im Einsatz ist.

    Viele meinen, Programme, die in C++ geschrieben sind, sind instabil und haben buffer overflows und memory leaks. Ich denke, viele hier im C++-Forum wissen es besser. C++ ist eine ausgereifte und extrem bewährte Sprache, die mit Tntnet auch für die Webprogrammierung eingesetzt werden kann.

    Für Deinen Anwendungsbereich, wo eine Applikation in C++ geschrieben ist und eine Weboberfläche benötigt, ist tntnet natürlich sehr geeignet. Da harmoniert die Weboberfläche viel besser mit dem übrigen System als das bei PHP oder Java der Fall wäre.



  • Wie läuft denn dein Framework, als Apache-Modul? Oder hast auch mal so eben einen super sicheren Webserver neben dem Framework geschrieben?



  • @NiceJava: Ich bin auch kein C++ Fan, aber deine Hochnäsigkeit, die immer zwischen den Zeilen herauslesbar ist, geht mir wirklich auf den Keks! 👎

    L. G.,
    IBV





  • @IBV
    Gut, Ignoranz würde mich mehr treffen als Hass.

    @Thema C++-Web-Framework
    Zu den Sicherheitsbedenken kommt noch die Tatsache, dass viele sich einfach scheuen ein Ein-Mann-Projekt zu benutzen, wo rein gar nichts dahinter steht. Das kann einer Firma am Ende die Insolvenz kosten, wenn der eine Entwickler mal keinen Bock mehr hat oder verstorben ist. Das hat schon seinen Grund, warum das Projekt mehr als Machbarkeitsstudie geendet ist, als als ernsthafte Alternative zu den anderen bewährten Technologien. Ich meine, um eine Statustabelle hinzu rotzen wird es reichen, aber einen Port auf Grundlage eines Ein-Mann-Webserver-Framworks für alle zu öffnen ist schon mutig.



  • NiceJava schrieb:

    @IBV
    Gut, Ignoranz würde mich mehr treffen als Hass.

    @Thema C++-Web-Framework
    Zu den Sicherheitsbedenken kommt noch die Tatsache, dass viele sich einfach scheuen ein Ein-Mann-Projekt zu benutzen, wo rein gar nichts dahinter steht. Das kann einer Firma am Ende die Insolvenz kosten, wenn der eine Entwickler mal keinen Bock mehr hat oder verstorben ist. Das hat schon seinen Grund, warum das Projekt mehr als Machbarkeitsstudie geendet ist, als als ernsthafte Alternative zu den anderen bewährten Technologien. Ich meine, um eine Statustabelle hinzu rotzen wird es reichen, aber einen Port auf Grundlage eines Ein-Mann-Webserver-Framworks für alle zu öffnen ist schon mutig.

    du sprichst immer von "sicherheitsbedenken" , ich habe dich in meinem vorherigen post schon darauf angesprochen das dies meiner meinung nach sprachunabhänig ist...
    man kann in jeder sprache "sicherheitsbedenklich" programmieren...
    falls du das überhaupt meinst...
    also mal ganz konrekt wie kommst du darauf das PHP JAVA sicherer sind?
    was ist für dich überhaupt "sicherheit"? was verstehst du darunter?

    ganz ehrlich man kann in jeder sprache scheiße zusammen code, mit vielen sicherheitskritischen oder sogar lücken...

    soweit ich weiß sollte man wenigstens ein sicherheitsaudit erstellen sofern man sicherheitskritische anwendungen entwickelt... auch zur eigenen rechtlichen absicherung 😉 ... -> dazu trägt auch TDD bei... falls du grob fahrlässighandelst haftest du vollständig... (oder das unternehmen)

    und wer an tests spart zahlt am ende doppelt zur fehlerbehebung... (TDD) dies hat sich erfahrungs gemäß auch schon bewahrheitet!
    ich muss auch sagen das deine posts für mich den eindruck machen als wenn du nicht wirklich ahnung von c++ hast und hier nur wilde behauptungen aufstellst...
    wahrscheinlich auch nur begrenzt in PHP und JAVA... 🙄

    es hat eigentlich jede sprache ihre semantischen vor- und nachteile...
    was du daraus machst ist dir(oder dem programmierer) überlassen...
    deswegen halte ich es für gewagt und ein zeichen für fehlende erfahrung zu sagen PHP und JAVA sind "sicherer" als i.was anderes ...!! (falls du mich hier überzeugen willst gib mir bitte quelle? hab ich auch schonmal nach gefragt...)

    ich kann auch genau so eine behauptung aufstellen:
    "ich wette es gibt merh java und php lücken in webanwendungen als bei denen in c++ geschrieben sind... 😉 "

    -> klar weils einfach viel weniger sind! 😃

    merkst du wie dehnbar schon alleine nur das ist...
    von dem begriff "sicherheit" wie du ihn andauernd benutzt mal ganz zu schweigen...
    ich wette auch das du keine ahnung hast um was für sicherheitslücken es überhaupt gehen könnte... und weil du solche statements i.wo gelesen hast wiederholst du das einfach stumpf ohne drüber nachzudenken... was der begriff "sicherheit" alles umfassen kann und das auch tut...!
    also schon daran erkennt man meiner meinung nach das du keine ahnung hast was du redest ...
    und es ist sicherlich auch schwierig für leute die keine ahnung haben was sie tun zuerkennen wo evt. lücken entstehen... und das hat für mich nix mit einer programmiersprache zu tun... 😉
    --> ist der code gut gibts keine lücken 😉 egal ob php, java oder c++ ...
    ist er dies nicht, oder der programmierer macht sich keine gedanken darüber gibt es auch in php und java fallstricke die die "tore öffnen" 😃 ...



  • @LOLK: Etwas von Grund auf neu zu programmieren, ist tatsächlich riskant. Das hat wenig mit der Wahl der Programmiersprache zu tun, sondern mit konzeptionelle Sicherheitslücken wie SQL Injection, XSS etc.
    Frameworks und Libraries schützen hier von Haus aus. Java hat hier viel zu bieten.

    L. G.,
    IBV



  • IBV schrieb:

    @LOLK: Etwas von Grund auf neu zu programmieren, ist tatsächlich riskant. Das hat wenig mit der Wahl der Programmiersprache zu tun, sondern mit konzeptionelle Sicherheitslücken wie SQL Injection, XSS etc.
    Frameworks und Libraries schützen hier von Haus aus. Java hat hier viel zu bieten.

    L. G.,
    IBV

    - ich habe ja nicht davon gesprochen ein framwork/api neu zuentwickeln...! (eigentlich nicht... ) -> außer man weiß warum sollte man das rad natürlich nicht neu erfinden... darüber nachdenken sollte man trozdem 😉 ...

    - na ja SQL-Injektion und XSS sind ja keine probleme die sich durch frameworks vermeiden lassen... (also zumindest nicht das ich wüsste... vll in manchen fällen aber nicht immer und verlassen würde ich mich darauf einfach so auch nicht... 😃 ) -> evt. gibt es auch in den apis/frameworks lücken? und du übernimmst sie einfach in deinen code und denkst "ist ja ein framework" die werdes schon können- "ich bin sicher" ... 😃
    deswegen gibt es ja soviele XSS und SQL-Injektion lücken...
    auch auf großen und gestandenen IT-Unternehmensseiten 😉 , wie die news ja immer wieder zeigen...

    - außerdem was willst machen wenn du ein problem lösen willst wofür es keine api oder framework gibt? 😕 -> framework/api entwickeln (also würde ich zumindest machen... )

    - es gibt auch in PHP, Python, C++, JAVA frameworks apis die sicherheitskritische angewendet werden können, oder das von haus aus sind...
    ich denke so etwas ist schwierig zu verallgemeinern...

    das was ich eig sagen wollte :
    " sicherheit hat meiner meinung nach nix mit der verwendeten sprache zu tun, sondern mit den fähigkeiten der entwickler oder admins die sicherheitskritischen codeteile so gut wie möglich abzusichern und ein missbrauch zu verhindern... " -> oder diese ganz vermeiden...
    vll auch noch testern die ggf. lücken erkennen und schließen...

    und auch in JAVA, PHP, PYTHON frameworks werden regelmäßig lücken geschlossen... und ich kenne kaum einen PHP entwickler der immer auf dem neusten stand ist... 😉
    also ist das in meinen augen halt einfac schlicht nicht an der sprache "erkennbar/ differenzierbar"!

    aber wer weiß am ende sind wir alle zauberer und sicher ist eh alles was funktioniert 😉 ...
    es lässt sich ja schon darüber streiten ob es überhaupt eine klar definierbare "sicherheit" gibt... 🙄
    geschweige denn diese "sicherheit" an einer programmiersprache ausmachen zuwollen ist meiner meinung nach nicht möglich... 😉

    fool with a tool, is only a bigger fool! 😉



  • LOLK schrieb:

    - na ja SQL-Injektion und XSS sind ja keine probleme die sich durch frameworks vermeiden lassen...

    Doch, außer es gibt eine Lücke im Framework/Lib. Sicherheit ist auch ein Aspekt die Frameworks/Libs behandeln.

    Und doch: Manche Sprachen sind sicherer als andere. Wenn eine Sprache keine Zeiger zur Verfügung stellt, hast du schon mal einen Faktor weniger. Stellt eine Sprache dann auch noch gute Standardlibs bereit, hast du wieder einen Faktor weniger, weil du z. B. eher zu Vektoren greifst, die dynamisch wachsen können anstatt zu Arrays und realloc. Bietet eine Sprache eine bessere Typsicherheit --> wieder ein Faktor.
    Sind nur ein paar Beispiele...

    L. G.,
    IBV



  • tntnet schrieb:

    Für Deinen Anwendungsbereich, wo eine Applikation in C++ geschrieben ist und eine Weboberfläche benötigt, ist tntnet natürlich sehr geeignet. Da harmoniert die Weboberfläche viel besser mit dem übrigen System als das bei PHP oder Java der Fall wäre.

    Ja, das wäre durchaus geeignet gewesen und ich hätts auch genommen. Ich hab mich dagegen entschieden, weil wir auch selber was ähnliches/ausbaufähiges hatten. Das war zwar nicht wirklich gut, aber das wurde eh schon benutzt und wir habens im Griff. Also hab ich das entsprechend ausgebaut und verwendet. Sonst hätt ich tntnet genommen. Ich hätts aber auch genommen, wenn mich das auf den ersten Blick sofort überzeugt hätte 😉 Und die Beispiele schauen nicht viel anders aus, als das wir auch haben.

    NiceJava schrieb:

    Achso, na eine Tablle anzeigen als Webapp zu bezeichnen ist aber auch grenzwertig^^

    Hab ich das als Webapp bezeichnet? Weiß ich nicht mehr, wahrscheinlich weil alle von Webapps geredet haben. Es ist eine Webapp, weil man im Intranet mit einem Browser drauf zugreifen können soll.

    NiceJava schrieb:

    Oder hast auch mal so eben einen super sicheren Webserver neben dem Framework geschrieben?

    Das ist nicht der Punkt. Wir haben auch einen eigenen Webserver geschrieben und verwenden den. Und ich bin mir ziemlich sicher, dass er sicher ist 😉 Das ist nicht so schwierig, wie du dir das vorstellst. Apache ist sehr komplex und unüberschaubar und auch noch in C geschrieben. Unser Webserver ist viel viel kleiner und in C++ geschrieben. Ich bin mir sehr sicher, dass im Parser usw. keine Buffer Overflows, Format String oder sonstige Fehler sind. Da wirst du keine Sicherheitslücken finden. Und da haben schon zig Leute drübergeschaut. Ansonsten hat er nichts und braucht nichts. Keine Plugins, keine Sicherheitsprüfungen, kein CGI (bzw. wir können dann schon auch was auf dem Server ausführen, aber das ist keine generische Schnittstellen, wir habens im Griff). Das ist sehr viel einfacher und weniger fehleranfällig als beim Apache. Und dann gibts natürlich solche Sachen, wie SSL. Wir verwenden OpenSSL und waren auch von dem Heartbleed Bug betroffen. Genauso wie der Apache eben. Das haben wir so oder so nicht im Griff. Dafür waren wir im Gegensatz zum Apache z.B. nicht von der Shellshock Lücke betroffen.
    Der Punkt wäre gewesen, ob wir auch tntnet vertrauen 😉 Ich weiß, warum wir unserem Webserver vertrauen. Aber bei einem kleinen Open Source Projekt wär das natürlich fraglich, ob man dem ohne weiteres vertraut.



  • Die Sicherheitsbedenken haben nichts mit C++, Java oder PHP zu tun. Nur sind die Sprachen und die größeren Frameworks seit Jahre etabliert und getestet. In PHP kann man natürlich auch viel Mist programmieren, genau wie in Java und C++. Ich würde einen neuem Framework, was von einem oder zwei Mann entwickelt wird auch in PHP oder Java nicht trauen, erst recht nicht wenn dann auch noch der Webserver mal eben so dazu programmiert wurde. Ein Webserver ist noch einmal eine Hausnummer für sich, der muss sich auch erst mal über Jahre unter Massenattacken etc. bewähren, bevor man ihn als sicher einstufen kann und sicher sind selbst die nie 100%, dann wird es Software aus einer Ein-Mann-Klitsche erst recht nicht sein.

    Wenn man solche Projekte wie tntnet für das Intranet oder für eine kleine Tabelle nutzt ist das nicht das große Problem. Einen Shop, oder selbst einen Blog, würde ich darauf aber nicht laufen lassen.

    Der Name Tntnet ist schon gut gewählt, man sollte sehr vorsichtig sein, damit es einem nicht um die Ohren fliegt.



  • NiceJava schrieb:

    Wie läuft denn dein Framework, als Apache-Modul? Oder hast auch mal so eben einen super sicheren Webserver neben dem Framework geschrieben?

    Ich glaube nicht, dass Du eine Antwort von mir hören willst. Also lasse ich das einfach.





  • Hört sich gut an und da steht auch was dahinter.


Anmelden zum Antworten