Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
memoro — Memoro: Ein detaillierter Heap-Profiler | Kitploit
Tools/GitHubGitHub/epfl-vlsc/memoro
Dynamische Analyse (Sandboxing)SpeicherforensikDebuggerBinäranalyse
GitHubepfl-vlsc/memoro

memoro

Memoro: Ein detaillierter Heap-Profiler

Repository anzeigenWebseite
18416vor 5 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Memoro

Memoro ist ein hochdetaillierter Heap-Profiler.

Memoro zeigt Ihnen nicht nur, wo und wann Ihr Programm Heap-Allokationen vornimmt, sondern auch, wie Ihr Programm diesen Speicher tatsächlich genutzt hat.

Memoro sammelt detaillierte Informationen über Zugriffe auf den Heap, einschließlich Lese- und Schreibvorgänge auf den Speicher und deren Zeitpunkte, um Ihnen eine Vorstellung davon zu geben, wie effizient Ihr Programm den Heap-Speicher nutzt.

Memoro enthält eine Visualisierungsanwendung, die all diese Informationen in Bewertungen und Indikatoren destilliert, um Ihnen bei der Identifizierung von Problembereichen zu helfen.

alt text

Für detailliertere Informationen zur Funktionsweise von Memoro siehe hier

Erstellen & Installieren

Die folgenden Schritte beschreiben eine Schnellstartanleitung zur Verwendung von Memoro. Detaillierte Einrichtungsanweisungen finden Sie hier. Eine Anleitung zur Verwendung von Memoro finden Sie hier.

Erstellen des instrumentierten Compilers

Zuerst müssen Sie eine lokale Version von LLVM/Clang erstellen, damit Sie Ihren Code mit Memoro-Instrumentierung kompilieren können. Vorgefertigte Releases sind noch nicht verfügbar, aber wenn genug Leute mich nerven, werde ich sie vielleicht hier hosten.

Befolgen Sie die LLVM/Clang-Bauanleitung hier, verwenden Sie jedoch die unten aufgeführten spezifischen Repositories. Memoro befindet sich noch nicht im LLVM/Clang-Entwicklungszweig.

Es wird empfohlen, die Git-Mirror-Repositories anstelle von SVN zu verwenden. Für das Haupt-LLVM-Repo, das Clang-Repo und das CompilerRT-Repo verwenden Sie die Memoro-Versionen:

LLVM

Clang

CompilerRT

Diese Repositories sollten standardmäßig auf den Branch memoro_80 eingestellt sein.

Erstellen der Visualizer C++ Bibliothek

Klonen Sie dieses Repo mit git clone [email protected]:epfl-vlsc/memoro.git

Wechseln Sie in das Verzeichnis.

$ cd memoro

Führen Sie npm install aus, um sicherzustellen, dass alle JS-Abhängigkeiten vorhanden sind. Sie müssen dann das C++-Datenverarbeitungs-Addon erstellen. Dazu müssen Sie möglicherweise zuerst node-gyp installieren (npm install -g node-gyp) Dann,

root@kitploit:~
cd cpp
node-gyp build --release --target=1.7.9 --arch=x64 --dist-url=https://atom.io/download/electron
cd ..

Das target ist die Electon-Version, die mit der zum Ausführen der Hauptanwendung verwendeten übereinstimmen muss. Passen Sie dies bei Bedarf an. Passen Sie auch arch bei Bedarf an, jedoch habe ich noch nicht auf nicht-*nix x64 Systemen getestet. Es gibt auch ein Makefile, das für die meisten Benutzer funktionieren sollte.

Offensichtlich benötigen Sie einen installierten C++-Compiler, den node-gyp verwenden kann.

Ausführen

Instrumentieren und Ausführen Ihrer Software

Erstellen Sie zuerst die Software, die Sie profilieren möchten, mit dem zuvor erstellten LLVM/Clang. Fügen Sie das Compiler-Flag -fsanitize=memoro hinzu, um die Instrumentierung hinzuzufügen, und optional -fno-omit-frame-pointer, um schöne Stack-Traces zu erhalten. Wenn Sie einen separaten Link-Schritt haben, benötigt dieser möglicherweise auch -fsanitize=memoro, um sicherzustellen, dass die Memoro/Sanitizer-Laufzeitumgebung verlinkt wird. Es wird empfohlen, den LLVM-Symbolizer für Stack-Traces zu verwenden. Setzen Sie die Umgebungsvariable MEMORO_SYMBOLIZER_PATH so, dass sie auf den Speicherort von llvm-symbolizer verweist. Oder legen Sie es einfach in Ihrem PATH ab.

Führen Sie Ihr Programm aus. Nach Abschluss erzeugt die Memoro-Laufzeitumgebung zwei Dateien, *.trace und *.chunks. Diese können mit dem Visualizer geöffnet und angezeigt werden.

Verwenden des Memoro Visualizers

Nach dem Erstellen des C++-Addons kann die App direkt aus dem Repo-Verzeichnis ausgeführt werden

root@kitploit:~
electron .

Datei->Öffnen oder Cmd/Ctrl-O zum Öffnen, navigieren Sie zu und wählen Sie entweder die Trace- oder die Chunk-Datei aus.

Viel Spaß bei der Jagd nach Heap-Problemen :-)

Installieren des Visualizers

Verwenden Sie electron-packager, um den gesamten Code und die Assets in ein Anwendungspaket zu sammeln und zu exportieren.

root@kitploit:~
electron-packager . --overwrite --platform=<platform> --arch=x64 --electron-version=1.7.9 --icon=assets/icons/icon64.icns --prune=true --out=release-builds

Passen Sie wiederum Plattform, Architektur und Electron-Version bei Bedarf an.

Mitwirken

Beiträge sind mehr als willkommen. Bitte reichen Sie einen Pull-Request ein oder nehmen Sie Kontakt auf.

Tool herunterladen