iOS逆向?qū)崙?zhàn)--029:應(yīng)用砸殼

軟件脫殼吐句,顧名思義,就是對(duì)軟件加殼的逆操作讯泣,把軟件上存在的殼去掉(解密)。

砸殼原理

應(yīng)用加殼(加密)

提交給AppStore發(fā)布的App阅悍,都經(jīng)過(guò)官方保護(hù)而加密好渠,這樣可以保證機(jī)器上跑的應(yīng)用是蘋果審核過(guò)的昨稼,也可以管理軟件授權(quán)

經(jīng)過(guò)AppStore加密的應(yīng)用,我們無(wú)法通過(guò)Hopper等反編譯靜態(tài)分析拳锚,也無(wú)法Class-Dump

在逆向分析過(guò)程中假栓,需要對(duì)加密的二進(jìn)制文件進(jìn)行解密,然后才能進(jìn)行靜態(tài)分析霍掺,這一過(guò)程就是大家熟知的砸殼(脫殼)

應(yīng)用砸殼(解密)

  • 靜態(tài)砸殼:在已經(jīng)掌握和了解到了殼應(yīng)用的加密算法和邏輯后匾荆,在不運(yùn)行殼應(yīng)用程序的前提下,將殼應(yīng)用程序進(jìn)行解密處理杆烁。靜態(tài)脫殼的方法難度大牙丽,而且加密方發(fā)現(xiàn)應(yīng)用被破解后,就可能會(huì)改用更加高級(jí)和復(fù)雜的加密技術(shù)
  • 動(dòng)態(tài)砸殼:從運(yùn)行在進(jìn)程內(nèi)存空間中的可執(zhí)行程序映像(image)入手兔魂,將內(nèi)存中的內(nèi)容進(jìn)行轉(zhuǎn)儲(chǔ)(dump)處理來(lái)實(shí)現(xiàn)脫殼處理烤芦。這種方法實(shí)現(xiàn)起來(lái)相對(duì)簡(jiǎn)單,且不必關(guān)心使用的是何種加密技術(shù)

iOS應(yīng)用運(yùn)行原理

iOS系統(tǒng)中析校,應(yīng)用砸殼所使用的都是動(dòng)態(tài)砸殼技術(shù)

Clutch

Clutch是由KJCracks開(kāi)發(fā)的一款開(kāi)源砸殼工具构罗。工具支持iPhoneiPod Touch智玻、iPad绰播,該工具需要使用iOS8.0以上的越獄手機(jī)應(yīng)用。

Clutch屬于命令行工具尚困,適用于完美越獄的設(shè)備蠢箩。如果是非完美越獄,砸殼時(shí)可能會(huì)出現(xiàn)問(wèn)題

Clutch安裝

官網(wǎng)地址:https://github.com/KJCracks/Clutch

直接找到Release版本

下載最新的Clutch-2.0.4

使用file命令事甜,查看Clutch工具

file Clutch-2.0.4
-------------------------
Clutch-2.0.4: Mach-O universal binary with 3 architectures: [arm_v7:Mach-O executable arm_v7] [arm_v7s:Mach-O executable arm_v7s] [arm64:Mach-O 64-bit executable arm64]
Clutch-2.0.4 (for architecture armv7): Mach-O executable arm_v7
Clutch-2.0.4 (for architecture armv7s):    Mach-O executable arm_v7s
Clutch-2.0.4 (for architecture arm64): Mach-O 64-bit executable arm64

Clutch是通用二進(jìn)制文件谬泌,可以支持不同CPU架構(gòu)的設(shè)備

Clutch使用

Clutch-2.0.4拷貝到手機(jī)的/var/root目錄下,并且重命名為Clutch

scp -P 12345 ./Clutch-2.0.4 root@127.0.0.1:/var/root/Clutch
-------------------------
Clutch-2.0.4                                  100% 1204KB  28.2MB/s   00:00
  • 使用-P參數(shù)逻谦,指定USB連接的映射端口掌实,傳輸速度更快
  • 前面是本地文件路徑
  • 后面是手機(jī)路徑,IP地址要和登錄時(shí)設(shè)置的一致
  • 拷貝的同時(shí)邦马,可以修改名稱
  • 如果拷貝的是文件夾贱鼻,增加-r參數(shù)

Clutch增加可執(zhí)行權(quán)限

chmod +x Clutch

查看Clutch的用法

./Clutch
-------------------------
Usage: Clutch [OPTIONS]
-b --binary-dump <value> Only dump binary files from specified bundleID
-d --dump <value>        Dump specified bundleID into .ipa file
-i --print-installed     Print installed applications
  --clean               Clean /var/tmp/clutch directory
  --version             Display version and exit
-? --help                Display this help and exit
-n --no-color            Print with colors disabled
  • -b:僅從指定的bundleID轉(zhuǎn)儲(chǔ)二進(jìn)制文件
  • -d:將指定的綁定文件轉(zhuǎn)儲(chǔ)到.ipa文件中
  • -i:打印安裝的應(yīng)用程序

查看安裝的應(yīng)用程序

./Clutch -i
-------------------------
1:   老司機(jī)汽車 <com.driver.feng>
2:   愛(ài)思加強(qiáng)版 <com.pd.A4Player>
3:   微信 <com.tencent.xin>
  • 這里列出的軟件,都可以進(jìn)行砸殼

選擇對(duì)WeChat進(jìn)行砸殼

./Clutch -d 3
-------------------------
com.tencent.xin contains watchOS 2 compatible application. It's not possible to dump watchOS 2 apps with Clutch 2.0.4 at this moment.
Zipping WeChat.app
ASLR slide: 0x1000b0000
Dumping <WeChatNotificationServiceExtension> (arm64)
Patched cryptid (64bit segment)
Writing new checksum
...
DONE: /private/var/mobile/Documents/Dumped/com.tencent.xin-iOS9.0-(Clutch-2.0.4).ipa
Finished dumping com.tencent.xin in 44.8 seconds
  • Clutch同樣使用動(dòng)態(tài)砸殼滋将,所以理論上邻悬,砸殼前應(yīng)該啟動(dòng)WeChat。實(shí)際上并不需要随闽,當(dāng)Clutch發(fā)現(xiàn)目標(biāo)App未啟動(dòng)父丰,會(huì)自動(dòng)將其啟動(dòng)
  • 砸殼成功,給出.ipa包的路徑

將砸殼后的.ipa包掘宪,導(dǎo)出到Mac電腦蛾扇。解壓出MachO文件攘烛,查看加密狀態(tài)

otool -l WeChat | grep crypt
-------------------------
    cryptoff 16384
   cryptsize 107446272
     cryptid 0
  • cryptid0,處于未加密狀態(tài)镀首,證明WeChat砸殼成功
dumpdecrypted

Github開(kāi)源工具坟漱。dumpdecrypted這個(gè)工具就是通過(guò)建立一個(gè)名為dumpdecrypted.dylib的動(dòng)態(tài)庫(kù),插入目標(biāo)應(yīng)用實(shí)現(xiàn)脫殼更哄。

dumpdecryptedClutch一樣芋齿,都是砸殼領(lǐng)域的經(jīng)典插件。它們同樣歲月滄桑竖瘾,適用于完美越獄的設(shè)備沟突。如果是非完美越獄花颗,砸殼時(shí)可能會(huì)出現(xiàn)問(wèn)題

越獄環(huán)境的代碼注入捕传,可以使用不污染三方應(yīng)用的插件完成。插件只會(huì)影響當(dāng)前進(jìn)程扩劝,無(wú)需修改MachO文件庸论,從而使三方應(yīng)用防護(hù)難度增大

dyld的源碼中,有一個(gè)DYLD_INSERT_LIBRARIES環(huán)境變量棒呛,用于插入動(dòng)態(tài)庫(kù)并執(zhí)行

越獄環(huán)境聂示,將自定義動(dòng)態(tài)庫(kù)插入WeCath進(jìn)程

創(chuàng)建Inject動(dòng)態(tài)庫(kù),添加InjectCode

打開(kāi)InjectCode.m文件簇秒,寫入以下代碼:

#import "InjectCode.h"

@implementation InjectCode

+(void)load {
   NSLog(@"\n\n\n\n\n??????????\n\n\n\n\n");
}

@end

編譯項(xiàng)目鱼喉,生成Inject.framework

Inject.framework拷貝到手機(jī)的/var/root目錄下

scp -r -P 12345 ./Inject.framework root@127.0.0.1:/var/root
-------------------------
CodeResources                                 100% 2402   917.0KB/s   00:00
Inject                                        100%   85KB   6.4MB/s   00:00
Inject.h                                      100%  424   214.9KB/s   00:00
module.modulemap                              100%   93    47.5KB/s   00:00
Info.plist                                    100%  744   588.3KB/s   00:00
  • Inject.framework是文件夾,所以需要加上-r參數(shù)趋观,讓其循環(huán)拷貝

USB連接手機(jī)

usb-5s.sh

查看WeCath進(jìn)程

ps -A | grep WeChat
-------------------------
5380 ??         0:03.70 /var/mobile/Containers/Bundle/Application/B1661526-3E43-4397-9E86-A9735DE89AE1/WeChat.app/WeChat
5388 ttys000    0:00.01 grep WeChat

使用DYLD_INSERT_LIBRARIES扛禽,將Inject.framework插入到WeCath進(jìn)程

DYLD_INSERT_LIBRARIES=Inject.framework/Inject /var/mobile/Containers/Bundle/Application/B1661526-3E43-4397-9E86-A9735DE89AE1/WeChat.app/WeChat

注入的代碼在WeChat進(jìn)程中執(zhí)行成功

對(duì)iOS 9.1以上系統(tǒng)的兼容問(wèn)題

上述案例,使用iOS 9.1系統(tǒng)進(jìn)行演示

iOS 9.1以上系統(tǒng)皱坛,使用DYLD_INSERT_LIBRARIES插入動(dòng)態(tài)庫(kù)编曼,會(huì)提示以下錯(cuò)誤:

Killed:9
  • 問(wèn)題產(chǎn)生:在9.1以上系統(tǒng),不允許root用戶插入動(dòng)態(tài)庫(kù)
  • 解決辦法:需要切換成mobile用戶剩辟,才可執(zhí)行成功

dumpdecrypted安裝

官網(wǎng)地址:https://github.com/stefanesser/dumpdecrypted

克隆dumpdecrypted

git clone https://github.com/stefanesser/dumpdecrypted.git

進(jìn)入dumpdecrypted目錄掐场,執(zhí)行make命令

make

編譯生成動(dòng)態(tài)庫(kù):dumpdecrypted.dylib

dumpdecrypted使用

dumpdecrypted.dylib拷貝到手機(jī)的/var/root目錄下

scp -P 12345 ./dumpdecrypted.dylib root@127.0.0.1:/var/root
-------------------------
dumpdecrypted.dylib                                                                              100%  209KB  13.3MB/s   00:00

使用DYLD_INSERT_LIBRARIES,將dumpdecrypted.dylib插入到WeCath進(jìn)程

DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib /var/mobile/Containers/Bundle/Application/B1661526-3E43-4397-9E86-A9735DE89AE1/WeChat.app/WeChat
-------------------------
objc[5571]: Class MarsReachability is implemented in both /private/var/mobile/Containers/Bundle/Application/B1661526-3E43-4397-9E86-A9735DE89AE1/WeChat.app/Frameworks/mars.framework/mars and /private/var/mobile/Containers/Bundle/Application/B1661526-3E43-4397-9E86-A9735DE89AE1/WeChat.app/Frameworks/matrixreport.framework/matrixreport. One of the two will be used. Which one is undefined.
objc[5571]: Class WCLogger is implemented in both /System/Library/Frameworks/WatchConnectivity.framework/WatchConnectivity and /var/mobile/Containers/Bundle/Application/B1661526-3E43-4397-9E86-A9735DE89AE1/WeChat.app/WeChat. One of the two will be used. Which one is undefined.
mach-o decryption dumper
...
[+] Closing original file
[+] Closing dump file

在當(dāng)前目錄下贩猎,導(dǎo)出WeChat.decrypted文件熊户,是砸殼后的MachO文件

WeChat.decrypted文件,導(dǎo)出到Mac電腦

otool -l WeChat.decrypted | grep crypt
-------------------------
WeChat.decrypted:
    cryptoff 16384
   cryptsize 107446272
     cryptid 0

cryptid0吭服,處于未加密狀態(tài)敏弃,證明導(dǎo)出的WeChat.decrypted砸殼成功

使用dumpdecrypted工具,要求Xcode SDK與越獄設(shè)備iOS SDK版本一致

例如:對(duì)iOS 9.1的設(shè)備插入dumpdecrypted.dylib噪馏,就要使用老版本的Xcode對(duì)dumpdecrypted進(jìn)行make

否則在插入dumpdecrypted.dylib時(shí)麦到,會(huì)出現(xiàn)以下錯(cuò)誤

DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib /var/mobile/Containers/Bundle/Application/B1661526-3E43-4397-9E86-A9735DE89AE1/WeChat.app/WeChat
-------------------------
dyld: Symbol not found: ___chkstk_darwin
 Referenced from: dumpdecrypted.dylib
 Expected in: /usr/lib/libSystem.B.dylib
in dumpdecrypted.dylib
Trace/BPT trap: 5
frida-ios-dump

該工具基于frida提供的強(qiáng)大功能绿饵,通過(guò)注入js實(shí)現(xiàn)內(nèi)存dump,然后通過(guò)python自動(dòng)拷貝到電腦生成ipa文件瓶颠。

frida-ios-dump支持眾多版本的系統(tǒng)拟赊,非完美越獄的環(huán)境也可使用,是目前最常用粹淋、最穩(wěn)定的砸殼工具

pip安裝

pip的安裝和python版本有關(guān)吸祟,python安裝使用pip,而python3安裝使用pip3

查看python版本

python --version
-------------------------
Python 2.7.16

查看python3版本

python3 --version
-------------------------
Python 3.8.2

查看pip版本

pip -V

查看pip3版本

pip3 -V

使用easy_install命令桃移,安裝pip

sudo easy_install pip

使用easy_install的方式屋匕,我沒(méi)有安裝成功。pippip3都嘗試過(guò)借杰,安裝后一直提示版本問(wèn)題过吻,無(wú)法使用

這里介紹另一種方式,使用get-pip

克隆get-pip

git clone https://github.com/pypa/get-pip.git

來(lái)到public目錄下

使用python3執(zhí)行get-pip.py腳本蔗衡,安裝pip3

python3 get-pip.py

frida安裝

iOS設(shè)備纤虽,安裝frida

打開(kāi)Cydia,添加源:https://build.frida.re

安裝Frida

Mac電腦绞惦,安裝frida

sudo pip3 install frida-tools

可能會(huì)出現(xiàn)警告:you may want sudo's -H flag

  • 目錄不歸當(dāng)前用戶所有逼纸。請(qǐng)檢查該目錄的權(quán)限和所有者,需要sudo-H標(biāo)志

sudo -Hset-homeHOME變量設(shè)為目標(biāo)用戶的主目錄

sudo -H pip3 install frida-tools

出現(xiàn)Uninstalling a distutils installed project (six)提示济蝉,執(zhí)行以下命令:

sudo pip3 install frida --upgrade --ignore-installed six

frida使用

查看Mac電腦的進(jìn)程

frida-ps
-------------------------
 PID  Name
17799  360壓縮大師
5668  AccessibilityVisualsAgent
 602  AirPlayUIAgent
 381  AppSSOAgent
13006  Code
...

USB連接設(shè)備杰刽,查看手機(jī)上的進(jìn)程

frida-ps -U
-------------------------
PID  Name
5574  Cydia
5480  iTunes
5569  老司機(jī)汽車
6318  郵件
...

進(jìn)入WeChat進(jìn)程

frida -U 微信

輸出WeChat內(nèi)存中的對(duì)象

[iPhone::微信]-> ObjC
-------------------------
       "_SFPBSearchSuggestion": {
           "handle": "0x1db5319f8"
       },
       "_SFPBSectionHeaderCardSection": {
           "handle": "0x1db49d2b8"
       },
...

frida更多語(yǔ)法,可查看:官方文檔

frida擅長(zhǎng)將jspython腳本王滤,注入到目標(biāo)程序并執(zhí)行贺嫂,它并不適合作為動(dòng)態(tài)分析的工具使用

frida-ios-dump就是將dump.py,通過(guò)frida注入目標(biāo)程序淑仆,從而實(shí)現(xiàn)應(yīng)用砸殼

Mac電腦涝婉,配置frida-ios-dump

官網(wǎng)地址:https://github.com/AloneMonkey/frida-ios-dump

克隆frida-ios-dump

sudo git clone https://github.com/AloneMonkey/frida-ios-dump

進(jìn)入frida-ios-dump目錄

安裝依賴

sudo pip3 install -r requirements.txt --upgrade

安裝過(guò)程中,可能出現(xiàn)的錯(cuò)誤

prompt-toolkit版本不兼容問(wèn)題

frida-tools 1.2.2 has requirement prompt-toolkit<2.0.0,>=0.57, but you'll have prompt-toolkit 2.0.7 which is incompatible.

解決方法蔗怠,需要降低prompt-toolkit版本

卸載prompt-toolkit

sudo pip uninstall prompt-toolkit

安裝指定版本

sudo pip install prompt-toolkit==1.0.6

如果出現(xiàn)-H警告墩弯,同樣使用sudo -H解決

sudo -H pip3 install -r requirements.txt --upgrade

frida-ios-dump使用

進(jìn)入frida-ios-dump目錄,執(zhí)行dump.py腳本

./dump.py 微信
-------------------------
Traceback (most recent call last):
 File "./dump.py", line 11, in <module>
   import frida
ImportError: No module named frida

遇到上述問(wèn)題寞射,先檢查frida-ios-dump目錄的讀寫權(quán)限

右鍵frida-ios-dump目錄渔工,選擇“顯示簡(jiǎn)介”,添加“本用戶”的讀寫權(quán)限桥温,并選擇“應(yīng)用到包含的項(xiàng)目...”

打開(kāi)dump.py文件引矩,需要將python修改為python3

執(zhí)行dump.py腳本

./dump.py 微信
-------------------------
[Errno None] Unable to connect to port 2222 on 127.0.0.1, ::1 or fe80::1
Try specifying -H/--hostname and/or -p/--port

還是執(zhí)行失敗了,因?yàn)樵?code>dump的時(shí)候,會(huì)將ipa包導(dǎo)出到Mac電腦旺韭,此時(shí)需要USB連接設(shè)備氛谜。所以在dump之前,應(yīng)該先執(zhí)行usbConnect.sh腳本

檢查dump.py文件中的User区端、Password值漫、HostPort织盼,是否和usbConnect.sh腳本中的配置一致

修改Port杨何,將2222修改為12345

執(zhí)行dump.py腳本

./dump.py 微信
-------------------------
Start the target app 微信
Dumping 微信 to /var/folders/jl/d06jlfkj2ws74_5g45kms07m0000gn/T
[frida-ios-dump]: ilink_network.framework has been loaded.
...
Generating "微信.ipa"

執(zhí)行成功,在frida-ios-dump目錄下沥邻,成功導(dǎo)出微信.ipa

可以將其配置為環(huán)境變量危虱,方便使用

iOS終端支持中文

iOS終端默認(rèn)是不支持中文的

創(chuàng)建.inputrc隱藏文件,寫入以下代碼:

set convert-meta off
set output-meta on
set meta-flag on
set input-meta on

.inputrc文件唐全,拷貝到手機(jī)的/var/root目錄下

scp -P 12345 .inputrc root@localhost:/var/root
-------------------------
.inputrc                                      100%   75     8.2KB/s   00:00

iOS終端埃跷,輸入中文

總結(jié)

砸殼原理

  • 應(yīng)用加殼:一般應(yīng)用為了防止反編譯分享,會(huì)對(duì)應(yīng)用進(jìn)行加密(加殼)
  • 應(yīng)用砸殼:砸殼(脫殼)就是解密的過(guò)程
    ? 靜態(tài)砸殼:已經(jīng)知道了解密方式芦瘾,不需要運(yùn)行應(yīng)用的情況下捌蚊,直接解密
    ? 動(dòng)態(tài)砸殼:在應(yīng)用啟動(dòng)后集畅,從內(nèi)存中找到應(yīng)用的位置近弟,dump(內(nèi)存中導(dǎo)出)數(shù)據(jù)

Clutch

  • 是一個(gè)命令行工具
  • Clutch -i:查看安裝的應(yīng)用程序
  • Clutch -d 應(yīng)用編號(hào):導(dǎo)出ipa

dumpdecrypted

  • 是一個(gè)動(dòng)態(tài)庫(kù),不能獨(dú)立運(yùn)行
  • 通過(guò)DYLD_INSERT_LIBRARIES環(huán)境變量挺智,插入動(dòng)態(tài)庫(kù)祷愉。載入某個(gè)進(jìn)程
  • DYLD_INSERT_LIBRARIES = 庫(kù)路徑(庫(kù)的可執(zhí)行文件) MachO路徑
  • 9.1以上系統(tǒng),不允許root用戶使用DYLD_INSERT_LIBRARIER方式插入動(dòng)態(tài)庫(kù)赦颇,需要切換成mobile用戶

frida-ios-dump

  • 利用frida加載腳本砸殼
  • 安裝frida二鳄,MaciPhone都需要安裝
  • 下載frida-ios-dump腳本工具
  • 執(zhí)行dump.py,參數(shù)是應(yīng)用名稱或BundleID

iOS終端支持中文

  • 創(chuàng)建.inputrc隱藏文件媒怯,寫入代碼
  • 拷貝到手機(jī)的/var/root目錄下
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末订讼,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子扇苞,更是在濱河造成了極大的恐慌欺殿,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,470評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件鳖敷,死亡現(xiàn)場(chǎng)離奇詭異脖苏,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)定踱,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,393評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門棍潘,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人,你說(shuō)我怎么就攤上這事亦歉⌒衾耍” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 162,577評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵肴楷,是天一觀的道長(zhǎng)资锰。 經(jīng)常有香客問(wèn)我,道長(zhǎng)阶祭,這世上最難降的妖魔是什么绷杜? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,176評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮濒募,結(jié)果婚禮上鞭盟,老公的妹妹穿的比我還像新娘。我一直安慰自己瑰剃,他們只是感情好齿诉,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,189評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著晌姚,像睡著了一般粤剧。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上挥唠,一...
    開(kāi)封第一講書(shū)人閱讀 51,155評(píng)論 1 299
  • 那天抵恋,我揣著相機(jī)與錄音,去河邊找鬼宝磨。 笑死弧关,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的唤锉。 我是一名探鬼主播世囊,決...
    沈念sama閱讀 40,041評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼窿祥!你這毒婦竟也來(lái)了株憾?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 38,903評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤晒衩,失蹤者是張志新(化名)和其女友劉穎嗤瞎,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體浸遗,經(jīng)...
    沈念sama閱讀 45,319評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡猫胁,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,539評(píng)論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了跛锌。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片弃秆。...
    茶點(diǎn)故事閱讀 39,703評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡届惋,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出菠赚,到底是詐尸還是另有隱情脑豹,我是刑警寧澤,帶...
    沈念sama閱讀 35,417評(píng)論 5 343
  • 正文 年R本政府宣布衡查,位于F島的核電站瘩欺,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏拌牲。R本人自食惡果不足惜俱饿,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,013評(píng)論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望塌忽。 院中可真熱鬧拍埠,春花似錦、人聲如沸土居。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,664評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)擦耀。三九已至棉圈,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間眷蜓,已是汗流浹背分瘾。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,818評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留账磺,地道東北人芹敌。 一個(gè)月前我還...
    沈念sama閱讀 47,711評(píng)論 2 368
  • 正文 我出身青樓痊远,卻偏偏與公主長(zhǎng)得像垮抗,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子碧聪,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,601評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容

  • 砸殼 軟件脫殼逞姿,顧名思義辞嗡,就是對(duì)軟件加殼的逆操作,把軟件上存在的殼去掉(解密)滞造。 砸殼原理 應(yīng)用加殼(加密)提交給...
    looha閱讀 1,310評(píng)論 0 2
  • 軟件脫殼续室,顧名思義,就是對(duì)軟件加殼的逆操作谒养,把軟件上存在的殼去掉(解密)挺狰。 砸殼原理 應(yīng)用加殼(加密)提交給App...
    鼬殿閱讀 925評(píng)論 0 0
  • 一、砸殼 軟件脫殼,顧名思義丰泊,就是對(duì)軟件加殼的逆操作薯定,把軟件上存在的殼去掉(解密)。 1.1 砸殼原理 1.1.1...
    HotPotCat閱讀 9,506評(píng)論 0 3
  • 很久沒(méi)有發(fā)文章了年堆,最近沉迷逆向無(wú)法自拔,開(kāi)始寫點(diǎn)東西做個(gè)小總結(jié)吧盏浇,后續(xù)慢慢更新吧嘀韧,全當(dāng)記錄,共同學(xué)習(xí)缠捌。 方法一锄贷、f...
    NBeanN閱讀 10,482評(píng)論 2 9
  • 砸殼 1.Clutch下載release版本,復(fù)制到手機(jī)/usr/bin目錄.①.scp命令復(fù)制 scp -P ...
    Double丶K閱讀 622評(píng)論 0 0