Tool um Ozmosis-Parameter auszulesen/manipulieren

  • Eben. Aber wie komme ich nun zum


    ZwAAAA==


    ? Hat man diesen Wert wenn man über die GUID ausliest?


    Code
    1. nvram 7C436110-AB2A-4BBB-A880-FE41995C9F82:csr-active-config


    Wie gesagt ... bei mir gibts einen Fehler daher frage ich jetzt.

  • Nein, dass ist der Wert den man in den Defaults setzt. Der Wert lässt sich über die defaults entweder als Integer setzen oder eben als data Objekt ich nehme mal an, dass der integer Wert in das Dataobjekt umgewandelt wird bevor er injected wird.

  • Wenn du die NVRAM Abfrage meinst. sieht das Ergebnis so aus:

    Code
    1. nvram -p
    2. fmm-computer-name Al6042-iMac
    3. bluetoothActiveControllerInfo Z%06%0d%05%00%00%00 %16%1d\%f3paZl
    4. SystemAudioVolumeDB %f0
    5. SystemAudioVolume A
    6. LocationServicesEnabled %01
    7. csr-active-config g%00%00%00
    8. boot-args darkwake=8
    9. EFIBluetoothDelay %b8%0b

    Gruß
    Al6042

    Keine Unterstützung per PN oder Pinnwand... Eure Anfragen gehören ins Forum, nicht in mein Postfach!

  • Genau das meine ich. Aber irgendwie peil ichs nicht wie ich von diesem Wert der bei csr-active-config ausgespuckt wird so wandeln kann das es in die Default.plist geschrieben werden kann. Mit der Hex-Umrechnung komme ich hier doch gar nicht weiter. Und mit dieser Binary64 Sache auch nicht.


    Ich kann zwar in der Shell auch Base64 decoden:


    Code
    1. echo `echo ZwAAAA== | base64 --decode`


    Da kommt dann als Ergebnis "g" raus. Aber was ist jetzt noch mit den 3 Zahlenwerten die hinterher kommen?

  • @Download-Fritz es geht hier im Moment ja darum den aktuell gesetzten Wert zu ermitteln und das geht nun mal nur über nvram -p ich schätze das liegt wohl daran, dass die Einträge die in der defaults.plist unter Defaults:7C436110-AB2A-4BBB-A880-FE41995C9F82 angesiedelt sind nicht über diese Adresse aus dem NVRAM auslesbar sind und so eben nur die Möglichkeit bleibt die Ausgabe von nvram -p zu interpretieren. Hierbei scheint es einen unterschied zu machen ob man den Wert für die csr-active-config als data oder integer übergibt. In meiner defaults sieht das so aus:

    Code
    1. <key>csr-active-config</key>
    2. <integer>103</integer>

    nvram -p gibt ein kleines g als Wert für die csr-active-config zurück

    Code
    1. CSR-Active-Config : g

    Nimmt man den Typ Data bekommt man den Wert zurück den AL auch bekommt. Die Frage ist halt wie lässt sich von dem Wert auf die config schließen die gerade aktiv ist.

  • Ha ich glaube ich habe es :D
    Wenn man decodiert erhält man in dem Beispiel nun ein g dieser wiederum in hex umgewandelt ergibt 67 was dann tatsächlich auch der csr-active-config 0x67 oder eben SIP komplett aus entspricht :D Der Wert 0x67 hex entspricht dem Wert 103 dezimal et voila wir haben den Wert den wir für die defaults brauchen :D

  • Ich kann folgendes machen ... wenn "g" dort steht soll er in die Default.plist den Wert 103 schreiben. Müsste man eigtl. auch wie du grad geschrieben hast griven in der Shell ausrechnen lassen. Aber dann kann man sich das ja eigtl. sparen. Was kann denn sonst noch so da stehen anstatt dem "g" bei halb abgeschaltetem SIP z.b.? Wenn ich die verschiedenen Varianten weiss kann ich das easy einbinden.

  • Klar das macht Sinn nur steht ja nicht immer g da sondern halt nur wenn die SIP komplett aus ist. Ich denke der Wert der da steht muss halt wirklich einmal in Hex umgewandelt werden und von da dann in Integer um den richtigen Wert für alle möglichen Einstellungen der SIP zu ermitteln. Umwandlung in Hex geht mit der Bash hier ein Beispiel

    Code
    1. echo -n 'text' | xxd -ps | sed 's/[[:xdigit:]]\{2\}/\\x&/g'

    und von hex in dec dann so

    Code
    1. echo $((16#ff))

    wobei das ff eben dem Anteil nach dem 0x entspräche.

  • Interessant finde ich ja, dass es umgewandelt wird.
    Der NVRAm wird vom System interpretiert/ausgelesen beim booten?
    Und die Default.plist von Ozmosis bei einem NVRAM reset ausgelesen und ins NVRAM geschrieben?


    Letztlich muss eigentlich der Umrechnungsweg beschritten werden zum schreiben in die default.plist, den griven oben beschrieben hat. Das würde dann auch mal für andere Werte gelten, wie SIP halb ausgeschaltet.


    Oder liege ich da falsch?
    Zu langsam :)

    BlackCAT: Gigabyte Z97X-UD5H | i7 4790K | 8GB Sapphire Radeon RX 580 Pulse Aktiv | Arbeitsspeicher 32GB | 10.14.6 + OC

    With great power comes great responsibility.

  • Ist ja geil was hier abgeht...
    Ich kriege hier noch einen Crash-Kurs im Programmieren... :)

    Gruß
    Al6042

    Keine Unterstützung per PN oder Pinnwand... Eure Anfragen gehören ins Forum, nicht in mein Postfach!

  • Wenn man integer verwendet, muss man auch die Größe angeben: <integer size=32>...</integer>
    Und ich weiß, worum es geht, deswegen hab' ich ja auch gesagt, dass nirgends Gleichzeichen vorkommen. ;)

  • Alles klar Griven ... habs mal bisschen angepasst und zusammengebappt. :D


    Code
    1. hex=`echo -n 'g' | xxd -ps | sed 's/[[:xdigit:]]\{2\}/&/g'`
    2. echo $((16#$hex))


    Wirft den Wert 103 aus. :klatschen:

  • Right, darauf wollte ich hinaus :D

  • Sö. Nun setzt er in der Default.plist den richtigen Wert. Datei ist aktualisiert. Nun sollte eigentlich alles passen.


    Ich bin weg für heut. N8.

  • Die im Startpost aber noch nicht, oder?
    Ich wünsche Dir ne gute Nacht :D

  • Doch sie ist aktualisiert. ;)

  • Hum entweder schlägt mein blonder Kern wieder durch oder ich bin ein Sonderfall *fg*
    Bei mir zeigt es weiter g an...


    Code
    1. SystemVersion : 1.0
    2. CSR-Active-Config : g
    3. Boot-Args : nvda_drv=1 -xcpm
  • Im Infofenster schon. Aber in der plist die er auf dem Desktop anlegt sollte 103 stehen.


    Habe es nun auch im Infofenster geändert.

    Einmal editiert, zuletzt von Sascha_77 ()

  • Bei mir wird die 103 im Infofenster und in der Default_07_18_04.plist angezeigt.
    Ich habe auch mal schnell mein BeyondCompare angeschmissen um die Unterschiede zwischen der Plist auf dem Desktop und in der EFI-Partition darzustellen.
    Der Report liegt als HTML File bei.


    EDIT:
    Die erzeugt Plist auf dem Desktop lässt sich nicht mit PlistEdit Pro öffnen.

    Dateien

    Gruß
    Al6042

    Keine Unterstützung per PN oder Pinnwand... Eure Anfragen gehören ins Forum, nicht in mein Postfach!