GNU/Linux >> Linux Esercitazione >  >> Linux

Errore di compilazione RSAKeyFind (make):rsakeyfind.cpp – "memcmp, read, close" non è stato dichiarato in questo ambito [risolto]

Domanda:

RSAkeytrova un software scritto da Nadia Heninger e J Alex Halderman per scoprire le chiavi RSA memorizzate nella cache dai dump della memoria. Di recente ho fatto riferimento al tuo tutorial per creare un dump della memoria sul mio server Ubuntu. Una volta pronto il dump, ho deciso di trovare la chiave RSA utilizzando il software RSAkeyfind. Ma durante la compilazione del sorgente, make non riuscito con il messaggio di errore "memcmp, read, close non è stato dichiarato in questo ambito '.

Per favore aiutami a risolvere questo errore. Di seguito è riportato il messaggio di errore completo:

root@ubuntu:~/rsakeyfind# make
g++ -Wall -O4   -c -o rsakeyfind.o rsakeyfind.cpp
rsakeyfind.cpp: In function "void FindKeys(unsigned char*, int, unsigned char*, int, bool)":
rsakeyfind.cpp:98:46: error: "memcmp" was not declared in this scope
     if (memcmp(&image[i], target, target_size))
                                              ^
rsakeyfind.cpp: In function "int GetHexByte(int)":
rsakeyfind.cpp:141:26: error: "read" was not declared in this scope
     if (read(fd, &a[0], 1) < 1)
                          ^
rsakeyfind.cpp:144:28: error: "read" was not declared in this scope
       if (read(fd, &a[1], 1) < 1)
                            ^
rsakeyfind.cpp: In function "unsigned char* ReadModulus(char*, unsigned int&)":
rsakeyfind.cpp:173:11: error: "close" was not declared in this scope
   close(fd);
           ^
make: *** [rsakeyfind.o] Error 1
root@ubuntu:~/rsakeyfind#

Soluzione:

Il rsakeyfind.cpp al programma mancano alcuni file di intestazione. Basta aggiungere le righe seguenti a rsakeyfind.cpp e compilalo di nuovo.

#include <fstream>
#include <unistd.h>
#include <string.h>
root@ubuntu:~/rsakeyfind# make
g++ -Wall -O4   -c -o rsakeyfind.o rsakeyfind.cpp
g++ -o rsakeyfind rsakeyfind.o
root@ubuntu:~/rsakeyfind#

Linux
  1. "Le variabili efi non sono supportate su questo sistema"?

  2. Marca:Dh:Comando non trovato?

  3. Come correggere l'errore dell'editor Vi / Vim — E319:Spiacenti, il comando non è disponibile in questa versione

  4. Errore di asserzione mutex Pthread

  5. Errore C++:la sospensione non è stata dichiarata in questo ambito

RT:Request Tracker – Errore:rt-mailgate – Errore del server non definito – 500 Impossibile connettersi o verificare il certificato [Risolto]

Errore di installazione di Python – Spiacenti:UnicodeError:gli escape non supportati non possono caricare il modulo unicodedata [Risolto]

Errore db_sync OpenStack Neutron – Impossibile aggiungere una colonna NOT NULL con valore predefinito NULL [Risolto]

Comando yum-config-manager non trovato [fissare]

c_rehash :Errore comando non trovato – Soluzione

If...else...if Statement (comando non trovato errore)?