Hey HackerNoon, Kuwguap hier Ich habe Prüfungen in zwei Tagen. Ja, tatsächliche Universitätsprüfungen. Und was denke ich über 24/7? RAWPA(Mein Penetrationstest-Assistent). Mein Leidenschaftsprojekt hat mein Gehirn vollständig gehackt, und ich würde es nicht anders haben. Bevor ich in die Bugs und das neue Feature eintauche, muss ich sagen – ich denke ehrlich gesagt, dass die Nummer eins Fähigkeit in jeder Tech-Karriere Debugging ist. Es geht nicht nur darum, Fehler zu finden; es geht darum, Probleme zu analysieren, zu verstehen und zu lösen.Es ist eine Supermacht.Es ist cool, etwas Neues zu schaffen, aber in der Lage zu sein, zu reparieren, was kaputt ist - sei es Ihr eigener Code oder ein Zielsystem - ist, wo die wahre Magie geschieht. Lassen Sie uns auf jeden Fall in die Fehler und den Wahnsinn eintauchen. Mein erster Fehler: Die „Responsive What?“ UI Ich habe noch nie ein echtes UI/UX-Design vor diesem Projekt gemacht.Ich habe ein paar YouTube-Videos angeschaut, wurde vom sauberen Look von Whimsical (das Werkzeug, das ich für das Wireframing verwendete) inspiriert und begann gerade ... zu zeichnen. Keine Geräteresponsivität. Keine spezifischen Bildschirmgrößen. Nur Rechtecke auf einem Bildschirm. Es sah gut aus auf meinem Entwicklungs-PC, also dachte ich: "Ship it!" Vor ein paar Wochen wies ein Tester zu Recht darauf hin, dass die mobile Ansicht vollständig gebrochen war. Ich verbrachte zwei volle Tage, um diesen Chaos zu lösen und die App wirklich ansprechend zu machen. Der Bug, der RAWPA herunterschloss Abgesehen davon... Vor etwa zwei Tagen bemerkte ich, dass Funktionen auf RAWPA fehlten. Die Methoden wurden nicht geladen und andere Daten fehlten. Ein kurzer Blick auf meine Konsole erzählte die Geschichte: FirebaseError: [code=resource-exhausted]: Quota exceeded. Ich hatte getroffen in einem einzigen Tag. Das ist die gesamte kostenlose Quote auf Firebase. Mit nur 33 Benutzern war dies verrückt. Ich war dumbfounded. Ich könnte entweder einen Tag warten, bis die Quote wieder eingestellt wird, oder ich könnte meinen Detektivhut anziehen und debuggen. 16,000 reads and 20,000 writes Eine Reihe von logischen Bugs, die aus späten Codierungssitzungen geboren wurden. I had created a function that continuously checked Firestore for updates, in case I used my admin panel to disable a methodology. It was a dumb, brute-force way to solve a problem, and it was hammering the database. The Infinite Loop: The new feature I was building needed to save its state. Instead of using for frequent, small updates, I was writing to Firestore on every single change. Why? Because I was sleepy and not thinking straight. Sleepy-Dev Syndrome: localStorage Darüber hinaus lädt die App alle Firestore-Funktionen auf dem Startup ein, was zu verrückten Ladezeiten führte - manchmal bis zu 10 Sekunden.Ich wusste, dass die Fixierung wahrscheinlich mit etwas wie Redis im Cache war, aber ich zögerte. Ich habe es sowieso getan, ich habe es integriert. , fügte die Umgebungsvariablen hinzu, machte ein paar Anpassungen und boom – die Geschwindigkeit verbesserte sich dramatisch. Manchmal wünschte ich, ich hätte mit Next.js angefangen, aber nach einem erfolglosen Versuch, zu migrieren, bleibe ich bei meiner React + Vite-Einstellung und mache es funktionieren. Upstash Redis Das neue Feature, geboren aus einem echten Pentest Also, was war diese neue Funktion, die ich baute, die all das Chaos verursachte? Es begann, während ich an einem Ziel von HackerOne arbeitete. Ich benutzte mein anderes Werkzeug, AAweRT, für Recon und erkannte, dass sich mein Denkprozess seit dem Aufbau von RAWPA komplett verändert hat. Ich hatte 79 Subdomains zu überprüfen. anstatt ein automatisiertes Werkzeug wie Eyewitness zu verwenden, ging ich sie manuell durch (ich weiß, ich mag das Problem). Ich fand interessante Endpunkte und potenzielle Schwachstellen, aber ich hatte keine organisierte Möglichkeit, sie zu verfolgen, ohne meinen Hauptgedanken zu verlieren. Die Einführung der . Hunter's Board Es ist ein Kanban-Stil-Board direkt in RAWPA eingebaut, für die Art und Weise, wie ein Pentester denkt. Sie können Karten für alles erstellen: Domains, Methoden, Ergebnisse, Berichte, Code-Snippets, Tools, Sie nennen es. Ich fand einen unfilterten Suchparameter an einem Endpunkt – einen Umweg des Haupt UTF-8-Filters – und erstellte sofort eine Karte dafür, fügte den Link und meine Notizen hinzu. The Hunter's Board ist jetzt live auf der Website! Sie können es jetzt überprüfen. Als schnelle Aktualisierung habe ich die und Ich muss sie optimieren und einige Backend-Probleme beheben, bevor sie für die erste Zeit bereit sind, und ich möchte, dass die Benutzererfahrung perfekt ist. RAWPA AI Pentest Orchestrator Habe ich erwähnt, dass ich in zwei Tagen Prüfungen habe? Ugh. Ich werde versuchen, ein paar weitere Updates zu posten, bevor ich für das Studium dunkel werde. Bis zum nächsten Mal, denken Sie daran, dass RAWPA ist ein Gemeinschaftsprojekt. Wenn Sie Ideen, Feedback haben oder beitragen möchten, verwenden Sie die Funktion "Beitragen" auf der Website oder verbinden Sie sich mit mir auf Überprüfen Sie das Projekt auf . Linkedin → https://rawpa.vercel.app/ Das Gehirn hat gerade erst begonnen.