0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何在Dotfuscato中利用自定義規(guī)則呢?

哲想軟件 ? 來源:哲想軟件 ? 2023-08-22 09:24 ? 次閱讀

經(jīng)過多年的發(fā)展,先發(fā)制人已經(jīng)可以處理所有不同類型的應(yīng)用程序和場景。合理的默認(rèn)設(shè)置旨在使任何項目啟動和運(yùn)行,并且從那里我們可以完全控制保護(hù)設(shè)置。自定義規(guī)則是創(chuàng)建簡單、健壯、靈活配置的一種方法——即使是非常復(fù)雜的應(yīng)用程序也是如此。

在之前的“支持角”文章中,我們了解了在混淆后需要Rename排除才能正常運(yùn)行的編碼技術(shù)。有時,只排除一個類、方法、字段或?qū)傩跃妥銐蛄恕5菍τ诟?、更?fù)雜的應(yīng)用程序,情況通常不是這樣。自定義規(guī)則可以幫助將這些排除因素組織到模式中,以實現(xiàn)更靈活、更健壯的配置??梢詣?chuàng)建規(guī)則來排除父類的所有子類或?qū)崿F(xiàn)特定接口的子類??梢詾槭褂米远x屬性裝飾的類型或成員或具有特定訪問修飾符的類型或成員創(chuàng)建規(guī)則。正則表達(dá)式還可以用于根據(jù)命名約定制定自定義規(guī)則。

考慮下面的例子。

在“保護(hù)使用MVVM模式的.net應(yīng)用程序”中,我們了解到MVVM使用反射來加載模型類的屬性:

35cc3c84-4080-11ee-ac96-dac502259ad0.png

因此,我們必須從Rename混淆中排除這些屬性,以避免運(yùn)行時錯誤:

35e6a074-4080-11ee-ac96-dac502259ad0.png

我可以將其轉(zhuǎn)換為自定義規(guī)則,而不是為每個屬性檢查單個復(fù)選框。每個帶有OnPropertyChanged方法的模型類都必須實現(xiàn)INotifyPropertyChanged?;诖耍覍⒕帉懸粭l規(guī)則來排除實現(xiàn)INotifyPropertChanged的任何類型(.*)的屬性(.*):

3613f542-4080-11ee-ac96-dac502259ad0.png

通過此修改,我們可以更改或擴(kuò)展MVVM模式的使用,而無需更新混淆規(guī)則。我還將應(yīng)用其他混淆轉(zhuǎn)換字符串加密、控制流、鏈接和篡改防御來保護(hù)這部分代碼。







審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 字符串
    +關(guān)注

    關(guān)注

    1

    文章

    567

    瀏覽量

    20447
  • 控制流
    +關(guān)注

    關(guān)注

    0

    文章

    9

    瀏覽量

    8479
  • mvvm模式
    +關(guān)注

    關(guān)注

    0

    文章

    2

    瀏覽量

    1277

原文標(biāo)題:Preemptive:如何在Dotfuscato中利用自定義規(guī)則

文章出處:【微信號:哲想軟件,微信公眾號:哲想軟件】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    創(chuàng)建自定義的基于閃存的引導(dǎo)加載程序(BSL)

    電子發(fā)燒友網(wǎng)站提供《創(chuàng)建自定義的基于閃存的引導(dǎo)加載程序(BSL).pdf》資料免費(fèi)下載
    發(fā)表于 09-19 10:50 ?0次下載
    創(chuàng)建<b class='flag-5'>自定義</b>的基于閃存的引導(dǎo)加載程序(BSL)

    請問multisim怎么自定義元器件?

    為什么我在multisim自定義元器件始終出不了想要的波形效果?同一個pspice模型我同學(xué)之前都定義正確了,現(xiàn)在我想再來試一下結(jié)果一直失敗
    發(fā)表于 09-10 06:16

    NVIDIA NeMo加速并簡化自定義模型開發(fā)

    如果企業(yè)希望充分發(fā)揮出 AI 的力量,就需要根據(jù)其行業(yè)需求量身定制的自定義模型。
    的頭像 發(fā)表于 07-26 11:17 ?633次閱讀
    NVIDIA NeMo加速并簡化<b class='flag-5'>自定義</b>模型開發(fā)

    何在IDF框架中使用自定義的靜態(tài)庫和動態(tài)庫?

    基于商業(yè)需要,我們需要在 ESP-IDF v4.0-rc 這個版本的IDF開發(fā)與使用自定義庫,有如下問題請協(xié)助: 1如何利用IDF框架編寫自定義靜態(tài)庫和動態(tài)庫? 2如
    發(fā)表于 06-25 07:57

    stm32cubemx如何自定義lwip平臺?

    有人知道stm32cubemx,如何自定義lwip平臺。(默認(rèn)只
    發(fā)表于 05-22 07:50

    HarmonyOS開發(fā)案例:【 自定義彈窗】

    基于ArkTS的聲明式開發(fā)范式實現(xiàn)了三種不同的彈窗,第一種直接使用公共組件,后兩種使用CustomDialogController實現(xiàn)自定義彈窗
    的頭像 發(fā)表于 05-16 18:18 ?1178次閱讀
    HarmonyOS開發(fā)案例:【 <b class='flag-5'>自定義</b>彈窗】

    TSMaster 自定義 LIN 調(diào)度表編程指導(dǎo)

    LIN(LocalInterconnectNetwork)協(xié)議調(diào)度表是用于LIN總線通信中的消息調(diào)度的一種機(jī)制,我們收到越來越多來自不同用戶希望能夠通過接口實現(xiàn)自定義LIN調(diào)度表的需求。所以在
    的頭像 發(fā)表于 05-11 08:21 ?518次閱讀
    TSMaster <b class='flag-5'>自定義</b> LIN 調(diào)度表編程指導(dǎo)

    HarmonyOS開發(fā)案例:【UIAbility和自定義組件生命周期】

    本文檔主要描述了應(yīng)用運(yùn)行過程UIAbility和自定義組件的生命周期。對于UIAbility,描述了Create、Foreground、Background、Destroy四種生命周期。對于頁面
    的頭像 發(fā)表于 05-10 15:31 ?1069次閱讀
    HarmonyOS開發(fā)案例:【UIAbility和<b class='flag-5'>自定義</b>組件生命周期】

    HarmonyOS開發(fā)實例:【自定義Emitter】

    使用[Emitter]實現(xiàn)事件的訂閱和發(fā)布,使用[自定義彈窗]設(shè)置廣告信息。
    的頭像 發(fā)表于 04-14 11:37 ?930次閱讀
    HarmonyOS開發(fā)實例:【<b class='flag-5'>自定義</b>Emitter】

    鴻蒙ArkUI實例:【自定義組件】

    組件是 OpenHarmony 頁面最小顯示單元,一個頁面可由多個組件組合而成,也可只由一個組件組合而成,這些組件可以是ArkUI開發(fā)框架自帶系統(tǒng)組件,比如?`Text`?、?`Button`?等,也可以是自定義組件,本節(jié)筆者簡單介紹一下自定義組件的語法規(guī)范。
    的頭像 發(fā)表于 04-08 10:17 ?556次閱讀

    基于YOLOv8實現(xiàn)自定義姿態(tài)評估模型訓(xùn)練

    Hello大家好,今天給大家分享一下如何基于YOLOv8姿態(tài)評估模型,實現(xiàn)在自定義數(shù)據(jù)集上,完成自定義姿態(tài)評估模型的訓(xùn)練與推理。
    的頭像 發(fā)表于 12-25 11:29 ?2662次閱讀
    基于YOLOv8實現(xiàn)<b class='flag-5'>自定義</b>姿態(tài)評估模型訓(xùn)練

    博途用戶自定義庫的使用

    博途官方提供了很多庫,比如:基本函數(shù)庫、通信庫、安全庫、驅(qū)動庫等等,用戶可以使用庫的函數(shù)/函數(shù)塊來完成具體的控制任務(wù)。除了官方的庫,我們也可以創(chuàng)建自己的庫(用戶自定義庫)。比如,把項目
    的頭像 發(fā)表于 12-25 10:08 ?809次閱讀
    博途用戶<b class='flag-5'>自定義</b>庫的使用

    基于YOLOv8的自定義醫(yī)學(xué)圖像分割

    YOLOv8是一種令人驚嘆的分割模型;它易于訓(xùn)練、測試和部署。在本教程,我們將學(xué)習(xí)如何在自定義數(shù)據(jù)集上使用YOLOv8。但在此之前,我想告訴你為什么在存在其他優(yōu)秀的分割模型時應(yīng)該使用YOLOv8
    的頭像 發(fā)表于 12-20 10:51 ?685次閱讀
    基于YOLOv8的<b class='flag-5'>自定義</b>醫(yī)學(xué)圖像分割

    IAR下手動拷貝自定義程序段到RAM執(zhí)行的方法分享

    在痞子衡舊文 《IAR下RT-Thread工程自定義函數(shù)段重定向失效分析》 里,我們知道 IAR 鏈接器處理自定義程序段重定向是有一些限制的,只要用戶重寫了底層 __low_level_init() 函數(shù)
    的頭像 發(fā)表于 11-21 09:38 ?1711次閱讀
    IAR下手動拷貝<b class='flag-5'>自定義</b>程序段到RAM<b class='flag-5'>中</b>執(zhí)行的方法分享

    何在Matlab自定義Message

    自定義Message 當(dāng)我們的 message 消息比較復(fù)雜時,通常要用到自定義的 message 消息,MATLAB 2020b以上的版本自帶了ROS Toolbox Interface
    的頭像 發(fā)表于 11-15 18:12 ?1143次閱讀
    如<b class='flag-5'>何在</b>Matlab<b class='flag-5'>中</b><b class='flag-5'>自定義</b>Message