• Hallo liebe Userinnen und User,

    nach bereits längeren Planungen und Vorbereitungen sind wir nun von vBulletin auf Xenforo umgestiegen. Die Umstellung musste leider aufgrund der Serverprobleme der letzten Tage notgedrungen vorverlegt werden. Das neue Forum ist soweit voll funktionsfähig, allerdings sind noch nicht alle der gewohnten Funktionen vorhanden. Nach Möglichkeit werden wir sie in den nächsten Wochen nachrüsten. Dafür sollte es nun einige der Probleme lösen, die wir in den letzten Tagen, Wochen und Monaten hatten. Auch der Server ist nun potenter als bei unserem alten Hoster, wodurch wir nun langfristig den Tank mit Bytes vollgetankt haben.

    Anfangs mag die neue Boardsoftware etwas ungewohnt sein, aber man findet sich recht schnell ein. Wir wissen, dass ihr alle Gewohnheitstiere seid, aber gebt dem neuen Board eine Chance.
    Sollte etwas der neuen oder auch gewohnten Funktionen unklar sein, könnt ihr den "Wo issn da der Button zu"-Thread im Feedback nutzen. Bugs meldet ihr bitte im Bugtracker, es wird sicher welche geben die uns noch nicht aufgefallen sind. Ich werde das dann versuchen, halbwegs im Startbeitrag übersichtlich zu halten, was an Arbeit noch aussteht.

    Neu ist, dass die Boardsoftware deutlich besser für Mobiltelefone und diverse Endgeräte geeignet ist und nun auch im mobilen Style alle Funktionen verfügbar sind. Am Desktop findet ihr oben rechts sowohl den Umschalter zwischen hellem und dunklem Style. Am Handy ist der Hell-/Dunkelschalter am Ende der Seite. Damit sollte zukünftig jeder sein Board so konfigurieren können, wie es ihm am liebsten ist.


    Die restlichen Funktionen sollten eigentlich soweit wie gewohnt funktionieren. Einfach mal ein wenig damit spielen oder bei Unklarheiten im Thread nachfragen. Viel Spaß im ngb 2.0.

cryptnote.net - Versende verschlüsselte, anonyme, selbstzerstörende Nachrichten

coffeerhyder

Ärgert gerne BoerseTOMods

Registriert
11 März 2015
Beiträge
241
Re: cryptnote.ch - Versende verschlüsselte, anonyme, selbstzerstörende Nachrichten

Nett und simpel.
Wäre noch praktischer, wenn man die Optionen hätte, die z.B. privnote bietet.

Grüße
 

one

Querulant

Registriert
21 Juli 2013
Beiträge
3.705
Ort
ja
Re: cryptnote.ch - Versende verschlüsselte, anonyme, selbstzerstörende Nachrichten

Du weißt also gar nicht ob der Hoster die Zugriffe auf den Server speichert. Und trotzdem sagst du, der Server speichert keine IP-Adressen. Das sagt mir genug um dein Angebot nicht ernst zu nehmen.

Fachmännisch ausgedrückt: Du weißt nicht genau was du da machst.
 

ano.nym

gesperrt

Registriert
31 März 2020
Beiträge
206
  • Thread Starter Thread Starter
  • #7
Re: cryptnote.ch - Versende verschlüsselte, anonyme, selbstzerstörende Nachrichten

Dann nutzen Sie das Angebot halt nicht, wenn Sie mir nicht vertrauen. Fachmännisch ausgedrückt: Ich habe eine andere Formulierung gewählt, sodass klar ist was gemeint ist.
 

one

Querulant

Registriert
21 Juli 2013
Beiträge
3.705
Ort
ja
Re: cryptnote.ch - Versende verschlüsselte, anonyme, selbstzerstörende Nachrichten

Wenn du nicht mit Kritik umgehen kannst, dann solltest du keine Werbung machen. Und wenn du keine Kontrolle über den kompletten Server hast, dann darfst du nicht behaupten, dass der Server nicht loggt. Wenn du das doch machst, dann wundere dich auch nicht über entsprechende Kommentare. Bin ich im Kindergarten gelandet oder was?
 

eraser

Stinkstiefel

Registriert
21 Juli 2013
Beiträge
3.768
Re: cryptnote.ch - Versende verschlüsselte, anonyme, selbstzerstörende Nachrichten

Hast du die Erlaubnis deines Hosters, dass Pentests auf deine IP laufen dürfen? Die ist nämlich von Nöten. Primär wird nämlich die Infrastruktur des Hosters angegriffen und damit auch alle anderen Benutzer auf deiner Kiste und des Anbieters. So wie es oben auf deiner Seite steht, möchte ich vermuten, du bewegst dich da auf sehr dünnen Eis.
 

one

Querulant

Registriert
21 Juli 2013
Beiträge
3.705
Ort
ja
Re: cryptnote.ch - Versende verschlüsselte, anonyme, selbstzerstörende Nachrichten

Ich frage jetzt nicht ob das mit dem Penetrationstest wirklich ernst gemeint ist. :D
 

sia

gesperrt

Registriert
26 März 2015
Beiträge
5.931
Ort
FFM (NSFW)
Re: cryptnote.ch - Versende verschlüsselte, anonyme, selbstzerstörende Nachrichten

Hm, die Seite funktioniert bei mir leider nicht mehr. In der Fehlerkonsole kommt nur:

Code:
TypeError: block is undefinedcrypto-js.js:3668:18
    xorBlock https://cryptnote.ch/js/crypto-js/crypto-js.js:3668
    processBlock https://cryptnote.ch/js/crypto-js/crypto-js.js:3611
    _doProcessBlock https://cryptnote.ch/js/crypto-js/crypto-js.js:3783
    _process https://cryptnote.ch/js/crypto-js/crypto-js.js:622
    _doFinalize https://cryptnote.ch/js/crypto-js/crypto-js.js:3798
    finalize https://cryptnote.ch/js/crypto-js/crypto-js.js:3460
    encrypt https://cryptnote.ch/js/crypto-js/crypto-js.js:3982
    encrypt https://cryptnote.ch/js/crypto-js/crypto-js.js:3498
    <anonym> https://cryptnote.ch/js/script.js:28

Was ist da los? Kannst du die Docs der von dir verwendeten Libraries nicht lesen?
 

darksider3

NGBler

Registriert
18 Sep. 2013
Beiträge
392
Ort
/dev/sda
Re: cryptnote.ch - Versende verschlüsselte, anonyme, selbstzerstörende Nachrichten

Feedback, gerne.

1) Trustpilot? Wat????
2) Du benutzt crypto.getRandomValues() für einen AES-Key, was auch in den Usage-Notes der Funktion als unsicher dargestellt wird. Dafür lieber die SubtleCrypto.generateKey(), weil es garantiert in einem sicheren Kontext läuft.
3) Wieso alternierst Du zwischen getRandomValues und randomBytes? Im Vergleich, randomBytes ist geeignet als getRandomValues() für AES-Keys, weil es prinzipiell nur ein Wrapper um OpenSSLs RAND()-Funktion ist, und garantiert im sicheren Kontext läuft
4) Wieso ist "CryptoJS" in der selben JS-File wie dein Code? Spricht eher für schlechte Modularaisierung
5) "CryptoJS" ist unnötig, wieso benutzt Du nicht die Browser-Eigenen Funktionen für AES/DES/Random-Values?
6) Du hast keine Ahnung ob Nitrado IPs speichert? Toll. Besorg Dir nen *eigenen* Server, wenn Du willst das Leute dein Zeug benutzen
7) Du vergisst bei manchen URLs mit PHP das Escaping
8) Wieso kriegen wir die Source vom Servercode nicht? Angst, das Leute dich "beklauen"? Wieso dürfen wir uns kein eigenes Bild davon machen, was Du dort tust, wo es doch wirklich recht trivial ist, vom Aufwand her?
9) Wieso benutzt Du Ajax? Vollkommen unnötig in dem Fall hier, weil Du damit effektiv Leute ausschließt, die kein JS ausführen lassen wollten, und daher folgt dann auch...
10) .... Javascript-Vorraussetzungen für XHR
11)
Code:
            message = message.replace(/(?:\r\n|\r|\n)/g, "<br>");
Wieso machst Du das Clientside? Das ist absolut sinnfrei.
12)
Code:
      function clock() {
        submitBtn.disabled = "disabled";
        var myTimer = setInterval(myClock, 1000);
        var c = 10;
        ++c;

        function myClock() {
         submitBtn.value = --c;
         if (c == 0) {
           clearInterval(myTimer);
           submitBtn.value = "Verschlüsseln & Link abrufen";
           submitBtn.removeAttribute("disabled");
           document.getElementById("input1").value = "";
         }
        }
      }
Was soll das? Sinnfrei.
13) Nochmal, trustpilot????
Code:
<div class="trustpilot-widget" data-locale="de-DE" data-template-id="56278e9abfbbba0bdcd568bc" data-businessunit-id="5e91a72bd83fbe00011c3b87" data-style-height="52px" data-style-width="100%">
lol...
14)
Code:
  <!--
  	<div id="advertise">
	<script type="text/javascript">
	atOptions = {
		'key' : '8872e87e2b5edb7cff867182daae804a',
		'format' : 'iframe',
		'height' : 90,
		'width' : 728,
		'params' : {}
	};
	document.write('<scr' + 'ipt type="text/javascript" src="http' + (location.protocol === 'https:' ? 's' : '') + '://www.hiprofitnetworks.com/8872e87e2b5edb7cff867182daae804a/invoke.js"></scr' + 'ipt>');
	</script>
	</div>
  <div id="advertise2">
    <script type="text/javascript">
      atOptions = {
        'key' : '894a622dc1504548d28b10e8da38a9a2',
        'format' : 'iframe',
        'height' : 60,
        'width' : 468,
        'params' : {}
      };
      document.write('<scr' + 'ipt type="text/javascript" src="http' + (location.protocol === 'https:' ? 's' : '') + '://www.hiprofitnetworks.com/894a622dc1504548d28b10e8da38a9a2/invoke.js"></scr' + 'ipt>');
    </script>
  </div>
Na danke. Sehr freundlich...

Fazit, 15 Minuten drüber gucken: Refactor and migration to server needed, bevor das auch nur irgendwer für irgendwas anfässt, wofür man solch einen Service nutzen würde.
 

sia

gesperrt

Registriert
26 März 2015
Beiträge
5.931
Ort
FFM (NSFW)
Re: cryptnote.ch - Versende verschlüsselte, anonyme, selbstzerstörende Nachrichten

Fazit, 15 Minuten drüber gucken: Refactor and migration to server needed, bevor das auch nur irgendwer für irgendwas anfässt, wofür man solch einen Service nutzen würde.

Du hast den Quellcode vergessen. Den Quellcode benötigt man für ein eingehendes Whitebox-Audit ja auch.
 

ano.nym

gesperrt

Registriert
31 März 2020
Beiträge
206
  • Thread Starter Thread Starter
  • #18
Re: cryptnote.ch - Versende verschlüsselte, anonyme, selbstzerstörende Nachrichten

Feedback, gerne.

1) Trustpilot? Wat????
Ok, ich machs mal raus. Danke.
2) Du benutzt crypto.getRandomValues() für einen AES-Key, was auch in den Usage-Notes der Funktion als unsicher dargestellt wird. Dafür lieber die SubtleCrypto.generateKey(), weil es garantiert in einem sicheren Kontext läuft.
Nein, ich benutze mittlerweile das hier:
[src=javascript]
let password = Math.random().toString(36).substr(2, 8);
let salt = CryptoJS.lib.WordArray.random(128 / 8);
let key = CryptoJS.PBKDF2(password, salt, {
keySize: 256 / 32
});
var encrypted = CryptoJS.AES.encrypt(message, key.toString());
[/src]
3) Wieso alternierst Du zwischen getRandomValues und randomBytes? Im Vergleich, randomBytes ist geeignet als getRandomValues() für AES-Keys, weil es prinzipiell nur ein Wrapper um OpenSSLs RAND()-Funktion ist, und garantiert im sicheren Kontext läuft
Benutze ich ja nicht mehr.
4) Wieso ist "CryptoJS" in der selben JS-File wie dein Code? Spricht eher für schlechte Modularaisierung
Es befindet sich nicht in der selben Datei, vielleicht hast du eine alte Version der JavaScript Datei in deinem Cache?
5) "CryptoJS" ist unnötig, wieso benutzt Du nicht die Browser-Eigenen Funktionen für AES/DES/Random-Values?
Weil CryptoJS viel komfortabler ist. Ich benutze ein Fork von CryptoJS, der up to date gehalten wird.
6) Du hast keine Ahnung ob Nitrado IPs speichert? Toll. Besorg Dir nen *eigenen* Server, wenn Du willst das Leute dein Zeug benutzen
Danke, das wäre eine Überlegung wert, kostet halt nur das 3 bis 4-fache. Momentan sind die Kosten ziemlich überschaubar.
7) Du vergisst bei manchen URLs mit PHP das Escaping
Wo?
8) Wieso kriegen wir die Source vom Servercode nicht? Angst, das Leute dich "beklauen"? Wieso dürfen wir uns kein eigenes Bild davon machen, was Du dort tust, wo es doch wirklich recht trivial ist, vom Aufwand her?
Natürlich ist es kein großer Aufwand ein ähnliches Projekt zu starten, aber ich möchte die Mechanismen nicht offen legen. Aus Sicherheitsgründen und weil viele mit dem Code sowieso nichts anfangen können, die meisten User meines Projekts kennen sich mit PHP nicht aus.
9) Wieso benutzt Du Ajax? Vollkommen unnötig in dem Fall hier, weil Du damit effektiv Leute ausschließt, die kein JS ausführen lassen wollten, und daher folgt dann auch...
Da gebe ich dir recht, vorallem wenn Leute den Torbrowser benutzen mit NoScript. Da es aber hübscher ist mit JavaScript zu arbeiten, behalte ich das bei. Außerdem möchte ich eine Animation einblenden, wenn der AJAX request ausgeführt wird. Das kommt noch.
10).... Javascript-Vorraussetzungen für XHR
Mein PHP Skript handelt das gut und es sollten auch keine Probleme auftreten.
11)
Code:
 message = message.replace(/(?:\r\n|\r|\n)/g, "<br>");
Wieso machst Du das Clientside? Das ist absolut sinnfrei.
Denk mal ein bisschen über diese Aussage nach, warum mache ich es wohl client-seitig?
12)
Code:
 function clock() {
submitBtn.disabled = "disabled";
var myTimer = setInterval(myClock, 1000);
var c = 10;
++c;

function myClock() {
submitBtn.value = --c;
if (c == 0) {
clearInterval(myTimer);
submitBtn.value = "Verschlüsseln & Link abrufen";
submitBtn.removeAttribute("disabled");
document.getElementById("input1").value = "";
}
}
}
Bevor man eine weitere Nachricht abschicken kann, soll man 10 Sekunden warten. Damit nicht gespammt wird. Serverseitig sind 10 Nachrichten innerhalb von 10 Minuten erlaubt.
13) Nochmal, trustpilot????
Code:
<div class="trustpilot-widget" data-locale="de-DE" data-template-id="56278e9abfbbba0bdcd568bc" data-businessunit-id="5e91a72bd83fbe00011c3b87" data-style-height="52px" data-style-width="100%">
lol...
Ja, wird entfernt.
14)
Code:
 <!--
<div id="advertise">
<script type="text/javascript">
atOptions = {
'key' : '8872e87e2b5edb7cff867182daae804a',
'format' : 'iframe',
'height' : 90,
'width' : 728,
'params' : {}
};
document.write('<scr' + 'ipt type="text/javascript" src="http' + (location.protocol === 'https:' ? 's' : '') + '://www.hiprofitnetworks.com/8872e87e2b5edb7cff867182daae804a/invoke.js"></scr' + 'ipt>');
</script>
</div>
<div id="advertise2">
<script type="text/javascript">
atOptions = {
'key' : '894a622dc1504548d28b10e8da38a9a2',
'format' : 'iframe',
'height' : 60,
'width' : 468,
'params' : {}
};
document.write('<scr' + 'ipt type="text/javascript" src="http' + (location.protocol === 'https:' ? 's' : '') + '://www.hiprofitnetworks.com/894a622dc1504548d28b10e8da38a9a2/invoke.js"></scr' + 'ipt>');
</script>
</div>
Na danke. Sehr freundlich...
Die Werbung ist auskommentiert.

Fazit, 15 Minuten drüber gucken: Refactor and migration to server needed, bevor das auch nur irgendwer für irgendwas anfässt, wofür man solch einen Service nutzen würde.

Danke.
 

sia

gesperrt

Registriert
26 März 2015
Beiträge
5.931
Ort
FFM (NSFW)
Re: cryptnote.ch - Versende verschlüsselte, anonyme, selbstzerstörende Nachrichten

Weil CryptoJS viel komfortabler ist. Ich benutze ein Fork von CryptoJS, der up to date gehalten wird.
Welchen nutzt du denn? Du hast ja passenderweise den Header entfernt.

Danke, das wäre eine Überlegung wert, kostet halt nur das 3 bis 4-fache. Momentan sind die Kosten ziemlich überschaubar.
Du hast bei uns im Chat noch mit deinem Gehaltszettel gewedelt, die 10€/Monat kannste doch gerade noch ausgeben, oder? Tankst du halt einmal weniger deinen 5er BMW voll.

Schwer zu sagen, du legst deinen Code nicht offen. Kleiner Tipp: User Input ist böse.

ich möchte die Mechanismen nicht offen legen. Aus Sicherheitsgründen
Security by obscurity ist bei sowas aber echt bescheuert. Alle relevanten Projekte mit Fokus auf Sicherheit erlauben Audits.

weil viele mit dem Code sowieso nichts anfangen können, die meisten User meines Projekts kennen sich mit PHP nicht aus.
Bevor du deinen Startpost editiert hast, wolltest du noch, dass wir das pentesten bzw bewerten? Angst, wir würden rausfinden, dass du alles nur copy&pasted hast?

Da dein Hoster Pentests offensichtlich nicht erlaubt, gib uns doch einfach den Code.

Da gebe ich dir recht, vorallem wenn Leute den Torbrowser benutzen mit NoScript. Da es aber hübscher ist mit JavaScript zu arbeiten, behalte ich das bei. Außerdem möchte ich eine Animation einblenden, wenn der AJAX request ausgeführt wird. Das kommt noch.
Kennst du CSS-Animationen? Warum nutzt du sie nicht? Ist die Dokumentation zu schwer für dich zu lesen?

Denk mal ein bisschen über diese Aussage nach, warum mache ich es wohl client-seitig?
Erklär uns das doch mal. Oder kannst du es nicht?

Ich kann dein Level jetzt ungefähr einschätzen, danke für das Feedback.
Und, was ist sein "Level"?
 

BurnerR

Bot #0384479

Registriert
20 Juli 2013
Beiträge
5.347
Re: cryptnote.ch - Versende verschlüsselte, anonyme, selbstzerstörende Nachrichten

Hoffentlich verwendet niemand den Service weil er die Werbung hier auf dem ngb gelesen hat aber den Thread dann nicht verfolgt hat.
 
Oben