Spoofing della versione del sistema operativo per ingannare un programma di installazione bacato

3

Ho ricevuto il compito di supportare una tipografia utilizzando Kodak Prinergy 6.1, che è antico. Devo installarlo su una nuova macchina. Il problema è che il programma di installazione ha un bug che confronta lessicograficamente le versioni del sistema operativo, quindi non risulta che 10.13 sia più recente del minimo richiesto di 10.4.

C'è un modo in cui posso indurre il programma di installazione a pensare che sto utilizzando 10.9?

    
posta TKK 05.01.2018 - 19:09
fonte

1 risposta

2

Supponendo che non sia cotto nel programma di installazione, puoi modificare i requisiti di versione per il pacchetto di app.

Fai clic con il pulsante destro del mouse sull'app, premi Mostra contenuto pacchetto e apri Info.plist . Cerca una chiave LSMinimumSystemVersion , quindi modifica il valore della versione di macOS.

Puoiancheusarel'editorvisualediXcode

Èpossibilechetupossaaverbisognodilavorareancoradipiù.

NSBundleandCFBundleaggressivelycachethecontentsofapplicationbundlestoimproveperformance.AlthoughyoueditedtheInfo.plist,theFinderandLaunchServicesdon'tyetknowthattheapplicationisanydifferent.

RunningthefollowingcommandinTerminaltotouchtheapplicationbundlewillforcetheFinder(andLaunchServices)tore-registertheapplication,therebynoticingthechangesyoumadetotheInfo.plist:

touch"/Applications/My Cool App.app"

After running that, deselect the application, then reselect it in the Finder, and then try launching it.

Note that this won't necessarily guarantee that you'll be able to launch the app.

Nel caso in cui sia inserito più profondamente nell'app, puoi modificare la tua versione macOS a livello di sistema. Nota che dovrai anche disabilitare SIP se non lo hai già fatto.

  1. Boot in single user mode (hold down s during boot)

  2. Make file system readable:

    /sbin/mount -wu /

  3. Go the /System/Library/CoreServices directory:

    cd /System/Library/CoreServices

  4. Edit SystemVersion.plist

    nano SystemVersion.plist

  5. Change the version strings (note that there may be two of these in the .plist), e.g.


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
        <key>ProductBuildVersion</key>
        <string>14E46</string>
        <key>ProductCopyright</key>
        <string>1983-2015 Apple Inc.</string>
        <key>ProductName</key>
        <string>Mac OS X</string>
        <key>ProductUserVisibleVersion</key>
        <string>10.10.4</string>                // <<<
        <key>ProductVersion</key>
        <string>10.10.4</string>                // <<<
</dict>
</plist>
  1. Save and exit (Control-OControl-X)

  2. Reboot:

    reboot

    
risposta data 05.01.2018 - 23:06
fonte

Leggi altre domande sui tag