?

控制流

  • 基于OpenMP的并行Fortran程序數據競爭靜態檢測方法
    影響,具有動態控制流和不規則訪問的程序不在LLOV分析范圍內.現有的缺陷檢測工具對OpenMP并行程序的語言和語法特性進行分析的不多,一些研究人員是通過多面體模型來檢測指定的OMP并行構造進行靜態檢測分析,與他們工作不同的是,本文是針對OpenMP并行程序的指令特性來對數據競爭故障進行分析,從而建立數據競爭模型.因此本文方法對OpenMP制導指令的支持更健全和更準確.1.2.2 本文工作本文的工作應用數據流分析以及模型檢測理論,將數據競爭抽象為一種故障模型

    小型微型計算機系統 2023年11期2023-11-10

  • 面向DCU非一致控制流的編譯優化
    向DCU非一致控制流的編譯優化楊小藝1,2,趙榮彩1,2,王洪生2*,韓林1,2,徐坤坤1,2(1.鄭州大學 計算機與人工智能學院,鄭州 450001; 2.國家超級計算鄭州中心,鄭州 450001)( ? 通信作者電子郵箱whs1814@foxmail.com)國產DCU采用單指令多線程(SIMT)的并行執行模型,在程序執行時核函數內會產生非一致控制流,導致線程束中的線程部分只能串行執行,即線程束分化。針對核函數的性能因線程束分化受到嚴重制約的問題,提出

    計算機應用 2023年10期2023-10-21

  • 面向基本路徑學習的代碼自動命名
    代碼的數據流和控制流相關的特征,作為方法名模板對應的規則,根據啟發式規則去檢測具有與規則類似特征的方法代碼名稱是否準確.應用文本分析技術的方法的基本思想是將方法代碼當作自然語言文本進行處理.文獻[3]將源代碼中關鍵字標識符剔除,使用文本主題提取算法得到文本主題特征,將提取的文本摘要作為方法名.最近,研究者將機器學習的技術引入到方法代碼的抽象命名中[4,7],這種方法的關鍵技術是將方法代碼抽象成新的代碼表示作為代碼特征,應用機器學習技術自動學習代碼特征,根據

    小型微型計算機系統 2022年11期2022-11-18

  • 致密油藏壓裂水平井產量預測
    ,提出了以邊界控制流時間為節點的新型組合模式,同時根據節點處的產量相等和遞減率相等,推導出了新型分段產量預測模型,并給出了邊界控制流時間及該模型的求解方法,可預測不同生產階段的單井全生命周期產量。1 產量預測模型的推導根據Arps 產量遞減模型[12],當遞減指數為0 時,可特殊化為指數遞減,其特點是單位時間內產量下降與產量成比例,即遞減率為定值,為現場常用模型,其產量和時間的關系為指數遞減的遞減率:而借鑒的SEPD 模型,則是一個基于經驗的公式[13],

    新疆石油地質 2022年5期2022-09-20

  • 基于IDA microcode的控制流反混淆框架設計與實現
    指令替換、虛假控制流控制流平坦化。隨后有多位開發者在O-LLVM官方版本基礎上進行修改并開源,增加了更多的混淆方案,例如:字符串加密[2]、寄存器間接跳轉[3]、函數間接調用[3]、指令虛擬化[4]等。O-LLVM可以有效保護軟件知識產權,同時也被廣泛應用在病毒、木馬等惡意軟件。因此,實現 O-LLVM反混淆對于維護健康的軟件安全生態環境具有重要的現實意義。2015年,Yadegari等[5]提出了一種基于模擬執行的反混淆方法。但是,此類方案主要存在以下

    桂林電子科技大學學報 2022年2期2022-07-08

  • 基于級聯森林的控制流錯誤檢測優化算法
    將這種錯誤稱為控制流錯誤.研究表明,瞬時故障引起的錯誤中有約33%~77%的錯誤是控制流錯誤[3,4].控制流錯誤主要是由于瞬時故障發生在程序計數器(PC),地址存儲單元或者條件判斷語句中的變量存儲單元.控制流錯誤會造成計算機程序不按照正確的指令順序執行,可能會干擾程序的運行結果、造成程序陷入死循環甚至崩潰[5].針對瞬時故障,現有的故障檢測方法可以分為硬件方法和軟件方法.硬件方法主要依靠硬件模塊的冗余或者設置錯誤檢測電路來實現,需要針對不同的硬件體系專門

    小型微型計算機系統 2022年5期2022-05-10

  • 采用隱式跳轉的控制流混淆技術
    易地構建軟件的控制流信息,未經保護的控制流信息暴露了包括源程序靜態結構、代碼邏輯在內的大量信息,因此對于許多逆向工具而言,控制流圖都是必須構造的數據結構。本文研究的主要目的是抵御靜態代碼分析。抵抗靜態代碼分析特別是控制流分析的主要技術是代碼混淆,這個概念最早由Collerg等[3]提出并加以分類及實現。代碼混淆技術是將一些結構良好、易于理解的代碼轉換為難以閱讀分析的代碼,但是還能完整地保留其所實現的功能,著名的國際C語言混亂代碼大賽[4]就是典型的例子。一

    計算機工程與應用 2021年20期2021-10-28

  • 一種基于控制流解耦的可重構陣列動態調度方法
    時映射時,會因控制流的非一致性導致處于不同控制體的數據流無法同時并行執行,進而引起陣列計算單元利用率下降的問題。常見的非一致性控制流有非完美循環、分支以及循環依賴等。針對非完美循環,可以通過循環交換和循環展開,對內層循環體和外層循環體進行重新組織,但并沒有解決執行外層循環PE 利用率低的問題[1-4];針對分支,通過將不同分支上的指令合并映射到同一PE 上以提高PE 利用率,但這種方法不適用于路徑長度差異較大的非平衡分支[5-6];針對循環依賴,通過利用線

    上海航天 2021年4期2021-09-11

  • Android應用Smali代碼混淆研究
    通過插入多余的控制流和壓扁控制流控制流進行混淆以對安卓應用進行防御。并從功能、性能兩個方面做出了評價。劉方圓等人[14]同樣在smali層面對安卓應用加固進行研究,其主要是對寄存器的值加以混淆以及通過不透明謂詞對控制流進行混淆,并且在強度、彈性、開銷進行的技術評價。吳林[15]提出了基于Dalvik字節碼指令的混淆技術,從數據流和控制流兩個層面對apk進行混淆。綜合現有的工作,大部分的工作都是針對于Android應用程序中源碼級別Java代碼的混淆,對于

    計算機技術與發展 2021年7期2021-08-02

  • 基于代數的軟件路徑的自動生成
    分為代碼分析、控制流圖生成、路徑生成和測試用例四個部分[3]。因此,路徑測試的準確性與路徑生成密切相關。然而,隨著軟件規模的不斷增加,軟件系統中的循環結構出現次數也隨之增多,路徑成爆炸式增長,目前已有的軟件路徑生成方法代價大且困難。文獻[4-7]中對于軟件路徑的自動生成問題均提出了相關算法,但這些算法只生成了軟件的基本路徑集,并沒有生成軟件的完整路徑。文獻[8]提出了一種基于狀態圖自動生成軟件路徑的方法,并實現了對路徑的優化,但該方法未對程序中循環結構的出

    信陽農林學院學報 2021年2期2021-07-07

  • 抵御控制流分析的Python 程序混淆算法
    00)0 引言控制流分析是一種特殊的分析技術,通常用于對程序的控制流結構進行靜態結構分析。隨著軟件功能的增加,算法結構也變得越來越復雜,程序員們開始在程序語言中使用越來越多的分支語句[1]。為了能夠提高程序執行的效率,通過控制流分析將這些程序編譯為相對較為簡單的語言,以便程序員們能夠更好地利用和處理這些程序語言。但是這種能夠將所有程序語言變得簡單易懂的分析方法使得軟件失去了程序語言對自身算法結構的保護能力,很多黑客利用控制流分析能夠輕易地對軟件程序的安全構

    數字技術與應用 2021年5期2021-06-29

  • 基于動態分析的控制流劫持攻擊檢測
    式多種多樣,而控制流劫持攻擊是最常見的一種. 控制流劫持攻擊允許攻擊者破壞程序的控制數據,通常將執行流重定向到攻擊者自己的注入代碼. 通過執行惡意代碼能夠完全控制程序和系統,造成極大的危害. 目前的操作系統中部署了地址空間布局隨機化(Address Space Layout Randomization,ASLR)、數據執行保護(Data Execution Protection,DEP)、結構化異常處理安全校驗(Safe Structured Except

    四川大學學報(自然科學版) 2021年3期2021-06-03

  • 面向進程控制流劫持攻擊的擬態防御方法
    )1 引言進程控制流劫持是一種常見的攻擊手段,其通常利用緩沖區溢出[1]等二進制漏洞篡改進程的控制流,從而進行程序正常功能之外的惡意操作[2]。控制流劫持攻擊的危害非常大,控制流劫持的目的往往是獲取目標機器的控制權,然后提取系統特權對目標機器實現全面控制。根據 CWE Top25[3]的排名,內存緩沖區溢出仍然是最危險的軟件錯誤。控制流劫持攻擊可以分為代碼注入和代碼重用兩大類[2]。代碼注入類攻擊利用程序本身的輸入功能向進程的虛擬地址空間注入惡意代碼,然后

    通信學報 2021年1期2021-02-28

  • 基于控制流的軟件樹生成及其應用
    ,研究采用基于控制流分析結果的軟件故障樹自動化分析技術,實現SFTA基于客觀分析結果(控制流分析結果),并可達到分析過程短周期及計算機自動化的目的。1 軟件故障樹分析的基本理論故障樹分析(FTA)是產品(系統)可靠性和安全性分析的工具之一,用來尋找導致不希望的系統故障或災難性危險事件(頂事件)發生的所在原因和原因組合,在具有基礎數據時求出頂事件發生的概率及其他定量指標。FTA也是分析已經發生的事故的一種基本方法,在裝備研發、維護等領域有廣泛的應用。故障樹分

    微型電腦應用 2021年1期2021-01-28

  • 基于程序雙維度特征的惡意程序相似性分析
    塊序列構造軟件控制流圖,從軟件代碼語義特征和結構特征兩個維度對軟件進行相似性分析。動態提取軟件特征能夠有效避免加殼、混淆等軟件變形技術的影響,提取匯編層面的信息使檢測不受軟件開發語言的限制,從兩個維度進行檢測,既考慮到軟件的語義特征又考慮到軟件的結構特征,能夠對軟件進行較為全面的分析。1 相關工作隨著軟件技術的發展,軟件復用技術給軟件開發帶來極大便利,同時也帶來了盜版軟件泛濫,惡意軟件開發門檻降低,惡意軟件泛濫的問題。最初,軟件相似性或同源性的檢測分析技術

    計算機工程與應用 2021年1期2021-01-11

  • 工控系統中PLC安全漏洞及控制流完整性研究
    安全漏洞和利用控制流完整性對PLC進行保護的研究具有重要意義。1 PLC存在的安全漏洞根據PLC設備的特點以及程序的執行流程和控制邏輯,PLC存在的安全漏洞被分為3種類型:固件修改漏洞、配置操作漏洞和控制流劫持漏洞[1]。1.1 PLC的固件修改漏洞PLC擁有以太網模塊,且制造商也提供了升級或替換以太網卡的服務,但在大多數情況下,固件上傳到現場設備的以太網卡時沒有有效的安全保護機制,攻擊者利用PLC的以太網模塊上載惡意固件,實現對PLC的攻擊[2]。PLC

    電子科技 2021年2期2021-01-08

  • 基于返回地址簽名的控制流攻擊檢測方法
    擊通道。近年來控制流攻擊事件不斷發生,如 2017 年 5 月,WannaCry 勒索病毒利用 TCP445端口漏洞將系統控制流篡改到惡意代碼處,進而實施了控制流攻擊,造成至少150 個國家和地區受到攻擊,嚴重影響金融、能源、醫療等行業的正常運行。相比于木馬攻擊、旁道攻擊、反向工程等硬件載體攻擊,控制流攻擊具有有效性高、可行性強以及與其他攻擊模式兼容等特性,因此防御控制流攻擊,保障嵌入式系統的安全性已經成為當前各領域的迫切需求。由于控制流攻擊的危害性巨大,

    華東理工大學學報(自然科學版) 2020年6期2020-12-23

  • 抵御控制流分析的程序混淆算法
    點,因此程序的控制流是可歸約的,可以通過控制流分析將程序反編譯成高級語言。近年來,程序控制流分析成為軟件分析的研究熱點,許多學者提出了基于符號執行、程序切片和形式化推理等的程序控制流分析技術[2],大大提升了程序控制流的完整性和準確性。利用控制流分析技術可以有效地分析程序結構和行為,給程序安全帶來巨大的威脅。為保護程序,許多學者和研究機構對此進行了大量研究,提出了控制流完整性防護[3]、控制流異常檢測[4]和控制流混淆等各種程序安全保護方法[5]。其中,控

    計算機工程與設計 2020年11期2020-11-17

  • 基于控制流的軟件設計與實現一致性分析方法
    息,比如代碼的控制流和數據流[12]971。本文采用基于語義的表征方式,語義信息為代碼的控制流,基于代碼控制流獲取函數特征。函數特征分為外部特征和內部特征。外部特征為函數間調用關系,內部特征為函數控制流信息,包括基本塊序列和控制流圖。函數間調用關系反映了系統的結構[13],每個函數內部的控制流信息反映了函數的內部結構,因此選其作為函數特征并建立特征模型。函數特征提取具體過程如下:2.1 中間表示的生成偽代碼和源代碼中的控制結構會造成控制流的改變,難以直接從

    計算機應用 2020年10期2020-10-18

  • 基于XOR 門加密的抗控制流攻擊方法*
    用軟件漏洞實施控制流攻擊進而對整個系統進行控制. 控制流攻擊是指利用程序漏洞, 通過篡改程序控制流的存儲地址或控制流數據等方式, 將程序導向并執行預先設定的惡意代碼, 達到破壞系統或盜取關鍵信息的目的. 根據惡意代碼注入與否, 控制流攻擊可分為代碼注入攻擊和代碼復用攻擊. 代碼注入攻擊指攻擊者利用軟件的某些漏洞將惡意代碼注入到應用程序. 堆棧溢出攻擊是代碼注入攻擊的一種典型方式, 堆棧中寫入的數據量超過堆棧本身的容量, 溢出的數據可以覆蓋合法的數據, 但由

    密碼學報 2020年4期2020-09-12

  • 一種檢測控制流錯誤的多層分段標簽方法
    于解決軟錯誤中控制流錯誤的檢測問題。程序控制流錯誤是軟錯誤的一大類型,根據Zhu等人[3]和Ohlsson等人[4]的實驗結果可知,在程序發生的軟錯誤中,有33%~77%的可能性造成程序的控制流錯誤。當高能粒子在與程序調用地址相關的位置引發故障時,就有可能造成控制流錯誤[5]。對于任何計算機程序,只要給程序輸入,其內部執行指令的順序就是固定的,但是控制流錯誤會改變這種順序,從而影響程序的正確執行[6]。目前檢測控制流錯誤的軟件技術通常是維護并更新一個全局的

    計算機與現代化 2020年8期2020-08-17

  • ASLR機制脆弱性自動分析方法*
    ,通過劫持程序控制流,跳轉至指定內存地址,實現任意代碼執行,需要在觸發程序控制流劫持狀態的同時,注入目標內存地址。地址隨機化(Address Space Layout Randomization, ASLR)機制對加載于程序內存空間中的各模塊進行隨機化布局,導致攻擊者無法準確定位目標代碼的內存地址,從而阻止控制流劫持攻擊[2-3]。但是,ASLR依然存在不少局限性[4-5]。受地址隨機化的影響,內存中各模塊的加載地址隨機分布,但各模塊的內部結構依然相對固定

    國防科技大學學報 2020年2期2020-05-06

  • 基于分段擬合的致密氣藏遞減分析方法
    :氣井處于邊界控制流階段。尤其是致密氣藏的氣井,有很長時間的不穩定流階段,若對該階段的生產數據應用Arps 遞減曲線進行產量預測與指標評價,會存在較大誤差。文獻[4-6]提出:對于致密氣藏有限邊界壓裂氣井,隨著流動階段的變化,遞減指數呈現“急速上升、持續下降、趨于穩定”的變化趨勢。達到邊界控制流以后,遞減指數趨于穩定,產量變化規律也趨于穩定。根據前人的研究成果及Arps 遞減曲線的適用條件,針對蘇里格致密氣藏壓裂氣井生產實際,提出其產量遞減分析的關鍵—分段

    石油化工應用 2020年3期2020-04-11

  • 分布式SDN控制平面下可靠的控制流傳輸路徑選擇
    器與交換機間的控制流傳輸路徑選擇.現有研究通常默認交換機到控制器的最短路徑作為控制流的傳輸路徑,而忽略傳輸路徑的可靠性對SDN性能的影響[5].特別是在In-Band控制平面下,控制流傳輸路徑的可靠性非常重要,網絡故障將導致大量交換機的控制流無法被正常轉發,進而影響SDN網絡正常運行.現有的控制流路徑研究主要分為兩類: 一是基于交換機本地的切換機制,二是在基于全局拓撲的控制流路徑選擇.第一類研究專注于在單個SDN交換機上實現各類機制來選擇控制流路徑,這類機

    福州大學學報(自然科學版) 2020年2期2020-04-07

  • 基于控制流的盒圖動態建模與測試
    ,研究工作流中控制流的可視化建模與實現;通過分析盒圖和控制流的轉換關系,將靜態的盒圖無縫地轉換成可視化的動態控制流模型,完成從盒圖靜態過程描述到控制流的可視化動態建模、實現、測試和驗證;實現快速構建復雜業務流程的可視化分析模型并提前驗證,解決了復雜業務過程模型在編碼之前的邏輯驗證,在實際的建模中,邏輯關系清晰,便于驗證。關鍵詞:工作流;盒圖;控制流;動態建模與測試中圖分類號:TP311.51 ? ? 文獻標識碼:AAbstract: This paper

    軟件工程 2020年12期2020-01-07

  • 進程控制流劫持攻擊與防御技術綜述
    偉光,孫蒙進程控制流劫持攻擊與防御技術綜述王豐峰,張濤,徐偉光,孫蒙(陸軍工程大學,江蘇 南京 210001)控制流劫持攻擊是一種常見的針對計算機軟件的攻擊,給計算機軟件安全帶來了巨大的危害,是信息安全領域的研究熱點。首先,從攻擊代碼的來源角度出發,闡述了進程控制流劫持攻擊的相關研究;其次,根據控制流劫持攻擊技術的發展現狀,基于不同防御思想介紹了近年來國內外的相關防御技術;最后對控制流劫持攻防技術發展趨勢進行總結和展望。軟件安全;控制流劫持攻擊;控制流完整

    網絡與信息安全學報 2019年6期2019-12-13

  • 面向動態加載的Android惡意行為動靜態檢測方法
    術,提取程序的控制流圖,通過分析動態加載點的位置進行路徑制導的動態執行,以獲得動態加載的APK。然后,再針對其進行靜態分析獲得控制流圖[6],通過對宿主App和被加載APK的控制流組合,得到整個系統的完整控制流圖。針對該控制流圖進行遍歷和惡意行為模式的匹配,就可以完成對完整App的檢測。本文基于所提出的惡意代碼檢測方法,開發了相應的原型工具、構造了實例,并且進行了實例研究。1 相關工作及背景現有的惡意代碼檢測技術主要分為靜態分析和動態分析。靜態分析是在獲取

    計算機應用與軟件 2019年12期2019-12-12

  • 一種基于數據流/控制流+知識條目的回歸影響域分析方案
    是基于數據流/控制流的研究.董燕等[6]從控制結構算法更動、邏輯更動、參數更動等方面對基于代碼更動的影響域分析方法進行了研究,提出了各類更動的分析方法和原則,并將其應用于航天嵌入式軟件,取得了良好的效果;楊貞祥、王德敏等[7,8]對基于控制流和數據流的更動影響域分析方法進行了研究,闡述了分析原理,提出了分析操作步驟;楊波等[9]針對基于變量自身變化和變量間依賴關系的變量行為模型開展了研究,提出了一種基于變量影響分析和數據變異的回歸測試用例方法;侯成杰[10

    測試技術學報 2019年5期2019-10-18

  • 面向C程序的環形復雜度自動化計算方法
    度量法根據程序控制流的復雜程度定量度量程序復雜程度,這樣度量出的結果稱為程序的環形復雜度。在軟件測試中,環形復雜度用于衡量一個模塊判定結構的復雜程度,數量上表現為獨立路徑條數,即合理的預防錯誤所需測試的最少路徑條數,這是為確保所有語句至少執行一次而必須進行測試的數量的上界,也可以理解為覆蓋所有的可能情況最少使用的測試用例數[2-4]。在通常情況下,程序環形復雜度值越大,說明程序判斷邏輯越復雜,越容易出錯,且軟件難以測試與維護。大量研究和經驗表明,環形復雜度

    計算機工程 2018年12期2019-01-02

  • 基于Petri網數據流約束下的業務流程變化域分析
    廓;依賴關系;控制流;數據流[中圖分類號]TP319.1 [文獻標志碼]A文章編號:1003-6180(2018)02-0015-06Abstract:Based on the behavioral profile theory of Petri nets, the control dependences and data dependences of the models are found and analyzed by studying the be

    牡丹江師范學院學報(自然科學版) 2018年2期2018-09-10

  • 一種基于本地代碼特征的Android惡意代碼檢測方法
    提取匯編代碼的控制流圖集合,將其與已知惡意應用的控制流圖集合進行相似性比較,得出它們的相似度.如果相似度大于某個閾值,則可以確定待檢測的Android應用包含了惡意代碼.由于提取了SO文件中包含的代碼的特征,該方法的代碼覆蓋率比傳統的靜態檢測方法高.2 方法描述本文提出一種基于本地代碼特征的Android惡意代碼檢測方法,該方法通過提取Android應用的本地代碼的控制流圖特征來檢測和分析惡意代碼,流程如圖1所示:圖1 檢測方法的流程2.1 ART虛擬機A

    信息安全研究 2018年6期2018-06-15

  • Java自動化基本路徑測試技術研究
    現有方法主要以控制流圖為輸入來生成基本路徑集合[6-8],減少了人工分析得到基本路徑集合的工作量。為了減少由代碼生成控制流圖以及執行路徑與基本路徑集合比對的工作量,本文提出了針對Java源碼的路徑測試自動化方法,首先通過對Java代碼的分析構建控制流圖和實現程序插樁,保持控制流圖和代碼插樁中節點的一致性,然后通過控制流圖生成基本路徑集合,最后執行插樁后被測程序判斷測試數據對基本路徑集合的覆蓋程度。1 控制流圖定義與構造基本路徑集通過分析被測程序的控制流圖來

    計算機測量與控制 2018年4期2018-04-25

  • 一種基于控制流圖特征的Linux平臺惡意代碼檢測方法
    了一種基于軟件控制流圖特征的惡意代碼檢測方法。通過對軟件進行靜態分析得到匯編代碼,進而分析匯編代碼構建控制流圖。提取控制流圖的屬性作為特征向量,將這些特征向量送入機器學習算法進行訓練,得出分類器,使用分類器來檢測惡意軟件。1 相關定義基本塊:一段有序指令序列,從第一條指令順序執行到序列的最后一條指令。除了最后一條指令外,序列中的其他指令不會是分支或者跳轉指令[6]。控制流圖:定義V={VI,V2,...,Vn}為代表基本塊的頂點集,E={brijl bri

    現代計算機 2018年8期2018-04-24

  • 基于表驅動的純軟件簽名錯誤檢測算法
    過純軟件簽名的控制流檢測(CFDSS)[4-5]、通過斷言的控制流檢測(ACFC)[6]、運用斷言的增強型控制流檢測(ECCA)[7]、通過冗余指令[8]的錯誤檢測(EDDI)[9-11]等在內的純軟件處理方法,比上述這2種概念運用得更加廣泛,因為這些純軟件檢錯方式不要求特定的硬件設備提供支持。ACFC在執行過程中賦予每一個基本塊一個奇偶校驗位,可檢測出奇偶性錯誤;EDDI采用復制指令,并通過插入合適的檢測指令進行驗證,但這種方法易導致代碼容量增加近100

    計算機工程 2018年4期2018-04-19

  • PLC程序控制流分析方法
    7)PLC程序控制流分析方法張 曄*,陸余良(合肥電子工程學院 ,合肥 230037)可編程邏輯控制器(PLC)是工業控制系統的重要組成部分,控制著各類物理設備及工藝流程。無論是攻擊者的惡意篡改還是內部人員的編程錯誤所造成的PLC控制程序錯誤都將嚴重威脅設備及人身安全。為解決該問題,提出了針對PLC程序的控制流分析方法。首先,利用flex和bison分析了源代碼的詞法及語法結構;其次,通過分析抽象語法樹(AST)生成并優化了不含指令副作用的中間表示;最后,

    計算機應用 2017年12期2018-01-08

  • 基于狀態轉換的PLC程序模型構建方法
    的文法結構進行控制流分析生成控制流圖;然后,通過數據流分析得到程序依賴圖;最后,根據程序依賴圖生成NuSMV的輸入模型。實驗結果表明,所提方法實現了ST程序到NuSMV輸入模型的自動化構建,并且構建的NuSMV輸入模型既保留了ST程序的原有特性又符合NuSMV模型檢測工具輸入的規范,與傳統手工模型構建方法相比,提高了模型生成的效率和準確率。工業控制系統安全;模型檢測;NuSMV;程序分析;模型構建0 引言工控安全事關經濟發展、社會穩定和國家安全。近年來,隨

    計算機應用 2017年12期2018-01-08

  • 基于影響域分析的軟件回歸測試設計
    分析,并對基于控制流和數據流的影響域分析、影響域重定位、基于影響域的回歸測試設計進行了詳細論述,希望由此能夠為相關業內人士帶來一定啟發。影響域;回歸測試;數據流;控制流1 軟件回歸測試分析1.1 回歸測試的關鍵點作為軟件工程的重要組成,軟件測試屬于保證軟件質量的重要手段,本文研究的回歸測試便是軟件測試的重要組成,其與首輪測試均在軟件工程中占據著較為重要的地位。首輪測試主要采用追蹤法保證測試需求覆蓋率,回歸測試則將開展的重點放在了更改內容的確認與影響方面,而

    電子測試 2017年22期2018-01-03

  • 基于符號執行的Android原生代碼控制流圖提取方法
    oid原生代碼控制流圖提取方法顏慧穎,周振吉,吳禮發,洪征,孫賀(解放軍理工大學指揮信息系統學院,江蘇南京 210000)提出了一種基于符號執行的控制流圖提取方法,該方法為原生庫中的函數提供了符號執行環境,對JNI函數調用進行模擬,用約束求解器對符號進行求解。實現了控制流圖提取原型系統CFGNative。實驗結果表明,CFGNative可準確識別樣例中所有的JNI函數調用和原生方法,并能夠在可接受的時間內達到較高的代碼覆蓋率。控制流圖;Android應用軟

    網絡與信息安全學報 2017年7期2017-07-31

  • 基于UML活動圖的場景法測試用例生成策略的研究
    本路徑覆蓋法;控制流圖;獨立路徑1 引言UML是一種可視化的建模語言,它通過圖形表示法從多個側面對系統的分析、設計、實現、測試等進行刻畫.研究表明,采用有效的形式化方法來描述問題域,并選擇適當的測試策略,是設計和生成完備的測試用例集合的關鍵環節[1].活動圖是UML中的一種行為圖,它描述系統為完成某項功能而執行的操作序列,其實質就是流程圖,可用于描述程序流程和工作流程.所以活動圖是軟件系統測試,尤其是業務流程測試的重要手段.場景測試法是通過構建各種測試場景

    赤峰學院學報·自然科學版 2017年10期2017-06-01

  • 一種JAVA控制流混淆方案
    )一種JAVA控制流混淆方案葛 華a, 余沛釗a, 夏夢森b(武漢理工大學 a.信息工程學院; b.計算機科學與技術學院, 武漢 430072)在逆向分析的領域里,JAVA軟件最需要保護的地方毫無疑問是整個軟件的結構。本文在總結代碼混淆領域中的一些混淆策略后,提出一個基于結構代碼塊的控制流混淆方案。該方案不是以基本代碼塊為基礎來提出具體的混淆策略,而是從軟件結構角度上,只對那些復雜的結構塊進行混淆處理。該方案首先插入含有垃圾代碼塊的分支路徑,然后以結構代碼

    湖北第二師范學院學報 2017年2期2017-05-15

  • 控制流完整性的發展歷程
    成崗 李建軍?控制流完整性的發展歷程文/武成崗李建軍武成崗中國科學院計算技術研究所正高級工程師、博士生導師,主要研究領域為動態編譯、軟件安全、程序分析等。李建軍中國科學院計算技術研究所副研究員,主要研究領域為動態程序分析、軟件安全保障等。控制流劫持是一種危害性極大的攻擊方式,攻擊者能夠通過它來獲取目標機器的控制權,甚至進行提權操作,對目標機器進行全面控制。當攻擊者掌握了被攻擊程序的內存錯誤漏洞后,一般會考慮發起控制流劫持攻擊。早期的攻擊通常采用代碼注入的方

    中國教育網絡 2016年4期2016-06-06

  • 面向動態生成代碼的攻防技術綜述
    的安全問題,為控制流劫持攻擊和相應的防御提供了新機會,受到越來越多的關注。針對動態生成代碼在數據區且可被執行和直接依賴輸入的特性,本文從代碼注入攻擊和代碼重用攻擊兩個角度總結分析了控制流劫持攻擊新技術,并從強制性防御和閃避防御(Moving target defense)兩個角度對相關的主要防御新方法進行了闡述。同時提出動態代碼生成系統安全性的衡量模型,對代表性防御技術進行對比分析和評估,并探討了面向動態生成代碼攻防技術的發展趨勢和下一步的研究方向。軟件安

    信息安全學報 2016年4期2016-03-01

  • 二進制代碼塊: 面向二進制程序的細粒度控制流完整性校驗方法
    制程序的細粒度控制流完整性校驗方法王明華1,2, 尹 恒2, Abhishek Vasisht Bhaskar2, 蘇璞睿3,4, 馮登國41百度X-Lab2雪城大學3中國科學院軟件研究所計算機科學國家重點實驗室4中國科學院軟件研究所可信計算與信息保障實驗室控制流完整性(CFI)是一種在程序中通過保護間接轉移有效減少代碼注入和代碼重用攻擊等威脅的技術。由于二進制程序缺少源代碼級別的語義, CFI策略的設定需要很謹慎?,F有的面向二進制的 CFI解決方案, 如

    信息安全學報 2016年2期2016-02-20

  • 分存技術在代碼混淆中的研究
    度。其中,代碼控制流混淆是當前代碼混淆技術中的研究熱點。目前,存在著許多種代碼控制流混淆變換[3-4],但都由于變換形式過于單一,很容易被逆向工程所過濾。針對這種情況,文獻[5]提出不透明謂詞變換和降級高級控制結構變換,加大了反編譯及逆向工程的難度;文獻 [6]提出插入垃圾代碼的改進的控制變換,增加了防止破解者靜態分析的能力;文獻 [7]提出混沌不透明謂詞變換,盡可能地防止破解者對代碼進行靜態攻擊。但是這些變換最終無法確定代碼的混淆強度是否足夠抵抗攻擊,并

    計算機工程與設計 2015年1期2015-12-20

  • 利用智能控制流方法的嵌入式軟件故障檢測*
    00)利用智能控制流方法的嵌入式軟件故障檢測*周改云1,張國平1,呂瓊帥1,黎遠松2(1.平頂山學院 軟件學院,河南 平頂山 467000;2.四川理工學院 計算機學院,四川 自貢 643000)針對現有的嵌入式軟件故障檢測方法性能低、開銷大的缺點,提出一種智能選擇檢測點的控制流方法,其創新之處主要為:使用變量的頻率和基本塊的執行頻率用作選擇重要變量和基本塊的兩個參數。檢測的基本流程是首先過濾器還原標準C語句為偽代碼語句,然后掃描儀獲取偽代碼,并發送它到解

    電子技術應用 2015年10期2015-12-16

  • 采用控制流監控的Cisco IOS指針攻擊檢測方法
    鄭州)?采用控制流監控的Cisco IOS指針攻擊檢測方法劉勝利,鄒睿,彭飛,武東英,肖達(中國人民解放軍信息工程大學數學工程與先進計算國家重點實驗室, 450000, 鄭州)針對當前Cisco IOS(internetwork operating system)漏洞攻擊檢測方法檢測效率低的問題,提出了一種采用控制流監控來判定Cisco IOS指針攻擊的方法。該方法通過靜態分析和動態跟蹤相結合的方式對Cisco IOS中不同類別的控制流分別構造合法轉移地

    西安交通大學學報 2015年12期2015-03-07

  • ARM架構中控制流完整性驗證技術研究
    )ARM架構中控制流完整性驗證技術研究葉雁秋,王震宇,趙利軍(解放軍信息工程大學,鄭州450001)通用平臺目標二進制代碼運行時控制流的提取主要依賴于處理器硬件特性,或其動態二進制插樁工具,該平臺的控制流完整性驗證方法無法直接移植到進階精簡指令集機器(ARM)架構中。為此,基于控制流完整性驗證技術,設計一種用于ARM架構,利用緩沖溢出漏洞檢測控制流劫持攻擊的方法。該方法在程序加載時、執行前動態構建合法跳轉地址白名單,在目標二進制代碼動態執行過程中完成控制流

    計算機工程 2015年3期2015-02-20

  • 渦流閥調節特性冷流實驗研究*
    實驗。通過改變控制流的路數、控制流的壓強研究渦流閥的性能影響。實驗系統主要由主流模擬氣源、控制流模擬氣源、渦流閥實驗器、時序控制器、數據采集器及閥門管路等組成。主流模擬氣源和控制流模擬氣源采用壓縮氮氣源,主要由氣瓶、匯流排、減壓器等組成;渦流閥實驗器(見圖2)采用固定幾何結構,4個控制流接口,根據實驗工況進行控制流接口數量的使用;時序控制器主要實現系統中的開關閥門的打開、關閉時刻的控制;數據采集器主要進行實驗中主流模擬氣源、控制流模擬氣源和渦流室的壓強信號

    彈箭與制導學報 2014年6期2014-12-10

  • 基于動態數據流分析的虛擬機保護破解技術
    跡,還原程序的控制流圖,根據軌跡信息對數據生成過程進行分層次、分階段還原,并由分析人員結合控制流圖和數據生成過程進行算法重構。實驗結果證明,該方法能夠正確還原程序的控制流和數據生成過程,輔助分析人員完成被保護算法的重構。數據流分析;虛擬機保護;控制流還原;算法還原1 概述軟件核心算法的逆向分析在網絡協議逆向、惡意代碼機理分析、協議特征提取等安全應用中發揮著重要的作用。目前惡意軟件廣泛采用虛擬機保護等抗分析技術對核心算法進行保護,使得已有的逆向分析方法面臨新

    計算機工程 2014年9期2014-06-06

  • 白盒測試之基本路徑測試技術探析
    徑測試是在程序控制流圖的基礎上,通過分析控制構造的環路復雜性,導出基本可執行路徑集合,然后據此設計測試用例[4,5]。設計出的測試用例要保證在測試中程序的每一條可執行語句至少執行一次。1.4 程序控制流圖在進行軟件(程序)測試的設計時,對程序的流程圖進行簡化,圖1中每個處理都退化成一個結點,流線變成連接不同結點的有向弧,簡化之后所得的圖形稱為程序控制流圖,即控制流圖是退化的程序流程圖[5]。控制流圖將程序流程圖中結構化構件改用一般有向圖的形式表示。在軟件(

    重慶工商大學學報(自然科學版) 2014年1期2014-05-25

  • BPM軟件建模能力的評估
    套標準。本文從控制流的視角出發對比了國內具有代表性的一款BPM軟件與一個自由軟件,從對比中可以看出國內BPM軟件的一些優勢以及劣勢。為后續國內BPM軟件的發展開拓了空間,也為國內企業級應用廠商選擇BPM軟件提供一些選擇依據。1.BPM軟件控制流評估體系的建立BPM軟件從應用初期憑借其可視化的特性降低了使得開發變得簡便,降低了開發的門檻,同時其所見及所得的特性縮短了業務人員和開發人員的距離,因此BPM軟件一直被推崇。近幾年BPM軟件發展迅猛,各種軟件如雨后春

    電子世界 2014年7期2014-03-15

  • 基于異常控制流識別的漏洞利用攻擊檢測方法
    方法,通過劫持控制流實施利用攻擊。為了應對這些新安全環境下的利用攻擊,安全人員需要及時地發現攻擊威脅,以便快速做出響應,避免造成損失。近年來,學術界提出了控制流完整性檢測、污點分析等分析方法,來對程序執行過程中的異常控制流進行檢測,取得了一定的效果。控制流完整性檢測方法[2],通過在CFG圖中構造控制流轉移的合法目標地址集合,在控制流轉移發生時,校驗目標地址是否在合法的集合內,并以此作為攻擊檢測的依據。此種方法依賴CFG,無法解決動態生成代碼相關的惡意控制

    通信學報 2014年9期2014-01-01

  • 過程模型中控制流反模式的定義和檢測方法
    程模型反模式以控制流反模式(控制結構方面的反模式)最為常見[2]。文獻[3]對過程模型進行化簡并根據化簡結果判斷過程模型中是否存在死鎖或乏同步,但該方法無法定位反模式。文獻[4]使用編譯技術中的控制流塊分析技術[5]分析過程模型并利用啟發式方法檢測并定位控制流反模式,但該方法只支持一些既定的控制流反模式,擴展性不足。文獻[6]利用 BPMN-Q[7]定義并查詢BPMN模型中的常見控制流反模式,該方法允許用戶自定義反模式,但它的效率較低,而且不支持BPMN以

    中國石油大學學報(自然科學版) 2013年3期2013-04-27

  • 基于控制流切片的代碼安全缺陷檢測方法
    測,該方法通過控制流圖實現屬性狀態條件的合并,判斷不可達性,降低誤報率[1]。近年來模型驗證也成為代碼診斷領域研究的熱點,卞磊,劉超等人使用有窮狀態機模型對過程內變量數據流異常進行檢測,根據數據項的狀態遷移判斷過程內的數據流是否異常[5]。周寬久等人提出了一種基于XML中間模型的代碼安全規范檢測方法,使用GJB安全子集對代碼安全進行分析[6]。陳忠湘,詹瑾瑜等人提出一種帶控制流的函數分析模型,對函數間調用次序以及邏輯設計復雜度都有描述,輔助程序設計人員進行

    計算機工程與設計 2012年6期2012-05-04

  • 基于結構語義樹的高級控制結構恢復技術
    的概念,在進行控制流圖結構化之后,構建結構語義樹,從而得到高級控制結構的嵌套關系信息。最后通過前序遍歷結構語義樹,則可恢復過程的高級控制結構。準確恢復過程的高級控制結構對提高反編譯結果的正確性,代碼語義與功能的等價性等方面具有重要意義。1 預備知識定義1 基本塊[14-15]b=[i1,…,in-1,in],n≥1是一個滿足下列條件的指令序列:[i1,…,in-1]∈NTIin∈NTI或[i1,…,in-1,in]∈NTIin+1是另一個基本塊的第一條指令

    計算機工程與設計 2011年9期2011-07-25

  • C++反編譯中控制流圖優化方法研究
    執行模塊;4)控制流分析,對流程進行分析,為生成高級語言控制流做準備;5)類型分析,識別數據的類型。最終生成可理解的高級語言代碼。其中步驟1),2)都有不少論文介紹這方面工作。其中,文獻[5]介紹了靜態反匯編的兩種方法。文獻[6]介紹了C++庫函數的識別方法。而且現在也出現了成熟的反匯編分析工具,如IDA。控制流分塊與控制流分析是反編譯器中間的部分,為輸出的高級語言代碼生成提供依據[7],直接影響到生成高級代碼的正確性。文中首先介紹了現有的控制流分塊方法以

    電子設計工程 2011年21期2011-06-05

  • 改進的CFCSS控制流檢測算法
    據流、指令流及控制流錯誤,但幾率最大、危害最大的是改變指令序列執行順序的控制流錯誤[6].文中首先分析總結了控制流檢測算法的原理,其次,分析CFCSS算法原理[7-8],并簡述其中存在的檢測混淆和檢測出錯現象的原因;最后,根據CFCSS算法中存在的問題,修改了基礎基本塊的選擇方法和多調整簽名值賦值語句的插入位置,提出了改進的ICFCSS算法(improved CFCSS).1 控制流圖與基本塊為了方便描述控制流檢測算法,在此引入幾個定義.定義1 控制流圖(

    哈爾濱工程大學學報 2011年6期2011-04-13

  • 一種改進的數據流分析方法
    分析數據流方程控制流語句塊中圖分類號:TP6文獻標識碼:A文章編號:1671-7597(2009)0710059-02一、引言基于源代碼靜態分析的數據流分析[1][2]作為程序分析的一種重要技術,能夠從程序代碼中收集程序的語義信息,它不必實際運行程序就能夠獲取程序運行時的信息,更易于人們理解和分析程序,因此被廣泛用于解決編譯優化、程序驗證、調試、測試和并行編程環境等中的問題。數據流分析獲取信息的方法有兩種,對于結構化的程序可采用語法制導的求解方法,對于任意

    新媒體研究 2009年13期2009-10-26

91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合