Torna indietro   Hardware Upgrade Forum > Software > Linux, Unix, OS alternativi

Intervista a Stop Killing Games: distruggere videogiochi è come bruciare la musica di Mozart
Intervista a Stop Killing Games: distruggere videogiochi è come bruciare la musica di Mozart
Mentre Ubisoft vorrebbe chiedere agli utenti, all'occorrenza, di distruggere perfino le copie fisiche dei propri giochi, il movimento Stop Killing Games si sta battendo per preservare quella che l'Unione Europea ha già riconosciuto come una forma d'arte. Abbiamo avuto modo di parlare con Daniel Ondruska, portavoce dell'Iniziativa Europa volta a preservare la conservazione dei videogiochi
Samsung Galaxy S25 Edge: il top di gamma ultrasottile e leggerissimo. La recensione
Samsung Galaxy S25 Edge: il top di gamma ultrasottile e leggerissimo. La recensione
Abbiamo provato il nuovo Galaxy S25 Edge, uno smartphone unico per il suo spessore di soli 5,8 mm e un peso super piuma. Parliamo di un device che ha pro e contro, ma sicuramente si differenzia dalla massa per la sua portabilità, ma non senza qualche compromesso. Ecco la nostra prova completa.
HP Elitebook Ultra G1i 14 è il notebook compatto, potente e robusto
HP Elitebook Ultra G1i 14 è il notebook compatto, potente e robusto
Pensato per il professionista sempre in movimento, HP Elitebook Ultra G1i 14 abbina una piattaforma Intel Core Ultra 7 ad una costruzione robusta, riuscendo a mantenere un peso contenuto e una facile trasportabilità. Ottime prestazioni per gli ambiti di produttività personale con un'autonomia lontano dalla presa di corrente che permette di lavorare per tutta la giornata
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 18-07-2017, 10:22   #1
Mr Carlo
Senior Member
 
Iscritto dal: Feb 2002
Messaggi: 348
Controllo su seriale hard disk

Ciao a tutti,
ho un programmino (non creato da me) su ubuntu, è una specie di app che gira su tomcat con pagine jsp.
Siccome dovrei sostituire l'SSD della macchina con uno più capiente, ho clonato il disco con clonezilla. L'avvio avviene correttamente ma ad un certo punto si blocca e mi dà un errore di sicurezza. Ho provato a clonare pure con DD e pure su un SSD preciso identico ma l'errore è sempre lo stesso.

Il problema grosso è che il programmatore che ha creato questo accrocchio non lavora più, oltretutto è pure irreperibile, per cui non ci sono speranze di chiedergli come l'abbia creato.

Io penso ci sia un controllo sul numero seriale del disco... altre idee?

Grazie a tutti!
Mr Carlo è offline   Rispondi citando il messaggio o parte di esso
Old 19-07-2017, 00:47   #2
DooM1
Senior Member
 
L'Avatar di DooM1
 
Iscritto dal: Jul 2002
Città: Cagliari
Messaggi: 13495
Ma quindi non hai il file del pacchetto di installazione?
__________________
MoBo:Asus Prime x470-Pro*CPU:AMD Ryzen 5700x*RAM:Kingston FURY KF432C16RB2K2/16*Sk.Vid:Asus DUAL-RX580-O8G*Ali:Enermax Revolution87+ 550W*Storage:Samsung 970 Evo Plus 1TB + Samsung 860 Evo 1TB*Mons:Dell 2209WAf + LG 24EA53VQ
DooM1 è offline   Rispondi citando il messaggio o parte di esso
Old 19-07-2017, 10:02   #3
Mr Carlo
Senior Member
 
Iscritto dal: Feb 2002
Messaggi: 348
No, purtroppo non ho in mano nulla... non so nemmeno come sia installato.
E' tutto in una sottodirectory di /home e ci sono file .sh, .obj, e ovviamente .jsp e fin qui, aprendoli qualcosa ci capisco ma non trovo nessun controllo.

Ci sono anche 3 ulteriori subdirectory: /app /lib /util con alcuni file .class .jar e .so che ovviamente non riesco ad editare.

Grazie, a presto.
Mr Carlo è offline   Rispondi citando il messaggio o parte di esso
Old 19-07-2017, 17:54   #4
DooM1
Senior Member
 
L'Avatar di DooM1
 
Iscritto dal: Jul 2002
Città: Cagliari
Messaggi: 13495
Possibile che non ci sia qualche altro file di configurazione, magari un bellissimo .conf ?
Se c'è probabilmente è da qualche altra parte... dentro /etc ? Troppo facile?
Sperando che questo presunto controllo di seriale / uuid, non sia hard-coded.
Non ho mai usato tomcat, ma c'è anche un database?
__________________
MoBo:Asus Prime x470-Pro*CPU:AMD Ryzen 5700x*RAM:Kingston FURY KF432C16RB2K2/16*Sk.Vid:Asus DUAL-RX580-O8G*Ali:Enermax Revolution87+ 550W*Storage:Samsung 970 Evo Plus 1TB + Samsung 860 Evo 1TB*Mons:Dell 2209WAf + LG 24EA53VQ
DooM1 è offline   Rispondi citando il messaggio o parte di esso
Old 20-07-2017, 12:29   #5
Mr Carlo
Senior Member
 
Iscritto dal: Feb 2002
Messaggi: 348
Quote:
Originariamente inviato da DooM1
Possibile che non ci sia qualche altro file di configurazione, magari un bellissimo .conf ?
Se c'è probabilmente è da qualche altra parte... dentro /etc ? Troppo facile?
Sperando che questo presunto controllo di seriale / uuid, non sia hard-coded.
Non ho mai usato tomcat, ma c'è anche un database?
Ci sono una marea di .conf, anche in /etc e li ho aperti tutti ma non ho trovato nulla...
Penso ci sia un database, non ho visto mySQL o cose simili ma devo verificare bene.


Quote:
Originariamente inviato da Bellaz89 Guarda i messaggi
Domanda scema: non e' che magari e' il secure boot? provato a disattivarlo dal pannello delle opzioni di boot?
Altra domanda: ma come e' possibile che la vostra azienda non abbia il sorgente di un programma sviluppato internamente?! Mi sembra una situazione abbastanza critica: se avete un bug nel programma o dovete cambiarlo che fate??
EDIT: guarda qua https://askubuntu.com/questions/587463/how-to-solve-boot-in-insecure-mode-error non e' che hai qualcosa di simile?
E' un programma sviluppato nel 2010 di cui purtroppo si sono perse tutte le tracce, o sono state volutamente eliminate da chi è andato via dall'azienda.
Non è il secure boot purtroppo... il programma si avvia fino a questo famigerato controllo, dopodiché si blocca... quindi sicuramente è un controllo nel software.

Faccio un passo indietro: visto che come detto il clone è identico, secondo voi è sicuro che sia un controllo sul seriale del disco o potrebbe essere qualche altro tipo di controllo (non so, UUID, hash o altre cose...)?

Grazie a tutti.
Mr Carlo è offline   Rispondi citando il messaggio o parte di esso
Old 20-07-2017, 14:25   #6
DooM1
Senior Member
 
L'Avatar di DooM1
 
Iscritto dal: Jul 2002
Città: Cagliari
Messaggi: 13495
Eh qui purtroppo si tratterebbe di fare reverse engineering .
Se invece tenessi il vecchio SSD e montassi il nuovo nelle cartelle dove ti serve spazio? Insomma fai un po' di overlay nelle cartelle che sai che crescono.
__________________
MoBo:Asus Prime x470-Pro*CPU:AMD Ryzen 5700x*RAM:Kingston FURY KF432C16RB2K2/16*Sk.Vid:Asus DUAL-RX580-O8G*Ali:Enermax Revolution87+ 550W*Storage:Samsung 970 Evo Plus 1TB + Samsung 860 Evo 1TB*Mons:Dell 2209WAf + LG 24EA53VQ
DooM1 è offline   Rispondi citando il messaggio o parte di esso
Old 20-07-2017, 14:39   #7
zappy
Senior Member
 
L'Avatar di zappy
 
Iscritto dal: Oct 2001
Messaggi: 20025
Quote:
Originariamente inviato da Mr Carlo Guarda i messaggi
...E' un programma sviluppato nel 2010 di cui purtroppo si sono perse tutte le tracce, o sono state volutamente eliminate da chi è andato via dall'azienda. ....
la vendetta del programmatore. L'avete licenziato/sottopagato?
__________________
Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza (O.W.)
zappy è offline   Rispondi citando il messaggio o parte di esso
Old 21-07-2017, 15:25   #8
DooM1
Senior Member
 
L'Avatar di DooM1
 
Iscritto dal: Jul 2002
Città: Cagliari
Messaggi: 13495
Il presunto controllo potrebbe anche essere effettuato semplicemente dallo script di avvio.
Controllerei su /etc/init.d/ se si vede qualcosa nel relativo script di avvio, provando anche ad avviare il programma manualmente per vedere se viene fuori qualche errore più specifico.
Inoltre controllerei su /var/log/ se c'è qualche log che riporti il problema e dia qualche indizio.
__________________
MoBo:Asus Prime x470-Pro*CPU:AMD Ryzen 5700x*RAM:Kingston FURY KF432C16RB2K2/16*Sk.Vid:Asus DUAL-RX580-O8G*Ali:Enermax Revolution87+ 550W*Storage:Samsung 970 Evo Plus 1TB + Samsung 860 Evo 1TB*Mons:Dell 2209WAf + LG 24EA53VQ
DooM1 è offline   Rispondi citando il messaggio o parte di esso
Old 24-07-2017, 10:13   #9
Mr Carlo
Senior Member
 
Iscritto dal: Feb 2002
Messaggi: 348
Ciao a tutti,
ho guardato dappertutto ma non ho trovato nulla.
A questo punto il sospetto è che sia compilato in qualche .class
Ho decompilato alcuni files e, come già avevo intuito dal log, ho scoperto che c'è un securitycheck che può assumere valore 0 o -1. Quando assume valore 0 tutto ok, quando è -1 blocca l'esecuzione.
Ho visto nel file principale che spesso c'è un controllo su questa variabile, esempio:
Codice:
   if (Configuration.getSecurityCheck() == 0) {
            Bootstrap.startThread();
        }
oppure, caso negativo

Codice:
  if (Configuration.getSecurityCheck() != 0) {
                        SocketListener.showSecurityViolation();
                    }
in un file di configurazione ho trovato questa, che dovrebbe essere la funzione:
Codice:
  public static int getSecurityCheck()
  {
    if (DEBUG) {
      securityCheck = Integer.valueOf(0);
    }
    if (securityCheck == null) {
      if ((model.equals("fox-g20")) || (platform.equals("ARM-BeagleBone"))) {
        securityCheck = Integer.valueOf(0);
      } else {
        File f = new File("/home/programma/eseguibile");
        if (f.exists()) {
          securityCheck = Integer.valueOf(new ShellInterpreter().exec(f.getAbsolutePath(), new String[] { "" }));
        }
        else
          securityCheck = Integer.valueOf(-1);
      }
      log("Configuration.getSecurityCheck - securityCheck is " + securityCheck);
    }
    
    return securityCheck.intValue();
  }
}
Grazie a tutti.
Mr Carlo è offline   Rispondi citando il messaggio o parte di esso
Old 24-07-2017, 13:32   #10
DooM1
Senior Member
 
L'Avatar di DooM1
 
Iscritto dal: Jul 2002
Città: Cagliari
Messaggi: 13495
Quote:
Originariamente inviato da Bellaz89 Guarda i messaggi
'/home/programma/eseguibile'
Si, la chiave è qui credo.
Se si capisce che fa questo programma magari si riesce a correggere il comportamento, sarebbe la cosa migliore.
Bisogna vedere se è compilato o no, e se ha qualche file di configurazione.

Altrimenti bypasserei il controllo con questo programma, e lascerei il resto dei controlli del securitycheck.
__________________
MoBo:Asus Prime x470-Pro*CPU:AMD Ryzen 5700x*RAM:Kingston FURY KF432C16RB2K2/16*Sk.Vid:Asus DUAL-RX580-O8G*Ali:Enermax Revolution87+ 550W*Storage:Samsung 970 Evo Plus 1TB + Samsung 860 Evo 1TB*Mons:Dell 2209WAf + LG 24EA53VQ
DooM1 è offline   Rispondi citando il messaggio o parte di esso
Old 25-07-2017, 08:29   #11
Mr Carlo
Senior Member
 
Iscritto dal: Feb 2002
Messaggi: 348
Leggendo questo IF
Codice:
  if (f.exists()) {
          securityCheck = Integer.valueOf(new ShellInterpreter().exec(f.getAbsolutePath(), new String[] { "" }));
        }
        else
          securityCheck = Integer.valueOf(-1);
non è un controllo sull'esistenza del file eseguibile? Se è così, il file è sempre presente, non capisco come faccia a restituire "-1".

Ultima modifica di Mr Carlo : 25-07-2017 alle 08:45.
Mr Carlo è offline   Rispondi citando il messaggio o parte di esso
Old 25-07-2017, 13:30   #12
DooM1
Senior Member
 
L'Avatar di DooM1
 
Iscritto dal: Jul 2002
Città: Cagliari
Messaggi: 13495
Quote:
Originariamente inviato da Mr Carlo Guarda i messaggi
non è un controllo sull'esistenza del file eseguibile? Se è così, il file è sempre presente, non capisco come faccia a restituire "-1".
No, non solo.
Leggi meglio il codice.
Se il file esiste viene eseguito e viene assegnato alla variabile il valore che il programma resituisce.
Se il file non esiste (blocco else) questo controllo non può venire eseguito, e alla variabile viene assegnato un valore arbitrario di -1.

Se pensi che quel controllo non ti serva potresti semplicemente cancellare/rinominare il programma, e cambiare a piacimento il valore che c'è nel blocco else.
__________________
MoBo:Asus Prime x470-Pro*CPU:AMD Ryzen 5700x*RAM:Kingston FURY KF432C16RB2K2/16*Sk.Vid:Asus DUAL-RX580-O8G*Ali:Enermax Revolution87+ 550W*Storage:Samsung 970 Evo Plus 1TB + Samsung 860 Evo 1TB*Mons:Dell 2209WAf + LG 24EA53VQ

Ultima modifica di DooM1 : 25-07-2017 alle 13:34.
DooM1 è offline   Rispondi citando il messaggio o parte di esso
Old 26-07-2017, 09:52   #13
Mr Carlo
Senior Member
 
Iscritto dal: Feb 2002
Messaggi: 348
Ho capito.
Non ho idea circa cosa faccia l'eseguibile, a parte restituire il valore che poi viene processato dall'if.
Altrimenti, creare un eseguibile che restituisca il valore che vuole l'if?
Mr Carlo è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Intervista a Stop Killing Games: distruggere videogiochi è come bruciare la musica di Mozart Intervista a Stop Killing Games: distruggere vid...
Samsung Galaxy S25 Edge: il top di gamma ultrasottile e leggerissimo. La recensione Samsung Galaxy S25 Edge: il top di gamma ultraso...
HP Elitebook Ultra G1i 14 è il notebook compatto, potente e robusto HP Elitebook Ultra G1i 14 è il notebook c...
Microsoft Surface Pro 12 è il 2 in 1 più compatto e silenzioso Microsoft Surface Pro 12 è il 2 in 1 pi&u...
Recensione REDMAGIC Astra Gaming Tablet: che spettacolo di tablet! Recensione REDMAGIC Astra Gaming Tablet: che spe...
Chips Act UE: 41,5 milioni di euro a Eph...
Ryzen Threadripper 9000 al debutto il 31...
Nuovi coupon nascosti Amazon (aggiorname...
Chatbot e salute mentale: nascono i prim...
Prezzi in ribasso su Amazon su tante com...
Eureka J15 Ultra spiazza la concorrenza ...
Stufi di tagliare il prato? Questi robot...
Anche Dyson si adegua: sconti fino a 200...
Mi sono rotto un dito, e le avventure gr...
Tutto vero: costa solo 899€ il portatile...
Lefant M330Pro da 5.000Pa a 104€ o i due...
Intel tagli ancora: vuole rendere la div...
Tesla sta per lanciare il Robotaxi nella...
Dead Island 2 arriva su Mac, ma a un pre...
FIA e Formula E rinnovano il matrimonio:...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 13:27.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v