iOS/Android訓練營:走進神秘的IPA逆向工程

2021-01-10 CSDN技術社區

編者按:iOS / Android 訓練營將於7月27日、7月28日在北京新雲南皇冠假日酒店舉行。為了做到不坑爹,無水貨,本次大會主要針對iOS和Android的一線技術和開發人員。在大會開幕之前的這段時間,我們將採訪一些重頭的講師和神秘的開發者們,提前劇透一些精彩內容。本期我們專訪的嘉賓是友盟iOS Team Leader 張超。

講師簡介:張超,iOS創業者,2009年在深圳第一次創業,主要從事iPhone應用的開發,完成了從技術到產品設計以及團隊運營管理等全流程角色的轉換,積累了豐富的iOS創業經驗,熟稔App Store的規則及流程,了解開發者的需求,並掌握了創業項目的全程運作能力。目前在國內移動網際網路統計分析平臺——友盟,擔任iOS Team Leader。是創新工場和友盟的早期團隊成員。

議題簡介:在App Store中經常會出現各種令人耳目一新的App,他們是如何實現那些效果的?他們又是使用哪些公共組件來完成自己的功能的呢?在本次演講中將對如何探索那些封藏在IPA文件內部的實現進行簡單的分析,將會針對其中的一些工具進行具體的演示和介紹。

圖:友盟iOS Team Leader 張超

編輯:為什麼會想到為大家講這樣一個比較灰色的話題?

張超:就想讓大家有一個方法,告訴大家怎麼去看去探尋那些他們不知道的東西是怎麼實現。有些其實不是秘密的秘密,只是很多人不知道而已,所以借這麼一個機會,與大家交流一下這些方法。其實大部分的軟體和應用的技術含量並不高,很多開發者的整體思想都差不多。而說到一個APP的成功,並不是說技術非得有多牛,而是說整體的運營,整體的設計,整體的產品,開發者如何去掌控這些。

編輯:這次你講的,通過靜態分析工具了解IPA實現,它大概是逆向到一個什麼樣的級別了,這個逆向合法嗎?

張超:逆向本身是看你什麼目的,就說這個工具本身的出現,或者說它的使用,比如說經常說的一句話,雙刃劍,那你拿這個劍去殺人還是去救人,都是一念之間的事,所以這個東西看你怎麼去用。

業界做逆向最有名軟體,就是IDA Pro,這軟體相信大家之前其實已經有所耳聞了。為什麼呢?因為我記得有一次360出事了,就是有些人把360的App逆向了。那些在網上流傳的截圖就是用IDA做的。所以其實這個東西很多人都知道,只是說看他怎麼去用。我這次演講不會介紹你用IDA Pro。而是會介紹另外一些東西。可能這些小工具的發展就沒有那麼久遠,他們是近一兩年之內的新軟體,因此也沒有逆向的那麼徹底。彙編的內容肯定有,但彙編對一般人來說,不是那麼可讀。這些工具做的一件比較好的事情就是它可以把那些彙編的符號表給連起來,這樣就可以去反編譯出來C級的原碼。雖然這源碼不能直接用,但是你可以去了解,去窺探。它類似編解碼,可讀性也更強一點。對比IDA Pro來說,可以讓大家比較簡單的去了解這個過程。這個講座並不會深入到彙編級別,弄成彙編基礎知識培訓班。

編輯:通過靜態分析工具了解IPA實現,還有其他的意義嗎?

張超:還有另外一個目的,因為對於很多的IOS程式設計師來說,他做到一定的程度時就做到一個瓶頸,一個門檻。這個瓶頸是怎麼造成的?答案就是程式設計師的視野。一個App做完了,很少會作大規模的重構。

Twitter的iOS客戶端後來有過一兩版的重構,我們覺得還是能夠看出來效率的提高。我們做SDK,我們這個東西要跑到別人的程式裡邊,它的穩定性、安全性方面都要考慮,這需要我們反覆打磨。因為實際上,這個SDK沒有什麼難度,但是很多設計實現上的一些細節需要深入考量。

另外一方面,在接口設計上,一般人也不去考慮,他因為不需要給別人用。我們內部會做很多逆向的一個原因,就是去學習別人的接口是怎麼設計的。這個東西是不會有特別多的資料的,除了逆向這條路以外,也沒有更多的東西去走。所以我們看一些SDK,看一下是怎麼樣的過程,它怎麼設計的,這對我們的內部設計也是非常有好處。

編輯:通過做SDK、做逆向編譯,你或許窺探過許多程序的內部。你覺得現在的iOS移動開發者應該在哪方面加強呢?

張超:如果說你是特別好的程式設計師,那你該去做單元測試,去考慮接口的設計。有一句話,我覺得印象比較深刻:如果你這個程序沒法寫好單元測試,那意味著你這個東西需要重構了。因為你的接口設計可能只是實現一個功能,全都返回值可能都是空,這樣的你根本沒有去做單元測試。這是同樣的道理,你要去考慮一下對外的良好性,或者你自己的一個模塊化的設計。如果說你真的想好好搞好程序,自己打磨是可以的。如果自己的功力還不夠,那你只能說通過一些這種灰色通道去看一下別人的代碼。

編輯:那回到逆向工程的話題,你們為哪些App做了逆向工程?

張超:每天幾乎都在做逆向工程。有些人去集成了我們的SDK,他說有問題,他這個問題可能說新舊版之間API的變化,或者他使用上有些問題。那我們這個怎麼去判定呢?肯定是需要通過逆向的方法來檢查,因為我們拿不到他更多的信息。我不能說:你把原碼發來,我給你看一下。當然以前曾經很早期的合作夥伴是有過這樣的情況。我幫他改原碼,這樣的情況也是有的。但現在都是很多大公司開發的應用,不可能把那些應用的原始碼發過來。那我們只能通過這種方式來排查問題。看他是在哪集成、在哪調用,我可以看他的工程師是否符合我們的文檔描述,大部分的錯誤其實都是由於產品的新舊版更替,或一些API的變化導致的問題。所以在講這個主題的時候,我會去從幾個角度去分析這個事情,不會講一個特別具體的Case,我是會講一般的過程。想聽更多的內容,請到我們的iOS / Android 訓練營大會上來吧。我將為你帶來更多實現的細節和開發經驗。

立即報名>>

本文為CSDN原創文章,未經允許不得轉載。如需轉載請聯繫market@csdn.net。

責任編輯:張寧

相關焦點

  • 通訊:新加坡孩子暑期「瘋玩」訓練營
    原標題:通訊:新加坡孩子暑期「瘋玩」訓練營  新華網新加坡8月6日電(記者 馬玉潔)雖正值暑假,新加坡史丹福美國國際學校仍然熱鬧非凡。剛走進學校的露天食堂,就看到一群穿著廚師服的小學生,一邊在嘰嘰喳喳地討論,一邊有些笨拙地用勺子鏟起麵糊,放進做蛋糕的紙杯裡。
  • 同步推:取代installous的國產ipa安裝工具
    日前,他們推出了一款名為「同步推」的ipa應用,號稱第一款「能安裝ipa的ipa軟體」。  實際上,他們破解了蘋果的ipa安裝的dll文件,找到了蘋果軟體安裝的官方接口,於是這個不再使用installous採用的底層deb技術,也不像91百寶箱,只能採用原始的pxl安裝方式。
  • 2017年全國室內跳傘訓練營開營
    (原標題:2017年全國室內跳傘訓練營開營)
  • 來自IMPACT訓練營的未來之星Haliburton
    在參加選秀會前,Tyrese Haliburton一直跟著IMPACT訓練營創辦人Joe Abunassar訓練,他同時也是NBA知名的訓練師,培育過不少明星球員,Joe Abunassar也對這位年輕人相當讚賞,他提到一段故事,在訓練營,球員都會收到一些籃球裝備,不過Tyrese Haliburton卻把它送給了訓練營的實習生,Joe Abunassar說「這就是明星特質,他展現出來的態度以及自信
  • 高手是如何設計訓練營的轉化環節的?
    那麼,對於高手來說,是如何設計訓練營的轉化環節的?本文作者通過體驗混沌大學的7天學習營,為我們分享了她學到的關於用戶留存和轉化的設計,快來收藏學習吧。  混沌大學包含的產品:  APP:混沌大學  網站:混沌大學  微信生態:官方大號公眾號+服務號4個,各個地區分社公眾號若干,小程序5個(包含地區分社)  線下分社:訓練營  教學模式:線上直播/錄播課程+線下訓練營+課後作業+微信群,本次參加的是線上學習營,以直播課為主,由於是思維課程,課後作業以主動分享為主。
  • 天健集團首期《鏈商牡丹巨鯨訓練營》圓滿收官
    2020年9月24至26日,天健集團在菏澤市瑞和溫泉度假村舉辦了為期兩天的巨鯨訓練營,本次集訓的目的是:系統培訓超級節點骨幹隊伍集訓採用專題授課、項目解析、考核比賽、參觀見學、體會分享等方式進行,通過封閉式訓練,參訓人員不僅對牡丹鏈改政策趨勢有了清醒的認識,還對整個通證商業模型有了深刻的理解,更加堅定了參與鏈改、助力扶貧的信心和決心,大家紛紛表示:一定以飽滿的精神狀態、以掌握的推廣技能開赴全國一線開拓市場,落地生根。
  • 巴基斯坦摔跤訓練營
    攝影師Muhammed Muheisen記錄下巴基斯坦「古什蒂」摔跤手的訓練場景「古什蒂」摔跤手的訓練費非常高,每位摔跤手一天的訓練大概需耗費8.5美元至12美元,其中包括按摩費、食物費和課程費。由於物價高昂,許多學員都在校外打零工以湊足「學費」。巴基斯坦及亞洲競賽冠軍、巴基斯坦籍阿卜杜勒?馬吉德?蘇達裡說道:「『古什蒂』是我們僅有的一項民族傳統運動,但它在印度卻更受歡迎,那兒甚至有女職業摔跤手,可惜我們政府並沒意識到它是最古老的運動之一。」
  • 普羅理想國軟式棒壘球暑假訓練營招募截止倒...
    當孩子們用靈氣與才華籌備的這場英文原創音樂劇完美上演,軟式棒壘球暑假訓練營即將強勢接力,為這個夏天再添濃重一筆。少年振臂一揮一道絕妙的弧線讓他成為全場焦點普羅理想國軟式棒壘球暑假訓練營比電影更青春,比日漫更熱血揮棒吧,少年!
  • 大國重器之北鬥系統—— 「雅努斯科學思維訓練營」舉辦第四期活動
    2020年11月26日,由中國科普研究所主辦,清華大學附屬中學、中國數字科技館和中國科技館發展基金會協辦的「雅努斯科學思維訓練營」之「水木講堂」2020秋季學期清華附中營(第四期)在清華大學附屬中學拉開帷幕
  • DeeCamp2019人工智慧訓練營正式開營!
    7月20日,創新工場主辦的DeeCamp 2019人工智慧訓練營開營儀式在中國科學院大學正式舉行。因此,注重培養學員「用AI解決真實世界問題」的DeeCamp訓練營自發起以來就在國內外各大高校之間反響熱烈,每年都有海量計算機、數學、自動化等相關專業的本碩博學生積極參與並踴躍報名。2017年首屆 DeeCamp 訓練營就吸引了國內外近千位高校學生報名,最終招生36人。
  • 生物學院成功舉辦生命科學研究生暑期訓練營
    本網訊 7月28日到8月13日,為了進一步創新人才培養,提高研究生的綜合能力,生物學院利用研究生居家學習和返校初期的時間,成功舉辦了生命科學研究生暑期訓練營。訓練營邀請了我校生物學院、農學院和中科院北京基因組所等在科研一線從事研究工作的七位老師為生物學院研究生講授生命科學研究中常用的前沿實驗技術、統計方法、實驗設計思路和數據分析作圖工具的基本原理和使用方法。生物學院一年級到四年級研究生近五百人,部省合建對口單位河北大學生科院研究生一百餘人在線參加了培訓。
  • 青海冷湖 火星登陸計劃訓練營!
    2020年8月2日,青海冷湖,童程童美火星登陸計劃訓練營即將開營,人生的第一次「火星體驗「將從這裡開始~為了讓有航天夢的青少年們實現火星夢 童程童美為青少年們量身打造了獨一無二的暑假國內營青海冷湖·火星登陸計劃訓練營!
  • 逆向工程解析蘋果IOS平臺下架360全部軟體的原因
    最後補充下,這些APP如360手機衛士在APP Store的最後一次更新是1.81版本,而360又明確在公告中說了「360產品無需做任何修改,將在未來48小時到72小時內重新上架蘋果APP商店」,等360上架的時候,可以分析一下,360到底有沒有改動過,呵呵,很簡單,看看ipa就知道了。  當然,如果是這個結果,我又會對蘋果的APP審核機制產生新的憂慮。
  • 巴斯鐵三訓練營即將開營,老鐵就等你上車啦!
    考慮到學員整體感受,我們會將總人數限制在一定範圍內,以確保所有入營學員能獲取最佳感受與訓練效果。團訓營現只剩最後6席珍稀名額,掃描下方二維碼即可上車。Q:團訓營是否包含保險 ?A:學員需自行購買意外傷害保險,入營時需出示保險單,保險要求參見報名推文。
  • Mac自籤ipa方法,uncOver不怕掉籤
    今天要為大家分享的是Mac端自籤名ipa的方法,讓您使用自己的Apple ID帳號就可以給uncOver進行籤名,從此再也不用擔心掉籤狀態了。 此次我們需要使用AltServer進行給ipa籤名,AltServer支持Windows與MacOS平臺,今天為大家分享MacOS平臺的方法,在下方獲取連結進行下載AltServer。 (https://altstore.io/)
  • 臺灣神秘天體營曝光 年輕中產全祼熱舞(圖)
    神秘天體營現身臺灣科學園區!近年各地再吹起天體營風潮,據最新一期臺灣《壹周刊》報導,一對年僅30歲夫妻,在網上組織天體營活動,日前更玩到新北市科學園區。24名男女參加者中,更包括知名電臺DJ、老師、警察等社會中產階級分子。他們一入房便脫精光,有的還拉著不認識的人裸身熱舞。
  • 首都大學生創客領袖訓練營開營儀式在陝西舉行
    訓練營學員代表發言中國網6月26日訊 (記者 彭瑤)6月26日上午,「挑戰杯」首都大學生創客領袖訓練營活動在陝西省西鹹新區灃西新城西部雲谷舉行了開營儀式。創客領袖訓練營:為大學生提供學習創業經驗的平臺活動由共青團北京市委員會、陝西省西鹹新區管委會主辦,共青團北京聯合大學委員會、西鹹新區灃西新城管委會、西鹹新區管委會信息中心承辦。第八屆「挑戰杯」首都大學課外生課外學術科技作品競賽委員會主任、北京聯合大學黨委副書記周志成,組委會副主任、北京聯合大學團委書記解慶陽出席開營儀式。
  • 2018理想少年營之「軟式棒壘球暑假訓練營」火爆招募
    讓孩子不出國門體驗國際一線藝術教育名校專業歐美教師授課雙語授課環境切換自如給孩子情景式教學體驗孩子的每個暑假都是極其珍貴的成長機會理想少年軟式棒壘球暑假訓練營率先招募揮棒吧!2018的暑假,註定與體育結緣世界盃狂歡之後,夏日激情不散又一場國際化球賽熱潮接力而來銀鞍照白馬,颯沓如流星孩子的熱愛與國際接軌2018理想少年軟式棒壘球暑假訓練營讓每個閃光的少年時代都擁有一次夢想全壘打一套由名校支持、來自臺灣的一線名師
  • 遼源支隊創新成果展示(三)——「寫作訓練營」文創班
    寫作訓練營營造氛圍: 緊貼政工崗位練兵和工作實際需要,成立「寫作訓練營周鵬政委為「寫作訓練營學員孫傳宇為「寫作訓練營「訓練營
  • 航天科技營丨體驗航天員訓練日常,get航天科技知識
    國慶假期,羚羊將帶領孩子走進航天世界,在中國權威的航天機構——深圳太空研究院,讓孩子沉浸式體驗航天員的訓練項目,感受獨一無二的航天科研樂趣,探究航天科學的無窮魅力!學習研究航天知識,不僅能為未來開發太空插上騰飛的翅膀,還能為我國及世界的航天事業做出貢獻。