[發明專利]代碼處理方法、污點分析方法和裝置在審
| 申請號: | 202110317801.0 | 申請日: | 2021-03-25 |
| 公開(公告)號: | CN112926058A | 公開(公告)日: | 2021-06-08 |
| 發明(設計)人: | 王明華;張煜龍 | 申請(專利權)人: | 支付寶(杭州)信息技術有限公司 |
| 主分類號: | G06F21/57 | 分類號: | G06F21/57 |
| 代理公司: | 濟南信達專利事務所有限公司 37100 | 代理人: | 李世喆 |
| 地址: | 310000 浙江省杭州市*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 代碼 處理 方法 污點 分析 裝置 | ||
1.代碼處理方法,包括:
判斷當前加載的程序代碼是否屬于動態代碼;該動態代碼為在程序運行時從該程序對應的程序代碼文件的外部加載到該程序中的代碼;
如果是,識別所述動態代碼中的污點源;
將所述動態代碼中與所述污點源關聯的變量的污點狀態設置為污點;
將所述動態代碼中與所述污點源未關聯的變量的污點狀態設置為非污點;
針對所述動態代碼中的每一條語句,為該語句插入污點狀態計算語句,得到代碼重寫后的動態代碼;其中,所述污點狀態計算語句用于根據該語句中引用的各變量的污點狀態,計算該語句的污點狀態。
2.根據權利要求1所述的方法,其中,
當一條語句中包括一個變量時,該語句的污點狀態為該變量的污點狀態;
當一條語句中包括至少兩個變量時,該語句的污點狀態為該語句最終計算出的變量的污點狀態。
3.根據權利要求1所述的方法,進一步包括:
獲取所述程序包括的靜態代碼;該靜態代碼為所述程序對應的程序代碼文件內部包括的代碼;
識別所述靜態代碼中的污點源;
將所述靜態代碼中與該污點源關聯的變量的污點狀態設置為污點;
將所述靜態代碼中與該污點源未關聯的變量的污點狀態設置為非污點;
針對靜態代碼中的各語句,分別根據該語句中引用的各變量的污點狀態,判斷各語句的污點狀態是否為污點,為污點狀態為污點的靜態代碼中的各語句插入污點狀態計算語句,得到代碼重寫后的靜態代碼。
4.根據權利要求3所述的方法,在所述為污點狀態為污點的靜態代碼中的各語句插入污點狀態計算語句之前,進一步包括:
生成污點使用鏈;
將污點源作為第一條語句加入該污點使用鏈;
依次判斷靜態代碼中的每一條語句的污點狀態,如果污點狀態為污點,則將該語句串聯在所述污點使用鏈中;
判斷污點使用鏈中的最后一條語句是否為敏感操作語句;
如果是,則繼續執行所述為污點狀態為污點的靜態代碼中的各語句插入污點狀態計算語句,且
所述為污點狀態為污點的靜態代碼中的各語句插入污點狀態計算語句,包括:在所述靜態代碼中,為污點使用鏈中包括的每一條語句分別插入污點狀態計算語句,得到代碼重寫后的靜態代碼。
5.根據權利要求3所述的方法,其中,在程序運行之前,執行所述獲取所述程序包括的靜態代碼直至所述得到代碼重寫后的靜態代碼的步驟。
6.根據權利要求3所述的方法,在針對靜態代碼中的各語句,為污點狀態為污點的靜態代碼中的各語句插入污點狀態計算語句之后,進一步包括:為包括該靜態代碼的程序代碼文件設置處理標識;
所述判斷當前加載的程序代碼是否屬于動態代碼,包括:
判斷當前加載的程序代碼文件是否設置有處理標識,如果否,則確定當前加載的程序代碼文件中的程序代碼屬于動態代碼。
7.根據權利要求3所述的方法,
所述靜態代碼為bytecode;
或者,
所述靜態代碼為:根據bytecode轉換出的中間語言IR;則在所述為污點狀態為污點的靜態代碼中的各語句插入污點狀態計算語句之后,并在得到代碼重寫后的靜態代碼之前,進一步包括:將插入有污點狀態計算語句的靜態代碼由中間語言IR轉換為bytecode。
8.根據權利要求1至7中任一所述的方法,其中,所述根據該語句中引用的各變量的污點狀態,計算該語句的污點狀態包括:
如果該語句中引用的各變量中包括污點狀態為污點的變量,且該變量的引用方式為對該變量進行無害處理操作,則該語句的污點狀態為非污點;
如果該語句中引用的各變量中包括污點狀態為污點的變量,且該變量的引用方式為對該變量進行非無害處理操作,則該語句的污點狀態為污點;
如果該語句中引用的各變量中不包括污點狀態為污點的變量,則該語句的污點狀態為非污點。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于支付寶(杭州)信息技術有限公司,未經支付寶(杭州)信息技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110317801.0/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:欺詐識別的方法和裝置
- 下一篇:標識生成方法和裝置





