當前位置:
首頁 > 新聞 > PC傻瓜式安裝黑蘋果並打造成全能逆向工作站

PC傻瓜式安裝黑蘋果並打造成全能逆向工作站



0x01.為什麼要安裝黑蘋果


為什麼要安裝黑蘋果?對於這個問題,不同的人應該有不同的回答。對於學生黨來說,花小錢就能體驗原版macOS操作系統,不管是什麼牌子的電腦,只要上了蘋果的操作系統,逼格發生了翻天覆地的變化,從此在小夥伴兒面前,也有了炫耀的資本。學生黨時間相對充裕,可以花費巨大的精力在反覆的折騰和嘗試上面;


1.對於小型工作室來說,蘋果的台式機動輒一兩萬的售價實在是高攀不起,一台iMac Pro都能買三台性能上旗鼓相當的黑蘋果主機了,同樣的人員配置,預算立刻下降了三分之二,效果明顯;對於一些「刷榜」「多開」工作室來說,利用低廉的硬體來迅速地複製和鋪開,才是降低成本、提高效率、獲得暴利的關鍵所在。


2.對於真·果粉來說,手機是蘋果的了,平板也是蘋果的了,操作系統當然也得是蘋果的。哪怕沒能夠立即買Mac,先用上蘋果系統,體驗一下最先進的人機界面,折騰一下蘋果專用的技術,而且大多數型號的筆記本也可以安裝,包括最新很火的小米筆記本、戴爾燃系列等等;


3.對於安全研究人員來說,本身就是反覆折騰、反覆折磨機器的行業,也許研究員捨不得在輕易在真機上運行「來源不明」的腳本、木馬或病毒,黑蘋果就不一樣了,大膽地試!大膽地調!大不了重裝系統就好了;安裝盤在手,天下我有!只要掌握了黑蘋果的技術,運行macOS就跟運行Windows一樣簡單!


相對於真機的昂貴嬌貴,虛擬機的性能孱弱,黑蘋果擁有者無可比擬的成本優勢、高度定製化的優勢、以及與真機相當的性能優勢,更有甚者在攢出一套Mac Pro的硬體的基礎上,總花費和開銷竟然可以不超過五千塊!要知道前者在中國的售價可是高達21888軟妹幣!另外,相對於數年之前OS X系統對兼容機硬體的各種不友好,如今可是大變天,安裝黑蘋果的基本步驟已經與安裝Windows越來越接近,動不動重裝個系統簡直就是小兒科,跟正版Windows重裝沒有什麼區別;就差出個Ghost鏡像了。究竟簡單到什麼程度,我們接下來使用真機來實踐一次,您就知道了。


0x02.安裝黑蘋果有多簡單


原版Windows鏡像安裝大家都會,當然Ghost安裝除外喔,太「鄉村范兒」了。Windows操作系統的安裝,無非下列四個步驟。


準備鏡像→寫鏡像到U盤→從U盤安裝系統→系統自定義配置

現在我們安裝黑蘋果也是同樣的流程。


先說一下本機的配置:2014年1999元買的寧美國度的組裝台式機



*CPU:i3 4160


*GPU:HD 4400 CPU自帶


*RAM:4G DDR3 1600HZ 三星 + 8G DDR3 1600HZ 海力士 = 12G 雙通道


*BOARD:七彩虹 C.B85主板

*SSD:金泰克 Tigo 120G SSD


準備鏡像


本鏡像採取官方原版macOS Sierra 10.12.6 (16G29)的app文件封裝製作,macOS本身的引導肯定用不得(畢竟蘋果官方肯定不支持啊,要不然怎麼叫黑蘋果呢),黑蘋果大牛為其增加了自定義引導器——clover,以適應不同品牌的不同機型。


下載地址:http://pan.baidu.com/s/1eRE7QZg


文件名稱:macOS Sierra 10.12.6 16G29 with Clover 4123.dmg


文件大小:5500020736 位元組(在筆者的電腦上顯示為5.12GB)


修改時間:2017年7月21日 13:15:28


MD5 :1872EE8761BFADDAE4B46E0864F70FDC

SHA1 :A16F59DA34F873BCC68698CE474D45521ABEC7DC


CRC32 :ABC4AE6B


下載完成之後請務必驗證一下md5,確保文件完整。


鏡像來源:http://bbs.pcbeta.com/viewthread-1750692-1-1.html


為什麼選擇macOS Sierra 10.12.6這個版本,因為最新的High Sierra 10.13才剛剛出來(17年9月24號),連小白鼠都還沒能很好地適應這個系統,各種問題不斷。而10.12.6是macOS Sierra的最後一個版本,是非常成熟的、久經考驗的、安全穩定的、適合日常生活甚至一定工作強度的最佳選擇。


製作安裝U盤


之前我們在Windows下寫入Win鏡像使用Win32diskimager,或者UltraISO,現在我們要在Windows下寫入MacOS的鏡像系統,得採用TransMac這款軟體。


下載地址在這裡,並不需要購買正版,我們只要使用一次就好了。首先在U盤的盤符上右鍵,選擇Format Disk for Mac,見下圖a。



格式化完成之後,在U盤的盤符上右擊,選擇Restore with Disk Image,將上面下載的dmg鏡像原封不動燒錄進U盤中。請見下圖b。


燒錄完成之後,需要進入PE系統,找到U盤的EFI引導分區,給clover引導器選擇一個適合你機型的配置文件,最新的或者較新的Intel的CPU都可以支持,不管是台式的還是筆記本,都可以支持。具體的操作是進入EFI/CLOVER文件夾,刪除默認的config.plist文件。選擇正確對應你的機型的CPU的plist文件,重命名為config.plist即可。文件夾的結構圖如下圖c所示。



沒有PE系統的同學可以將U盤插到Linux機器上進行修改,可以無障礙識別EFI引導分區。再或者使用大白菜U盤製作工具製作一個帶PE的U盤,完全傻瓜式操作。


從U盤安裝系統


支持UEFI啟動的主板,開機就會進入clover引導界面,選擇Boot OS X Install from macOS Sierra 10.12.6,開始進行安裝,如下圖d所示。從2010年以後的主板基本上都支持UEFI,更舊的主板亦可以使用變色龍來引導。



開始進入黑色滾屏,大概五六分鐘之後,出現macOS實用工具界面,在這裡我們把磁碟準備好,否則後面安裝過程中無法選擇安裝磁碟。選擇我們的SSD點擊「抹掉」,名稱改成你喜歡的名字,方案要改成「GUID分區圖」,如下圖e所示。



然後退出磁碟工具,選擇安裝macOS,開始進行系統的安裝。這裡沒有什麼需要注意的,只需要選擇上面格式化好的磁碟就可以了。然後就是安裝的過程了,如下圖f所示。


安裝完之後系統會重啟一次,進入階段二的安裝。這時候不用拔U盤,還是用U盤的clover來引導,選擇Boot macOS Install from MacSSD,MacSSD是剛剛設置的磁碟名字,進入階段二的安裝。階段二也就是階段一的延續。


階段二還是什麼都不用做,等進度自己跑到底就行了,系統就安裝完成了。


跑到底後系統還是自動重啟,重啟後還是使用U盤的clover來引導,選擇Boot macOS from MacSSD,即可進入系統。然後就是熟悉的賬號初始化等見下圖g,然後就直接就進入系統了。



到這裡安裝就結束了。


下圖h是已經安裝好Xcode 9.0(9A235),成功登錄iCloud面板和iTunes Store的截圖。



現在的鏡像集成度非常高,完全沒有需要自己動手的地方了,記得若干年之前還在大學的時候進行折騰的時候,iTunes死也登錄不上,連網卡驅動還是我自己找的,現在都集成好了。


系統自定義配置

首先該安裝盤的引導器自帶多個驅動,對於不適用自己電腦的驅動不用擔心,它不會載入,所以沒有影響,引導帶多個有線網卡驅動,驅動核顯的必要驅動,萬能音效卡驅動2.9.0,安裝上即可驅動本機大部分硬體,不用費心找驅動。


因為後續引導器還是得繼續使用clover,不可能今後一直插著U盤,用U盤上的clover來引導吧。所以我們得給黑蘋果主機也安裝上clover,使用這款EFI Tools Clover,下載地址:http://pan.baidu.com/s/1bpewwPL,下載之後解壓縮打開裡面的app,選擇c(安裝 Clover EFI 開機引導文件(HFS)),回車,選擇0號bsd磁碟,1號分區,也就是黑蘋果所在磁碟的EFI分區,這款app會自動將clover文件複製到黑蘋果的EFI分區去,並且做好相應的設置。此時另開一個終端,運行mount命令可以看到EFI分區的掛載位置,一般是/Volumes/EFI這裡,cd到裡面去之後,刪除整個EFI文件夾,然後將U盤裡的EFI文件夾拷貝進來,完美替代即可。今後就可以拔掉U盤,使用自帶的clover引導器啦!


安裝完成之後跑分試試,下載最新的Geekbench4來跑一下,最後測出來跑分如下:



其性能相當於2017年中期的13寸MacBook Pro:



非常強勢,這款機器現在還賣一萬多。


0x03.高度定製化——適合各種人群


硬體隨意定製


之前只有Mac系列一種選擇,現在選擇多種多樣,想買哪款筆記本基本上都可以,畢竟連小米筆記本都支持了!。這樣節約下來開銷是非常巨大的,畢竟我這舊機器已經是接近三年前的四代i3了,仍然感覺性能澎湃,延綿不絕!筆者日常使用的是一款16年的Macbook Air中配,台式機的性能優勢遠非移動平台可以比擬!給人的感覺就是有使不完的勁,有一種6.0升w12發動機還帶雙渦輪增壓的感覺。畢竟不需要考慮功耗的因素,自然就不用畏畏縮縮,而是放開手腳大力出奇蹟就好。

Attention Plsease:你的Mac也可以長這樣!



開機啟動定製


加入clover引導之後,再裝一塊Windows做雙系統也是輕而易舉的,筆者這裡沒有這個需求,所以就沒有深究。有需求的同學繼續深入就行了,遠景論壇有詳細的教程。即使是Mac真機也是可以雙系統的,更何況黑蘋果。


由Clover所帶來的EFI定製引導選項遠遠超過macOS系統自帶的引導項,其定製能力深入到系統的方方面面,單單是一個Boot,就有多達數十種選項和支持策略,為macOS系統測試人員帶來了巨大的嘗試機會。請見下圖i。



macOS各個系統隨意安裝


只要引導正確,macOS各個系統,各個版本,隨便安裝,沒有Mac機器上的那些束縛,放心大膽的格盤!放心大膽的上病毒!放心大膽的做實驗吧!macOS系統第一次有了Windows系統的感覺!記得備份好數據就好!在遠景論壇從10.12.1開始搜索,一直搜索到10.12.6,每個版本都有對應的安裝盤!真的是就是只差個Ghost了!對於做逆向安全研究的我們來說,如虎添翼,事半功倍!


好了,其他行業的使用場景我也不舉例了,總之Mac能做到的,黑蘋果都能做到,我們稍微部署一下Mac下用於逆向研究的環境,打造應有盡有的全能的macOS逆向安全工作站!


0x04 使用黑蘋果進行逆向研究

安裝Homebrew、Xcode、Command line tool等基礎App;


太簡單,就不騙稿費了。


安裝Metasploit;


安裝只要一句代碼:

$ curl https://raw.githubusercontent.com/rapid7/metasploit-omnibus/master/config/templates/metasploit-framework-wrappers/msfupdate.erb > msfinstall &&
chmod 755 msfinstall &&
./msfinstall

即可自動開始下載:

% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 5394 100 5394 0 0 3489 0 0:00:01 0:00:01 --:--:-- 3489
Switching to root user to update the package
Password:
Downloading package...
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 136M 100 136M 0 0 589k 0 0:03:56 0:03:56 --:--:-- 892k
Checking signature...
Package "metasploitframework-latest.pkg":
Status: signed by a certificate trusted by Mac OS X
Certificate Chain:
1. Developer ID Installer: Rapid7 LLC (UL6CGN7MAL)
SHA1 fingerprint: 76 2C 0C 45 5E CD 91 EB B1 2C D1 23 EC FE BE 8A BC C3 BD 69
-----------------------------------------------------------------------------
2. Developer ID Certification Authority
SHA1 fingerprint: 3B 16 6C 3B 7D C4 B7 51 C9 FE 2A FA B9 13 56 41 E3 88 E1 86
-----------------------------------------------------------------------------
3. Apple Root CA
SHA1 fingerprint: 61 1E 5B 66 2C 59 3A 08 FF 58 D1 4A E2 24 52 D1 98 DF 6C 60
Installing package...
installer: Package name is Metasploit-framework
installer: Installing at base path /
installer: The install was successful.
Cleaning up...
metasploitframework-latest.pkg
roysuedeiMac:~ roysue$ ls

安裝完成後開始運行,見下圖k:



安裝Github出品的文字編輯器


從官網下載即可,強力推薦,因為非常漂亮。見下圖l。



安裝抓包神器BurpSuite


抓包最強,不解釋!



- 安裝」大藍鯊「——WireShark!


協議分析最強!不解釋!



後來想到竟然裝了這麼多Kali的工具,不如直接裝個Kali好了,反正現在性能嚴重過剩。


方案採用Vagrant + Virtual Box的,原因是Vagrant擁有巨大的虛擬機庫,想下就下,想裝就裝!


Vagrant + Virtual Box ,雙V合璧,打造最強虛擬機庫!


現在搜索一個Kali Linux來安裝,見下圖o。



可以看到有很多選擇,簡直太多。選擇一款你喜歡的版本,點擊進去,就會出現安裝腳本,安裝腳本非常簡單,就一兩句話就行了。


我們直接運行這句安裝腳本。(前提是最新版Vagrant和Virtual Box已經在系統上安裝好了噢)


cd到臨時目錄下,運行第一句話,這句話創建vagrant配置腳本。

$ vagrant init Sliim/kali-2017.2-amd64
> --box-version 1
A Vagrantfile has been placed in this directory. You are now
ready to vagrant up your first virtual environment! Please read
the comments in the Vagrantfile as well as documentation on
vagrantup.com for more information on using Vagrant.

第二句話,按照vagrant的配置,將虛擬機up起來!

$ vagrant up
Bringing machine "default" up with "virtualbox" provider...
==> default: Box "Sliim/kali-2017.2-amd64" could not be found. Attempting to find and install...
default: Box Provider: virtualbox
default: Box Version: 1
==> default: Loading metadata for box "Sliim/kali-2017.2-amd64"
default: URL: https://vagrantcloud.com/Sliim/kali-2017.2-amd64
==> default: Adding box "Sliim/kali-2017.2-amd64" (v1) for provider: virtualbox
default: Downloading: https://vagrantcloud.com/Sliim/boxes/kali-2017.2-amd64/versions/1/providers/virtualbox.box
default: Progress: 1% (Rate: 282k/s, Estimated time remaining: 1:36:20)
...
...
==> default: Box "kali" could not be found. Attempting to find and install...
default: Box Provider: virtualbox
default: Box Version: >= 0
==> default: Box file was not detected as metadata. Adding it directly...
==> default: Adding box "kali" (v0) for provider: virtualbox
default: Unpacking necessary files from: file:///Users/roysue/tmp/kali
==> default: Successfully added box "kali" (v0) for "virtualbox"!
==> default: Importing base box "kali"...
==> default: Matching MAC address for NAT networking...
==> default: Setting the name of the VM: tmp_default150639184014722066
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
default: Adapter 1: nat
==> default: Forwarding ports...
default: 22 (guest) => 2222 (host) (adapter 1)
==> default: Booting VM...
There was an error while executing VBoxManage, a CLI used by Vagrant
for controlling VirtualBox. The command and stderr is shown below.
Command: ["startvm", "df2f35e0-9c43-4310-89b1-4acc6e8dfe65", "--type", "headless"]
Stderr: VBoxManage: error: Implementation of the USB 2.0 controller not found!
VBoxManage: error: Because the USB 2.0 controller state is part of the saved VM state, the VM cannot be started. To fix this problem, either install the "Oracle VM VirtualBox Extension Pack" or disable USB 2.0 support in the VM settings.
VBoxManage: error: Note! This error could also mean that an incompatible version of the "Oracle VM VirtualBox Extension Pack" is installed (VERR_NOT_FOUND)
VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component ConsoleWrap, interface IConsole

vagrant會全自動為你下載、配置、安裝、啟動這款虛擬機,你要做的就是去旁邊抽根煙,或者嗑點瓜子就行了。


全部時間大概有接近一個小時,這取決於你的網速和機器的速度了。


Kali會要求安裝VirtualBox_Extension_Pack來支持usb 2.0和3.0,否則只能使用usb 1.0,從官網下載安裝就好了。



Kali裝好了,裝個Windows也是輕而易舉,畢竟Vagrant Cloud里Widnows的虛擬機也好多!




從XP到Win10應有盡有!


安裝Hopper Disassembler



- 安裝IDA pro


不要跟我要!又不是7.0。



- Xcode多版本共存


在蘋果的開發者資源下載中心下載你想要的版本,筆者這裡又下載了8.3.3,沒辦法,Xcode 9畢竟還是太新了,畢竟沒有iPhone 8讓我來調試。



把原來的Xcode直接改名,改成對應的Xcode加版本號的命名方式即可。

$ sudo mv /Applications/Xcode.app/ /Applications/Xcode9.0.app/

然後安裝新下載的Xcode8.3.3。將下載好的xib格式的壓縮包解壓,解壓出來的Xcode.app重命名為Xcode8.3.3.app。將其移動至/Applications文件夾中。


運行xcode-select命令將默認Xcode改成我們下載的這個版本。參數-p列印一下路徑,查看是否修改成功。

$ sudo xcode-select -s /Applications/Xcode8.3.3.app/Contents/Developer
$ xcode-select -p
/Applications/Xcode8.3.3.app/Contents/Developer

lldb調試Ian Beer的Triple Fetch!


使用剛剛安裝的Xcode來編譯Ian Beer的iOS 10.3.2用戶態過沙盒工具,lldb可以attach任意進程進行調試,並且運行任意自定義的二進位,詳細分析可以看keenlab的陳良和阿里的蒸米對漏洞的分析。


這是最終效果圖。關於代碼的分析後續有時間再寫吧。^_<



*本文原創作者:Roy_Chen,本文屬FreeBuf原創獎勵計劃,未經許可禁止轉載






喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 FreeBuf 的精彩文章:

【FB TV】一周「BUF大事件」:德勤遭網路攻擊;維基解密發布俄羅斯機密文件;Burp Suite被曝存在遠程代碼執行漏洞
安全專家說Android 8.0和iPhone X一樣安全,這是真的嗎?
基於標記數據學習降低誤報率的演算法優化
【漏洞預警】Discuz! 任意文件刪除漏洞
誰是年度雲安全最佳捍衛者 | WitAwards 2017年度雲安全產品及服務評選「報名進行中」

TAG:FreeBuf |