Jump to content
Donk

How to spoof real Mac in VMware

91 posts in this topic

Recommended Posts

It would work, as I tried it on a nested ESXi instance. However you would need to make your ESXi server a Hackintosh and override the SMBIOS to specify Apple hardware and the presence of the SMC chip. I have not found a way to do that as ESXi uses its own bootloader.

Donk,

 

I am assuming your nested ESXi instance is running on a Mac under Fusion, so ESXi is running on Apple hardware?

Share this post


Link to post
Share on other sites
Advertisement

Donk,

 

I am assuming your nested ESXi instance is running on a Mac under Fusion, so ESXi is running on Apple hardware?

 

Actually did it on Fusion and Workstation, and it worked.

Share this post


Link to post
Share on other sites

Apparently a known issue that VMware is aware of and is looking into a fix.

 

Is there now way currently to run imessage in vmware than?

Share this post


Link to post
Share on other sites

iMessage didn't work also for me with this method on Windows laptop.

 

Also, I want to activate my Facetime but Facetime can't detect my built-in camera. I check in System Information & no driver installed for Camera.

 

Any way I can use my Facetime? Other methods or links perhaps for the driver? Really need help for this.

 

I have Sony VAIO VPCCW16FA on Windows 7 x 64 laptop, running OS X 10.9 Mavericks on VMWare Worstation 10. I got my OS X 10.9 WMWare Image from Soul Dev Team.

Share this post


Link to post
Share on other sites

I haven't tried this or care much about iMessenger. In my journey in bios hacking with ozmosis on other UEFI boards you can set nvram in the terminal and change some things this may help with getting this to work as it is a question a lot of people have on ozmisis thread too.

 

 

sudo nvram 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:BiosVersion=MM61.88Z.0106.B00.1208091121
sudo nvram 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:ProductName=Macmini6,2
sudo nvram 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:SystemSerial=xxxxxxxxxxxx
sudo nvram
4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:ProductFamily=Macmini
sudo nvram 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:ProductId=Mac-F65AE981FFA204ED

xxxxxxxxxxxx=serial that need to be generated using clover configuration or chameleon wizard. 
 

 

here is the thread and more info might be in there to help with other problems I just copied and pasted from the first post. but if you look up the nvram stuff you might find what your looking for to fix this

http://www.insanelymac.com/forum/topic/291655-ozmosis/

 

Another idea running off Donks post

 

 

It would work, as I tried it on a nested ESXi instance. However you would need to make your ESXi server a Hackintosh and override the SMBIOS to specify Apple hardware and the presence of the SMC chip. I have not found a way to do that as ESXi uses its own bootloader.

If your running a UEFI bios you could hack it using that thread and get oz to work and running ESX(i) might see it as mac hardware since a lot of the stuff is taken care of in the bios. I have a Quo with OZ but currently have a K (not so great with VM) processor in it. If I happen to switch it out for a regular one (non K) I'll test this out and report back.

Share this post


Link to post
Share on other sites

I have looked into ozmosis(haven't tried it), but I believe those values are only static for firmware that support nvram saving, I believe vmware efi and exe reset the nvram upon reboot.

 

We could write a launch daemon to reset these setting upon reboot but it must execute on kernel boot up (not the case with vmware efi, it executes towards end of kernel). This is all based on elnono_ research of imessage:

 

'KLDBootstrap::~KLDBootstrap' calculates these five 17 bytes values based on hashes of:

- IOPlatformUUID

- IOPlatformSerialNumber

- IODeviceTree:/chosen/boot-uuid

- IODeviceTree:/options/4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14:ROM

- IODeviceTree:/options/4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14:MLB

 

each value is appended, in that order, on the gIOPlatformExternalData OSData object.....Those five values must be set when the kernel is started and MUST NOT change afterwards.

 

http://www.insanelymac.com/forum/topic/294633-imessage-partially-broke-icloud-app-store-fully/?p=1981588

 

Hacking the vmware exe or efi would be great because we can set these values at the source, but I don't think it would be feasible. Donk tried to decode the efi64.rom but seems vmware has encoded it in a way that is not standard.

Share this post


Link to post
Share on other sites

Donk tried to decode the efi64.rom but seems vmware has encoded it in a way that is not standard.

 

I have now found the tools to extract the modules from the VMware EFI ROMs. However haven't yet tried modifying anything.

 

As for Messages and iCloud there does seem to be a big issue with VMware, and acknowledged by VMware engineers. Burnt 2 iCloud ids trying to make it work, but to be honest not something I am that interested in as have real Mac hardware available. I have other projects I am working on, and so others will have to pick up the work for this. Sorry about that, but busy at work and home.

 

One last piece of help I can give you; it is possible to change the MAC address of any virtual NICs to match Apple's available address ranges. 

 

 

Remove or comment out these lines in the VMX file (make sure guest is powered off):

 
ethernet0.addressType = "generated"
ethernet0.generatedAddress = "xx:xx:xx:xx:xx:xx"
ethernet0.generatedAddressOffset = "0"

Add the lines with a static Apple MAC Address:

ethernet0.Address = "xx:xx:xx:xx:xx:xx"
ethernet0.addressType = "static"
ethernet0.checkMACAddress = "false"

replace the ethernetX.Address line with something from this list http://hwaddress.com/?q=Apple

Share this post


Link to post
Share on other sites

And why UUID 4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14 always generated?

 

That is the UUID of Apple specific EFI variables in nvram and cannot be changed.

Share this post


Link to post
Share on other sites

Has there been any updates to this? 

 

I installed Mavericks on VMWS 10, did all the serial/board.id/ethernet stuff from the first post. I'm able to log into icloud and even get photo stream to work.  iMessage still fails activation :(

Share this post


Link to post
Share on other sites

Anyone got this working on ESXi or Workstation 10 ? I`m trying out 10.10 and none of the tricks in this thread worked for iCloud or iMessages. I was able to use EFI64.rom from the fusion, but still it does not work. 

Share this post


Link to post
Share on other sites

Same here. Would love to get imessage working! I heard to use a machine id and identifiers from an actual working Mac but don't know. Also I have a strange feeling Apple has blocked my VMware from activating. Is that posible?

Share this post


Link to post
Share on other sites

Known issue at VMware that the VMware virtual machine is not recognized by Apple. There is no workaround using the information I posted here.

Share this post


Link to post
Share on other sites

Donk,

 

Are you aware of ANY workaround that will get this to work?  If so I would really appreciate if you can point me in the right direction (I see people claim to have it working, but I don't know if that is just noise since I cannot duplicate).  There are many claims VMWARE FUSION 7 on mac does correct this as well.  Now granted that is running on a MAC, but it is still in a VM environment, what is it doing different as the VM is contained and should be identical no?

 

Here it is in a nutshell... I can care less about imessage and facetime on my pc vm of Yosemitee...  I however am a perfectionist and this is the only thing that does not work perfect...  What is very weird is why apple allows the icloud and other things to work without issue, but this does not.

 

Again, Donk, I appreciate your assistance, it's tough to find anyone knowledgeable on this topic.

Share this post


Link to post
Share on other sites

Donk,

 

Are you aware of ANY workaround that will get this to work?  If so I would really appreciate if you can point me in the right direction (I see people claim to have it working, but I don't know if that is just noise since I cannot duplicate).  There are many claims VMWARE FUSION 7 on mac does correct this as well.  Now granted that is running on a MAC, but it is still in a VM environment, what is it doing different as the VM is contained and should be identical no?

 

Here it is in a nutshell... I can care less about imessage and facetime on my pc vm of Yosemitee...  I however am a perfectionist and this is the only thing that does not work perfect...  What is very weird is why apple allows the icloud and other things to work without issue, but this does not.

 

Again, Donk, I appreciate your assistance, it's tough to find anyone knowledgeable on this topic.

 

 

Well I have zero interest in running iMessage within a VM, as I use real Macs for work and play, but do undertsand your interest in getting things just right. There is a very good post on another web site but unfortunately I cannot link to it due to forum rules. Google "How to Fix iMessage"

 

As for the future I have seen what has changed in Fusion 7 and hopefully it will make it into Workstation 11 and ESXi 6. This thread has some of the basics:

 

https://communities.vmware.com/thread/483521

 

What VMware needed to do was pass through two additonal uniqiue identifiers from the NVRAM variables called "MLB" and "ROM". Fusion 7 has some new settings which manage the visibility of those NVRAM variables:

efi.nvram.var.ROM.reflectHost
efi.nvram.var.MLB.reflectHost

would pass through the genuine variables from a real Mac host machine. I also think it is possible to set a value in the VMX file with these 2 settings:

efi.nvram.var.MLB
efi.nvram.var.ROM

Whilst I am not going to try iMessage out, I can test those settings in Fusion and get back with a definitve answer on whether those variables can be manually set.

 

UPDATE:

 

Tried the settings with these tests:

 

1. Reflect the host settings works as expected:

efi.nvram.var.ROM.reflectHost = TRUE or FALSE
efi.nvram.var.MLB.reflectHost = TRUE or FALSE

2. Set values manually works and use 6 digits for ROM and 16 for MLB:

efi.nvram.var.ROM.reflectHost = "FALSE"
efi.nvram.var.MLB.reflectHost = "FALSE"
efi.nvram.var.ROM = "123456"
efi.nvram.var.MLB = "DONKDONKDONKDONKA"

Share this post


Link to post
Share on other sites

Hi Donk,

 

Thanks for the insight, I have been following the topic you mention, as well as a similar one on InsanelyMac, link below:

 

http://www.insanelymac.com/forum/topic/298027-guide-aio-guides-for-hackintosh/?p=2060421

 

Both reference the need to have a matching ROM and MLB from a "Real" Mac which can be injected in to a Hackintosh via the Clover config.plist. It is very interesting that the same parameters can now be passed to a virtual OS X machine under Fusion 7. Are these new parameters added in Fusion 7 and hardware version 11?

 

If you have access to a real Mac use the iMessageDebug v2 script to extract the ROM and MLB as well as note the serial number which is also required.

 

http://www.insanelymac.com/forum/files/file/278-imessage-debug/

Share this post


Link to post
Share on other sites

Hi Donk,

 

Thanks for the insight, I have been following the topic you mention, as well as a similar one on InsanelyMac, link below:

 

http://www.insanelymac.com/forum/topic/298027-guide-aio-guides-for-hackintosh/?p=2060421

 

Both reference the need to have a matching ROM and MLB from a "Real" Mac which can be injected in to a Hackintosh via the Clover config.plist. It is very interesting that the same parameters can now be passed to a virtual OS X machine under Fusion 7. Are these new parameters added in Fusion 7 and hardware version 11?

 

If you have access to a real Mac use the iMessageDebug v2 script to extract the ROM and MLB as well as note the serial number which is also required.

 

http://www.insanelymac.com/forum/files/file/278-imessage-debug/

 

Hi

 

These are new parameters for Fusion 7, not sure that you need HW11. ESXi 6 has the parameters but the Tech Preview of Workstation 11 is too old to have them but hopefully released version will incorporate them.

 

I am keeping updates to the work on my blog http://daveparsons.net/blog/2014/11/14/pass-real-mac-details-to-vm-part-2/

Share this post


Link to post
Share on other sites

Would we need to wait for the WS11 unlocker to test?

Bs,

 

In a word yes, also we need to confirm the new parameters have made it into the released version of Workstation 11, they were not present in the Technical Preview.

Share this post


Link to post
Share on other sites

Bs,

 

In a word yes, also we need to confirm the new parameters have made it into the released version of Workstation 11, they were not present in the Technical Preview.

I see.

 

Looking forward to updates regarding this. Still hoping to ditch my 10.8.3 VM for Yosemite, mainly for SMS support in Messages. That, or I could just install the recent jailbreak tweak that's similar to AirDroid, in that it has a browser-based interface for handling iMessages and SMS/MMS.

Share this post


Link to post
Share on other sites

New parameters are in Workstation 11 and Player 7.  Also found another one:

system-id.enable = TRUE or FALSE.

The iMessage dump tools seem to want this as well.

Share this post


Link to post
Share on other sites

I need some help.  When I change parameters in Vmx file it doesn't change in osx Leopard when I look in hardware system id. Any suggestions? 

Share this post


Link to post
Share on other sites

 

Well I have zero interest in running iMessage within a VM, as I use real Macs for work and play, but do undertsand your interest in getting things just right. There is a very good post on another web site but unfortunately I cannot link to it due to forum rules. Google "How to Fix iMessage"

 

As for the future I have seen what has changed in Fusion 7 and hopefully it will make it into Workstation 11 and ESXi 6. This thread has some of the basics:

 

https://communities.vmware.com/thread/483521

 

What VMware needed to do was pass through two additonal uniqiue identifiers from the NVRAM variables called "MLB" and "ROM". Fusion 7 has some new settings which manage the visibility of those NVRAM variables:

efi.nvram.var.ROM.reflectHost
efi.nvram.var.MLB.reflectHost

would pass through the genuine variables from a real Mac host machine. I also think it is possible to set a value in the VMX file with these 2 settings:

efi.nvram.var.MLB
efi.nvram.var.ROM

Whilst I am not going to try iMessage out, I can test those settings in Fusion and get back with a definitve answer on whether those variables can be manually set.

 

UPDATE:

 

Tried the settings with these tests:

 

1. Reflect the host settings works as expected:

efi.nvram.var.ROM.reflectHost = TRUE or FALSE
efi.nvram.var.MLB.reflectHost = TRUE or FALSE

2. Set values manually works and use 6 digits for ROM and 16 for MLB:

efi.nvram.var.ROM.reflectHost = "FALSE"
efi.nvram.var.MLB.reflectHost = "FALSE"
efi.nvram.var.ROM = "123456"
efi.nvram.var.MLB = "DONKDONKDONKDONKA"

Made an account to let you know that this fixed the activation issues I had with iMessage and FaceTime.

 

Now I have to figure out why I can't get the text forwarding code to show up on my vm mac.

 

 

Thanks

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By Giuseppe Biondo
      Running macOS Catalina in Windows10 with VMware 15.5
      The system runs perfectly with only one very important problem: the display type.
      In my PC is installed an Asus RX580 4GB but the virtual machine runs with a graphic card of 128MB of GPU ram.
      The resolution is OK, but graphic tasks are very slow.
      VMware Tools are installed.
      How can I fix this issue?
    • By JohnOl
      Hi,
       
      I've just upgraded to OSX Catalina from Mojave on my VMWare Workstation 15.5, running on Windows 10.
       
      The Sidecar feature is there, and after connecting my iPad Pro 12.9" 2018 running iPadOS 13.1.2 via USB cable, it is recognized as a display device in the Sidecar preferences.
       
      However, when I enable it, the Sidecar screen on the iPad is completely black / blank. I can't send anything over, and if I mouse over the green + on an app window (i.e. Safari) to move it to the iPad, nothing happens and the screen remains blank. The sidebar will only appear after I turn it off and on again at Catalina's Sidecar preferences. The buttons there actually work. For example, if I move Safari over to iPad, the screen is blank, but if I activate the on-screen virtual keyboard and type there, the text actually goes to the Safari's search bar (the Safari still appears on the desktop).
       
      Is this a compatibility issue with VMWare, where Catalina can't properly recognize the second screen? I've tried changing host VM settings too, i.e. to "host setting" or 2 monitors, enable / disable 3D acceleration, nothing works. the iPad is definitely correctly connected, as I can browse / backup its data at the Finder.
       
      Can anyone please advice on how to enable Sidecar properly in VMWare? Thank you.
       
      Below is a screenshot of how it looks like on my iPad:

    • By MSoK
      This is the current version of VMware Tools for OS X / macOS from the VMware CDS repository for Fusion 11.5.0
       
      VMware are no longer including the ISO images as separate "packages" in the CDS respository as of Fusion 11.5.0, instead the ISO images are included as part of the "core" download which is 522 MB.
      It is not possible to download the com.vmware.fusion.zip.tar due to upload limits.
       
      However, I have extracted the darwin.iso and darwinPre15.iso from the "core" and uploaded to this thread.
       
      If you prefer to download the "core" tar file and extract the ISO's they are located in the following directory in the tar file:
       
      com.vmware.fusion.zip.tar\com.vmware.fusion.zip\payload\VMware Fusion.app\Contents\Library\isoimages\
       
      Please note: In the latest VMwareGfx.kext from Fusion 8.5.5 onwards VMware have discontinued the 2D-Acceleration code, and graphics performance is better now, thanks to Zenith432 for the update.
       
      To check for the latest version visit http://softwareupdate.vmware.com/cds/vmw-desktop/fusion/.
       
      The various VMware Tools downloads are located under the packages folder for each version upto and including 11.1.0.
       
      Instructions for extracting darwin.iso and darwinPre15.iso
      - Download the files above
      - Extract com.vmware.fusion.tools.darwin.zip.tar
      - darwin.iso is located in the "payload" folder
      - Extract com.vmware.fusion.tools.darwinPre15.zip.tar
      - darwinPre15.iso is located in the "payload" folder
    • By cgilley
      Bear with me please, the vmware site is almost hopeless, so I ran across insanelymac.. So, I have a fairly high end laptop that has enabled me to push much of my development environment into virtual machines.  One of these VMs was a macOS High Sierra install.  As a developer, I always have an interest in learning new things, and some of my co-workers are Apple advocates.  Plus, there was some s/w I wanted to try that would only work on the mac.  Using unlocker, etc, I was easily able to create a Mac workstation (what the hell do you call this - mac, macos, apple, mac VM?  lol, I don't have the lingo down right....).  I've been using it for the last 4 months.
       
      Then came the VM Workstation 14.1.6 update.  It kept nagging at me, so I finally allowed it to install.  Brain fart on my part, I should have backed up all of my virtual machines.  All the Windows VMs came through fine, but the Mac is stuck in a perpetual re-boot cycle.  I'm sure this is a vmware issue, but I was hoping maybe a reader has seen this before and has some ideas.  I've gone through the vmware logs until my eyes bleed - lots of interesting but useless information...
       
      regards,
       
      cg
       

×