also erst mal vielen vielen Dank, für die Sache mit dem "write". Hätte nicht gedacht, dass das so einfache sein würde. Echt super.
Kein Problem, ist auch nur eine der zahlreichen Möglichkeiten!
Und des mit der Binärdatei, es ist nicht das Prob, dass sie sich nicht ausführen lässt. Nur gefällt mir des ding was ich da gezaubert hab langsam echt ganz gut. Und ich wollt des mal en paar aus meiner Klasse zeigen. Nur gibts da so en par pseudo-cracker, die mir dann wieder mein Quellcode verschandeln und so.
Wenn du nur verhindern willst, daß dein Quellcode verändert wird, sollte ein 'chmod" 755' eigentlich Abhilfe schaffen. Mit "root"-Rechten kannst du auch noch mit 'chattr +i' ein Überschreiben verhindern. Mit einem SUID versehenen "Start"-Script könntest du sogar verhindern, daß das eigentliche Script kopiert und verändert wird. Selbst das kopieren und verändern des "Start"-Scriptes würde nichts helfen, weil das SUID-Bit nicht mitkopiert wird.
Mit einer kleinen Funktion, die in regelmäßigen Abständen den MD5-Hash prüft, kannst du bei vielen Script-Kiddies Frustrationen auslösen, da jede noch so kleine Änderung unweigerlich zum Programmabbruch führt.
Das wollte ich halt vermeiden. Ein teil hab ich sogar in C gemacht ( en kleines Quiz) . Da kommen die schonmal nicht ran. Nur das mit den Nachrichten verschicken und so, wäre vielleicht ( für mich halt ) en bissle schwer in C zu machen, da ich noch nicht viel kann.
So wahnsinnig schwer ist es nicht, auch wenn man vorhat die Funktion von 'write' selbst in sein Programm zu implementieren. Wenn du dich allerdings nicht mit der Funktionsweise von 'write' vefassen willst, warum führst du von deinem C/C++ Programm nicht 'write' aus? Das Ausführen von externen Programmen aus dem Eigenen C/C++ Programm sollte eigentlich in fast jeder Doku beschrieben sein! (KDevelop bietet sich da
evtl. an!)
Und mit shell- skripten kann man eigentlich ganz lustige sachen, und vor allem ziemlich einfach machen. Wollte da eigentlich nur mal reinschnuppern, aber jetzt gefällt es mir echt gut.
Dito, aber man sollte hier anmerken, daß Shell-Scripte "Quick & Dirty" sind, Kontrollmechanismen nicht auf den Code zuzugreifen sind zunächst nicht vorgesehen. Evtl. 3rd Party-Tools, die das realisieren kann es durchaus geben, sind mir aber nicht bekannt. Mann könnte aber z.B. Perl verwenden. Das unterstüzt nämlich eine Kompilierung des Programmes von Haus aus. Die Sprache TCL, wäre da wahrscheinlich für dich auch interessant. Für Python hab ich noch nie Zeit gehabt, daher kann ich dir nichts dazu sagen. Mein Tipp ist allerdings: Schreib ein Programm immer in einer Sprache und biete lediglich an, die Plugins in einer Script-Sprache zu schreiben. Das vereinfacht nämlich das Warten des Programmes ungemein!
so long
[-1]
[-1]
He who work root can fell trees and knowledge is no substitute for experience.