WO2017050148A1 - 一种数据分析方法和装置 - Google Patents
一种数据分析方法和装置 Download PDFInfo
- Publication number
- WO2017050148A1 WO2017050148A1 PCT/CN2016/098816 CN2016098816W WO2017050148A1 WO 2017050148 A1 WO2017050148 A1 WO 2017050148A1 CN 2016098816 W CN2016098816 W CN 2016098816W WO 2017050148 A1 WO2017050148 A1 WO 2017050148A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- analyzed
- task
- security
- statement
- ast
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Prevention of errors by analysis, debugging or testing of software
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
Definitions
- the present invention relates to the field of data processing, and in particular, to a data analysis method and apparatus.
- the developer can submit the R&D task to the system, and after the analysis of the task is qualified, the task can be launched on the system. After going online, the user of the system can find the task, and by performing the task, the corresponding function of the task can be realized.
- the analysis of the task is mainly to analyze whether the statement contained in the task has risks. It is judged by the analysis statement whether the task will lead to the leakage of sensitive information of the system and cause unsafe hidden danger to the system. At present, relying on professional analysts to analyze the sentences contained in the task. The accuracy of the analysis is directly related to the experience of the analyst in data analysis. The analysis results obtained by the experienced analysts are often not accurate enough, for example, the task will be safe. Analyze into high-risk tasks, or analyze tasks with security vulnerabilities as security tasks and go online on the system. The influence of human factors has led to fluctuations in the accuracy of current data analysis and reduced system security.
- the present invention provides a data analysis method and apparatus to enable automated comparison analysis of the objects to be analyzed, thereby eliminating the human influence in the conventional analysis mode.
- a data analysis method classifying a statement for analysis according to a combination relationship of sentences, and classifying a sensitive set and a security set, wherein the sensitive set includes a combination of sentences capable of causing leakage of sensitive data, wherein the security set includes security a combination of statements to establish a security analysis model based on the sensitive collection and the security collection, the method comprising:
- the security analysis condition is set according to the sensitive set and the security set;
- the method further includes:
- the acquiring the to-be-analyzed statement of the task to be analyzed includes:
- the establishing a security analysis model according to the sensitive set and the security set includes:
- the invoking the security analysis model performs security analysis on the related to-be-analyzed statement, including:
- the at least one AST to be analyzed is compared to the at least one sensitive AST and the safety AST in the safety analysis model.
- the security analysis condition includes a combination of one or more of the following:
- the sub-AST for the data production in the at least one AST to be analyzed is the same as in the at least one sensitive AST, and the sub-AST is different from the at least one security AST;
- At least one level of the AST corresponding to one of the application programming interface APIs in the related to-be-analyzed statement is the same as in the at least one sensitive AST;
- At least one level of the AST corresponding to the plurality of application programming interface APIs in the related to-be-analyzed statement is the same as in the at least one sensitive AST.
- the method further includes:
- the task to be analyzed that is determined to be a dangerous task is sent to the analysis terminal, and the analysis terminal performs a secondary security analysis on the task to be analyzed.
- a data analysis apparatus classifies a statement for analysis according to a combination relationship of sentences, and classifies a sensitive set and a security set, wherein the sensitive set includes a combination of sentences capable of causing leakage of sensitive data, wherein the security set includes security a combination of statements to establish a security analysis model based on the sensitive collection and the security collection, the apparatus comprising:
- a first acquiring unit configured to acquire a related to-be-analyzed statement of the task to be analyzed
- An analysis unit configured to invoke the security analysis model to perform security analysis on the related to-be-analyzed statement
- the trigger determination unit determines that the to-be-analyzed task is a dangerous task, and the security analysis condition is set according to the sensitive set and the security set;
- the determining unit is triggered to determine that the to-be-analyzed task is a security task.
- it also includes:
- a second acquiring unit configured to acquire a task identifier of the task to be analyzed before triggering the first acquiring unit
- a retrieving unit configured to retrieve, from the data saved by the database, the to-be-analyzed statement of the task to be analyzed according to the task identifier
- a querying unit configured to query, according to the task identifier, whether the task to be analyzed has a subtask, and the subtask is a task having a dependency relationship on the output data of the to-be-analyzed task;
- the retrieving unit is further configured to retrieve a statement of the subtask from a database saved by the database;
- the first acquiring unit is further configured to acquire the to-be-analyzed statement of the to-be-analyzed task, the statement of the sub-task, and the to-be-analyzed statement of the to-be-analyzed task obtained according to the dependency relationship, and the The combination of statements between statements of a subtask.
- the establishing a security analysis model according to the sensitive set and the security set includes:
- the analyzing unit is configured to: establish, according to the statement combination relationship in the related to-be-analyzed statement, the at least one AST to be analyzed by the related to-be-analyzed statement; and the at least one AST to be analyzed and the security analysis model
- the at least one sensitive AST and the safe AST are subjected to a comparative analysis.
- the security analysis condition includes a combination of one or more of the following:
- the sub-AST for the data production in the at least one AST to be analyzed is the same as in the at least one sensitive AST, and the sub-AST is different from the at least one security AST;
- At least one level of the AST corresponding to one of the application programming interface APIs in the related to-be-analyzed statement is the same as in the at least one sensitive AST;
- At least one level of the AST corresponding to the plurality of application programming interface APIs in the related to-be-analyzed statement is the same as in the at least one sensitive AST.
- it also includes:
- a sending unit configured to: if the analysis result is that the related to-be-analyzed statement meets a security analysis condition, send the to-be-analyzed task that is determined to be a dangerous task to an analysis terminal, where the analysis terminal performs the to-be-analyzed task Secondary safety analysis.
- the statements for analysis are first classified according to the combination relationship of the sentences, and the sensitive set and the security set are classified, and the sensitive set includes a combination of sentences capable of causing leakage of sensitive data, the security set.
- the security analysis model is established according to the sensitive set and the security set.
- the security analysis model may be invoked to perform security on the related to-be-analyzed statement.
- the analysis analyzes the combination of the sensitive statement combination and the security statement obtained in advance and the related statement of the task to be analyzed, and determines whether it is a security task or according to whether the security analysis condition set according to the sensitive set and the security set is satisfied. Whether it is a dangerous task, the automated analysis of the analysis task can be performed, thereby eliminating the human influence in the traditional analysis mode, providing stable analysis accuracy and increasing the security of the system.
- FIG. 1 is a flowchart of a method for analyzing a data according to an embodiment of the present invention
- FIG. 2 is a flowchart of a method for obtaining a related to-be-analyzed statement method according to an embodiment of the present invention
- FIG. 3 is a structural diagram of a device of a data analysis apparatus according to an embodiment of the present invention.
- the developer can submit the R&D task to the system, and after the analysis of the task is qualified, the task can be launched on the system.
- the analysis of the task is mainly to analyze whether the statement contained in the task has risk, and analyze the statement to determine whether the task will lead to leakage of sensitive information of the system, such as calling sensitive data, or generating sensitive data through calculation. If such an unsafe task is taken online by the system, it may cause the user to leak sensitive data of the system while performing the task, thereby causing an unsafe hidden danger to the system.
- relying on professional analysts to analyze the sentences contained in the task The accuracy of the analysis is directly related to the experience of the analyst in data analysis.
- an embodiment of the present invention provides a data analysis method and apparatus.
- a statement for analyzing is classified according to a combination relationship of sentences, and a sensitive set and a security set are classified, and the sensitive set includes sensitive data.
- the security analysis model pair may be invoked.
- composition and establishment of the security analysis model are first introduced.
- the security analysis model (English: Security Analysis Model) provided by the embodiment of the present invention is to classify the sentences used for analysis according to the combination relationship of the sentences, and classify the sensitive set and the security set, and the sensitive set includes A combination of statements of sensitive data leakage, the security collection includes a combination of security statements, and a security analysis model is established according to the sensitive collection and the security collection.
- the statement for analysis may be obtained for a specific application scenario, and the statement may be a computer statement, such as a structured query language (English: Structured Query Language, abbreviated: SQL) statement currently used in the system platform.
- SQL Structured Query Language
- the relational algebra theory can be used to analyze the combination relations in the statements used for analysis, etc., to determine the combination of statements that may have sensitive data leakage, and the combination of safe statements.
- the criteria for determining that a statement belongs to a sensitive collection or a security collection may be a security constraint principle.
- the security constraint principle may include prohibiting the acquisition of sensitive data from the system, such as prohibiting obtaining sensitive data from a database of the system platform.
- Sensitive data can be real information of the user, transaction data of the user, company data, and the like.
- the determined sensitive set may be specifically a Sensitive Indicator Set (English: Sensitive Indicator Set, abbreviation: SIS), which may include a calculation process triggered from the business system data warehouse table.
- the determined security set can be specifically a list of non-sensitive, practical business indicators (English: Non-sensitive Indicator Set, abbreviation: NIS).
- the sensitive set and the secure set can be part of the security analysis model.
- the sensitive set and the secure set may be established as an abstract syntax tree (abbreviation: AST).
- AST abstract syntax tree
- the establishing a security analysis model according to the sensitive set and the security set includes:
- the process of establishing an AST can be as a statement (such as a SQL statement) as an AST
- the intermediate node connects each intermediate node according to the combination relationship between the statements.
- FIG. 1 is a flowchart of a method for analyzing a data according to an embodiment of the present invention. As shown in FIG. 1 , the method includes:
- S101 Acquire a related to-be-analyzed statement of the task to be analyzed.
- the task to be analyzed may be a task that is developed by a developer or a data development system and waiting to be uploaded to the network by the system. Before going online, it is necessary to perform security analysis on the task to be analyzed, and determine the operation. Whether the task to be analyzed leads to sensitive data of the leakage system, and the like. By analyzing the task of avoiding going online, it poses a security risk to the system.
- the related to-be-analyzed statement may be a statement having an association relationship with the task to be analyzed, and is not limited to the statement included only for the task to be analyzed, and may further include other dependencies on the task to be analyzed.
- the statement included in the task may be a statement having an association relationship with the task to be analyzed, and is not limited to the statement included only for the task to be analyzed, and may further include other dependencies on the task to be analyzed.
- the statement included in the task may be a statement having an association relationship with the task to be analyzed, and is not limited to the statement included only for the task to be analyzed, and may further include other dependencies on the task to be analyzed.
- the statement included in the task may be a statement having an association relationship with the task to be analyzed, and is not limited to the statement included only for the task to be analyzed, and may further include other dependencies on the task to be analyzed.
- the embodiment of the present invention provides a method for obtaining a related to-be-analyzed statement of a task to be analyzed.
- FIG. 2 is an acquisition related to be analyzed according to an embodiment of the present invention.
- Method flow diagram for the statement method including:
- all the content of the task to be analyzed is not directly sent to the server for security analysis, but the developer or the data development system first saves the content of the task to be analyzed to be used for storage. On the server, and thus get the task identifier corresponding to the task to be analyzed. When the task to be analyzed needs to be analyzed, the task identifier can be sent to the server for security analysis, thereby avoiding the situation of sending a large amount of data.
- S202 retrieve the to-be-analyzed statement from the data to be analyzed from the data saved in the database according to the task identifier.
- S203 Query whether the task to be analyzed has a subtask according to the task identifier, where the subtask is a task that has a dependency on the output data of the task to be analyzed. If so, trigger S204.
- the server for security analysis obtains the task identifier
- the task to be analyzed corresponding to the task identifier is retrieved from the server for storing the task to be analyzed.
- the server for security analysis may further search for a subtask that depends on the task to be analyzed according to the task identifier. By finding a subtask that has a dependency relationship with the task to be analyzed, it is possible to filter out the data generated by the original task to be analyzed according to security, but may be in a subtask In the case of the production of sensitive data. It can be seen that by analyzing the statements of the subtasks at the same time, the security of the tasks to be analyzed can be more comprehensively determined.
- the dependency described here can be understood as the subtask needs to pass the task to be analyzed to realize its own function, for example, the data required by the subtask is calculated by the task to be analyzed or retrieved by the task to be analyzed, or for example,
- the implementation of the task function depends on the implementation of all or part of the functions of the task to be analyzed.
- S205 Acquire a related to-be-analyzed statement of the task to be analyzed, where the related to-be-analyzed statement includes the to-be-analyzed statement of the to-be-analyzed task, the statement of the subtask, and according to the dependency when the to-be-analyzed task has a subtask
- the statement combination relationship between the statement to be analyzed of the task to be analyzed and the statement of the subtask obtained by the relationship.
- the related to-be-analyzed statement may include two composition cases, and whether sub-task correlation can be found.
- the subtask of the task to be analyzed is not found.
- the related to-be-analyzed statement may include the to-be-analyzed statement of the task to be analyzed.
- the sub-task of the task to be analyzed is found.
- the related to-be-analyzed statement includes the to-be-analyzed statement of the task to be analyzed, and the Declaring a statement of the subtask and a statement combination relationship between the statement to be analyzed of the task to be analyzed and the statement of the subtask obtained according to the dependency relationship.
- S102 Call the security analysis model to perform security analysis on the related to-be-analyzed statement.
- the security analysis may compare the statement combination, the calling relationship, and the like in the related to-be-analyzed sentence with the statement combination and the calling relationship in the sensitive set and the secure set in the security analysis model, thereby determining The security of the task to be analyzed.
- the invention does not limit the specific manner in which the security analysis is performed.
- the security analysis model establishes the AST as in the above example
- the related to-be-analyzed sentences may also be similarly processed, thereby improving the efficiency of the comparison analysis in the security analysis. That is, optionally, the invoking the security analysis model performs security analysis on the related to-be-analyzed statement, including:
- the process of establishing an AST may be that a statement (for example, an SQL statement) is used as an intermediate node of the AST, and each intermediate node is connected according to a combination relationship between the statements.
- a statement for example, an SQL statement
- both sides of the comparison are AST structures, the comparison process is more convenient, and a single level, a sub-AST that implements the data output function, and the like can be individually compared.
- the content of the security analysis condition may be related to a specific application scenario, and the required different security may correspond to different security analysis conditions.
- the safety analysis condition includes a combination of one or more of the following condition one, condition two, and condition three.
- the security analysis condition includes a plurality of conditions, even if the related to-be-analyzed sentence satisfies only one of the conditions in the security analysis, the related to-be-analyzed statement may be considered to satisfy the security analysis condition.
- the sub-AST for the data output in the at least one AST to be analyzed is the same as in the at least one sensitive AST, and the sub-AST is different from the at least one security AST.
- the API in the task to be analyzed may directly produce the sensitive index and is exposed to the outside without being desensitized.
- At least one level of the AST corresponding to an application programming interface (English: Application Programming Interface, API) is the same as that in the at least one sensitive AST.
- condition 2 it can be understood that the API in the task to be analyzed may produce all the prerequisite data required for calculating the sensitive indicator, and expose them to the outside in a single API.
- Condition three at least one level of the AST corresponding to the plurality of application programming interface APIs in the related to-be-analyzed statement is the same as in the at least one sensitive AST.
- the independent software vendor (English: Independent Software Vendors, abbreviation: ISV) in the task to be analyzed may produce all the prerequisite data required for calculating the sensitive indicator, and They are exposed to each other in multiple APIs.
- S104 Determine that the task to be analyzed is a security task.
- the system may perform an online operation, and the task to be analyzed after being online may be found by other users in the system (for example, other developers, etc.). Can be executed, referenced, etc. by other users.
- the task to be analyzed may be directly sent back to the developer for re-modification, or the developer may be notified that the online connection is unsuccessful.
- a secondary safety analysis may be performed on the task to be analyzed determined as a dangerous task to reduce the false positive rate.
- the method further includes:
- the task to be analyzed that is determined to be a dangerous task is sent to the analysis terminal, and the analysis terminal performs a secondary security analysis on the task to be analyzed.
- the analysis terminal may be another automatic analysis server, and perform security analysis on the task to be analyzed determined as a dangerous task to verify the correctness of the first security analysis result.
- the analysis terminal may also be a professional data analyst, manually analyzing the to-be-analyzed task determined as a dangerous task by a manual manner to verify whether the task to be analyzed does have a security problem.
- the statements for analysis are first classified according to the combination relationship of the sentences, and the sensitive set and the security set are classified, and the sensitive set includes a combination of sentences capable of causing leakage of sensitive data, the security set.
- the security analysis model is established according to the sensitive set and the security set.
- the security analysis model may be invoked to perform security on the related to-be-analyzed statement.
- the analysis analyzes the combination of the sensitive statement combination and the security statement obtained in advance and the related statement of the task to be analyzed, and determines whether it is a security task or according to whether the security analysis condition set according to the sensitive set and the security set is satisfied. Whether it is a dangerous task, the automated analysis of the analysis task can be performed, thereby eliminating the human influence in the traditional analysis mode, providing stable analysis accuracy and increasing the security of the system.
- FIG. 3 is a structural diagram of a device of a data analysis apparatus according to an embodiment of the present invention, according to a statement
- the combination relationship classifies the statements for analysis, and classifies the sensitive set and the security set, the sensitive set includes a combination of statements that can cause sensitive data leakage, and the security set includes a combination of security statements, according to the sensitivity
- the collection and the security collection establish a security analysis model, the device comprising:
- the first obtaining unit 301 is configured to acquire a related to-be-analyzed statement of the task to be analyzed.
- the analyzing unit 302 is configured to invoke the security analysis model to perform security analysis on the related to-be-analyzed statement.
- the trigger determination unit 303 determines that the to-be-analyzed task is a dangerous task, and the security analysis condition is set according to the sensitive set and the security set.
- the determining unit 303 is triggered to determine that the task to be analyzed is a security task.
- it also includes:
- a second acquiring unit configured to acquire a task identifier of the task to be analyzed before triggering the first acquiring unit 301;
- a retrieving unit configured to retrieve, from the data saved by the database, the to-be-analyzed statement of the task to be analyzed according to the task identifier
- a querying unit configured to query, according to the task identifier, whether the task to be analyzed has a subtask, and the subtask is a task having a dependency relationship on the output data of the to-be-analyzed task;
- the retrieving unit is further configured to retrieve a statement of the subtask from a database saved by the database;
- the first acquiring unit 301 is further configured to acquire the to-be-analyzed statement of the task to be analyzed, the statement of the subtask, and the to-be-analyzed statement and the to-be-analyzed task obtained according to the dependency relationship.
- the establishing a security analysis model according to the sensitive set and the security set includes:
- the analyzing unit 302 is specifically configured to: according to the statement combination relationship in the related to-be-analyzed statement, establish the at least one AST to be analyzed according to the related to-be-analyzed sentence; and the at least one to be analyzed The AST is compared to the at least one sensitive AST and the safety AST in the safety analysis model.
- the security analysis condition includes a combination of one or more of the following:
- the sub-AST for the data production in the at least one AST to be analyzed is the same as in the at least one sensitive AST, and the sub-AST is different from the at least one security AST;
- At least one level of the AST corresponding to one of the application programming interface APIs in the related to-be-analyzed statement is the same as in the at least one sensitive AST;
- At least one level of the AST corresponding to the plurality of application programming interface APIs in the related to-be-analyzed statement is the same as in the at least one sensitive AST.
- it also includes:
- a sending unit configured to: if the analysis result is that the related to-be-analyzed statement meets a security analysis condition, send the to-be-analyzed task that is determined to be a dangerous task to an analysis terminal, where the analysis terminal performs the to-be-analyzed task Secondary safety analysis.
- the statements for analysis are first classified according to the combination relationship of the sentences, and the sensitive set and the security set are classified, and the sensitive set includes a combination of sentences capable of causing leakage of sensitive data, the security set.
- the security analysis model is established according to the sensitive set and the security set.
- the security analysis model may be invoked to perform security on the related to-be-analyzed statement.
- the analysis analyzes the combination of the sensitive statement combination and the security statement obtained in advance and the related statement of the task to be analyzed, and determines whether it is a security task or according to whether the security analysis condition set according to the sensitive set and the security set is satisfied. Whether it is a dangerous task, the automated analysis of the analysis task can be performed, thereby eliminating the human influence in the traditional analysis mode, providing stable analysis accuracy and increasing the security of the system.
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- Tourism & Hospitality (AREA)
- Operations Research (AREA)
- Educational Administration (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Game Theory and Decision Science (AREA)
- Development Economics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Machine Translation (AREA)
- Stored Programmes (AREA)
Abstract
一种数据分析方法和装置,根据语句的组合关系对用于分析的语句进行分类,分类得到敏感集合和安全集合,根据所述敏感集合和安全集合建立安全分析模型,获取待分析任务的相关待分析语句;调用所述安全分析模型对所述相关待分析语句进行安全性分析,若所述相关待分析语句满足安全分析条件,则判定所述待分析任务为危险任务,所述安全分析条件根据所述敏感集合和所述安全集合设置;若所述相关待分析语句不满足所述安全分析条件,则判定所述待分析任务为安全任务。由此可对待分析任务进行自动化比对分析,从而去除了传统分析方式中的人为影响,提供了稳定的分析准确性,增加了系统的安全性。
Description
本发明涉及数据处理领域,特别是涉及一种数据分析方法和装置。
在数据研发的过程中,开发人员可以将研发完成的任务提交到系统,在对该任务的分析合格后,该任务可以在该系统上线。上线后,该系统的用户可以查找到该任务,通过执行该任务可以实现该任务相应的功能。
针对任务的分析主要是分析任务所包含的语句是否具有风险,通过分析语句判断该任务是否会导致系统的敏感信息泄露,对系统造成不安全隐患。目前主要依靠专业的分析人员对任务包含的语句进行分析,分析的准确性和分析人员在数据分析方面的经验直接相关,经验匮乏的分析人员所得出的分析结果往往不够准确,例如将安全的任务分析成高危任务,或将具有安全漏洞的任务分析为安全任务并在系统上线。人为因素的影响导致了目前对数据任务的分析准确性的波动大,降低了系统的安全性。
发明内容
为了解决上述技术问题,本发明提供了一种数据分析方法和装置,以使得可对待分析任务进行自动化比对分析,从而去除了传统分析方式中的人为影响。
本发明实施例公开了如下技术方案:
一种数据分析方法,根据语句的组合关系对用于分析的语句进行分类,分类得到敏感集合和安全集合,所述敏感集合中包括能造成敏感数据泄露的语句组合,所述安全集合中包括安全的语句组合,根据所述敏感集合和安全集合建立安全分析模型,所述方法包括:
获取待分析任务的相关待分析语句;
调用所述安全分析模型对所述相关待分析语句进行安全性分析,
若所述相关待分析语句满足安全分析条件,则判定所述待分析任务为危险任务,所述安全分析条件根据所述敏感集合和所述安全集合设置;
若所述相关待分析语句不满足所述安全分析条件,则判定所述待分析任务为安全任务。
可选的,在所述获取待分析任务的相关待分析语句之前,还包括:
获取所述待分析任务的任务标识;
根据所述任务标识从数据库保存的数据中调取与所述待分析任务的待分析语句;
根据所述任务标识查询所述待分析任务是否具有子任务,所述子任务为对所述待分析任务输出数据具有依赖关系的任务;
若具有,从数据库保存的数据库中调取所述子任务的语句;
且若具有,所述获取待分析任务的相关待分析语句,包括:
获取所述待分析任务的待分析语句、所述子任务的语句以及根据所述依赖关系得到的所述待分析任务的待分析语句和所述子任务的语句之间的语句组合关系。
可选的,所述根据所述敏感集合和安全集合建立安全分析模型,包括:
根据语句的组合关系将所述敏感集合中的语句组合建立至少一个敏感抽象语法树AST,将所述安全集合中的语句组合建立至少一个安全AST;
所述调用所述安全分析模型对所述相关待分析语句进行安全性分析,包括:
根据所述相关待分析语句中的语句组合关系,将所述相关待分析语句建立至少一个待分析AST;
将所述至少一个待分析AST与所述安全分析模型中的所述至少一个敏感AST和安全AST进行比对分析。
可选的,所述安全分析条件包括下述一个或多个的组合:
所述至少一个待分析AST中用于数据产出的子AST与所述至少一个敏感AST中的相同,且所述子AST与所述至少一个安全AST不同;
所述相关待分析语句中一个应用程序编程接口API对应的AST的至少一个层级与所述至少一个敏感AST中的相同;
所述相关待分析语句中多个应用程序编程接口API对应的AST的至少一个层级与所述至少一个敏感AST中的相同。
可选的,若所述相关待分析语句满足安全分析条件,还包括:
将判定为危险任务的所述待分析任务发至分析终端,由所述分析终端对所述待分析任务进行二次安全性分析。
一种数据分析装置,根据语句的组合关系对用于分析的语句进行分类,分类得到敏感集合和安全集合,所述敏感集合中包括能造成敏感数据泄露的语句组合,所述安全集合中包括安全的语句组合,根据所述敏感集合和安全集合建立安全分析模型,所述装置包括:
第一获取单元,用于获取待分析任务的相关待分析语句;
分析单元,用于调用所述安全分析模型对所述相关待分析语句进行安全性分析;
若所述分析结果为所述相关待分析语句满足安全分析条件,触发判断单元判定所述待分析任务为危险任务,所述安全分析条件根据所述敏感集合和所述安全集合设置;
若所述分析结果为所述相关待分析语句不满足所述安全分析条件,触发所述判定单元判定所述待分析任务为安全任务。
可选的,还包括:
第二获取单元,用于在触发所述第一获取单元之前,获取所述待分析任务的任务标识;
调取单元,用于根据所述任务标识从数据库保存的数据中调取与所述待分析任务的待分析语句;
查询单元,用于根据所述任务标识查询所述待分析任务是否具有子任务,所述子任务为对所述待分析任务输出数据具有依赖关系的任务;
若具有,所述调取单元还用于从数据库保存的数据库中调取所述子任务的语句;
且若具有,所述第一获取单元还用于获取所述待分析任务的待分析语句、所述子任务的语句以及根据所述依赖关系得到的所述待分析任务的待分析语句和所述子任务的语句之间的语句组合关系。
可选的,所述根据所述敏感集合和安全集合建立安全分析模型,包括:
根据语句的组合关系将所述敏感集合中的语句组合建立至少一个敏感抽
象语法树AST,将所述安全集合中的语句组合建立至少一个安全AST;
所述分析单元具体用于根据所述相关待分析语句中的语句组合关系,将所述相关待分析语句建立至少一个待分析AST;将所述至少一个待分析AST与所述安全分析模型中的所述至少一个敏感AST和安全AST进行比对分析。
可选的,所述安全分析条件包括下述一个或多个的组合:
所述至少一个待分析AST中用于数据产出的子AST与所述至少一个敏感AST中的相同,且所述子AST与所述至少一个安全AST不同;
所述相关待分析语句中一个应用程序编程接口API对应的AST的至少一个层级与所述至少一个敏感AST中的相同;
所述相关待分析语句中多个应用程序编程接口API对应的AST的至少一个层级与所述至少一个敏感AST中的相同。
可选的,还包括:
发送单元,用于若所述分析结果为所述相关待分析语句满足安全分析条件,将判定为危险任务的所述待分析任务发至分析终端,由所述分析终端对所述待分析任务进行二次安全性分析。
由上述技术方案可以看出,首先根据语句的组合关系对用于分析的语句进行分类,分类得到敏感集合和安全集合,所述敏感集合中包括能造成敏感数据泄露的语句组合,所述安全集合中包括安全的语句组合,根据所述敏感集合和安全集合建立安全分析模型,当获取与待分析任务的相关待分析语句时,可以调用所述安全分析模型对所述相关待分析语句进行安全性分析,将预先得到的敏感语句组合和安全语句组合与待分析任务的相关语句进行比对分析,根据是否满足根据所述敏感集合和所述安全集合设置的安全分析条件来判定是否为安全任务或是否为危险任务,由此可对待分析任务进行自动化比对分析,从而去除了传统分析方式中的人为影响,提供了稳定的分析准确性,增加了系统的安全性。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,
在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种数据分析方法的方法流程图;
图2为本发明实施例提供的一种获取相关待分析语句方法的方法流程图;
图3为本发明实施例提供的一种数据分析装置的装置结构图。
在数据研发的过程中,开发人员可以将研发完成的任务提交到系统,在对该任务的分析合格后,该任务可以在该系统上线。其中,针对任务的分析主要是分析任务所包含的语句是否具有风险,通过分析语句判断该任务是否会导致系统的敏感信息泄露,例如调用敏感数据,或者通过计算生成敏感数据等。若这种不安全的任务被系统上线,可能会导致用户在执行该任务时泄露系统的敏感数据,由此对系统造成不安全隐患。目前主要依靠专业的分析人员对任务包含的语句进行分析,分析的准确性和分析人员在数据分析方面的经验直接相关,经验匮乏的分析人员所得出的分析结果往往不够准确,例如将安全的任务分析成高危任务,或将具有安全漏洞的任务分析为安全任务并在系统上线。人为因素的影响导致了目前对数据任务的分析准确性的波动大,降低了系统的安全性。
为此,本发明实施例提供了一种数据分析方法和装置,首先根据语句的组合关系对用于分析的语句进行分类,分类得到敏感集合和安全集合,所述敏感集合中包括能造成敏感数据泄露的语句组合,所述安全集合中包括安全的语句组合,根据所述敏感集合和安全集合建立安全分析模型,当获取与待分析任务的相关待分析语句时,可以调用所述安全分析模型对所述相关待分析语句进行安全性分析,将预先得到的敏感语句组合和安全语句组合与待分析任务的相关语句进行比对分析,根据是否满足根据所述敏感集合和所述安全集合设置的安全分析条件来判定是否为安全任务或是否为危险任务,由此可对待分析任务进行自动化比对分析,从而去除了传统分析方式中的人为影响,提供了稳定的分析准确性,增加了系统的安全性。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明
中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
在描述本发明实施例提供的数据分析方法的具体步骤之前,先介绍安全分析模型的组成和建立。
本发明实施例提供的安全分析模型(英文:Security Analysis Model)建立方式是,根据语句的组合关系对用于分析的语句进行分类,分类得到敏感集合和安全集合,所述敏感集合中包括能造成敏感数据泄露的语句组合,所述安全集合中包括安全的语句组合,根据所述敏感集合和安全集合建立安全分析模型。
举例说明,可以针对具体的应用场景得到用于分析的语句,语句可以为计算机语句,例如目前系统平台中较为常用的结构化查询语言(英文:Structured Query Language,缩写:SQL)语句等。
可以通过关系代数理论,对用于分析的语句中的组合关系等进行解析,从中确定出可能出现敏感数据泄漏的语句组合,以及安全的语句组合。确定语句属于敏感集合或安全集合的标准可以为安全约束原则,安全约束原则可以包括禁止从系统获取敏感数据等,例如禁止从系统平台的数据库中获取敏感数据。敏感数据可以为用户真实信息、用户的交易数据、公司数据等。
确定出的敏感集合可以具体为敏感指标集合(英文:Sensitive Indicator Set,缩写:SIS),其中可以包括从业务系统数据仓库表触发的计算过程。确定出的安全集合可以具体为非敏感、有实际业务意义的指标列表(英文:Non-sensitive Indicator Set,缩写:NIS)。
所述敏感集合和安全集合可以作为所述安全分析模型的组成部分。为了更为便于后续的安全性分析,可以将所述敏感集合和安全集合建立为抽象语法树(英文:abstract syntax tree,缩写:AST)。可选的,所述根据所述敏感集合和安全集合建立安全分析模型,包括:
根据语句的组合关系将所述敏感集合中的语句组合建立至少一个敏感抽象语法树AST,将所述安全集合中的语句组合建立至少一个安全AST。
其中,建立AST的过程可以为,将语句(例如SQL语句)作为AST的
中间节点,根据语句之间的组合关系连接各个中间节点。
图1为本发明实施例提供的一种数据分析方法的方法流程图,如图1所示,所述方法包括:
S101:获取待分析任务的相关待分析语句。
举例说明,所述待分析任务可以为经过开发人员或数据开发系统等开发完成的、等待被系统上线到网络上的任务,在上线之前,需要对所述待分析任务进行安全性分析,判断运行所述待分析任务是否会导致泄漏系统的敏感数据等。通过分析避免上线的任务对系统造成安全隐患。
所述相关待分析语句可以为与所述待分析任务具有关联关系的语句,不需局限于仅为所述待分析任务所包括的语句,还可以包括对所述待分析任务具有依赖关系的其他任务所包括的语句。
可选的,本发明实施例提供了一种获取待分析任务的相关待分析语句的方法,在图1所对应实施例的基础上,图2为本发明实施例提供的一种获取相关待分析语句方法的方法流程图,包括:
S201:获取所述待分析任务的任务标识。
一般情况下,并不会将所述待分析任务的所有内容直接发送到用于安全性分析的服务器上,而是开发人员或数据开发系统先将所述待分析任务的内容保存到用于存储的服务器上,并由此得到与所述待分析任务相对应的任务标识。当需要对所述待分析任务进行分析时,可以将任务标识发送到用于安全性分析的服务器,从而避免发送大量数据的情况发生。
S202:根据所述任务标识从数据库保存的数据中调取与所述待分析任务的待分析语句。
S203:根据所述任务标识查询所述待分析任务是否具有子任务,所述子任务为对所述待分析任务输出数据具有依赖关系的任务。若具有,触发S204。
当用于安全性分析的服务器获取所述任务标识,将从用于存储待分析任务的服务器上更加所述任务标识调取与所述任务标识对应的待分析语句。并且,所述用于安全性分析的服务器还可以根据所述任务标识查找依赖所述待分析任务的子任务。通过查找与所述待分析任务具有依赖关系的子任务,可以筛选出原本所述待分析任务产出的数据符合安全性,但是可能会在子任务
中作为生产出敏感数据的基础的情况。可见,通过同时分析子任务的语句,可以更加全面的确定所述待分析任务的安全性。
这里所述的依赖可以理解为子任务需要通过所述待分析任务才能实现自身功能,例如子任务所需要的数据由所述待分析任务计算得到或由所述待分析任务调取,或者例如子任务功能的实现所需要依赖于所述待分析任务的全部或部分功能的实现等。
S204:从数据库保存的数据库中调取所述子任务的语句。
S205:获取待分析任务的相关待分析语句,所述相关待分析语句在所述待分析任务具有子任务时包括所述待分析任务的待分析语句、所述子任务的语句以及根据所述依赖关系得到的所述待分析任务的待分析语句和所述子任务的语句之间的语句组合关系。
举例说明,所述相关待分析语句可以包括两种组成情况,和是否能够找到子任务相关。第一种情况下,没有找到所述待分析任务的子任务,这种情况下,所述相关待分析语句可以包括所述待分析任务的待分析语句。第二种情况下,找到了所述待分析任务的子任务,这种情况下,所述相关待分析语句在所述待分析任务具有子任务时包括所述待分析任务的待分析语句、所述子任务的语句以及根据所述依赖关系得到的所述待分析任务的待分析语句和所述子任务的语句之间的语句组合关系。
S102:调用所述安全分析模型对所述相关待分析语句进行安全性分析。
举例说明,所述安全性分析可以为将所述相关待分析语句中的语句组合、调用关系等与所述安全分析模型中敏感集合和安全集合中的语句组合和调用关系进行比对,从而确定出所述待分析任务的安全性。本发明不限定安全性分析的具体方式。在所述安全分析模型如上述例子中建立了AST的可选情况下,也可以对所述相关待分析语句进行相似处理,从而提高安全性分析中比对分析的效率。也就是说,可选的,所述调用所述安全分析模型对所述相关待分析语句进行安全性分析,包括:
根据所述相关待分析语句中的语句组合关系,将所述相关待分析语句建立至少一个待分析AST。
将所述至少一个待分析AST与所述安全分析模型中的所述至少一个敏感
AST和安全AST进行比对分析。
举例说明,其中,建立AST的过程可以为,将语句(例如SQL语句)作为AST的中间节点,根据语句之间的组合关系连接各个中间节点。
由于比对的双方都是AST的结构,使得比对的过程更为便捷,可以单独的比对一个层级、一个实现数据产出功能的子AST等。
在S102中,若所述相关待分析语句满足安全分析条件,执行S103,若所述相关待分析语句不满足所述安全分析条件,执行S104。
举例说明,所述安全分析条件的内容可以与具体应用场景相关,所要求的不同的安全性可以对应不同的安全分析条件。
可选的,在上述AST的情况下,所述安全分析条件包括下述条件一、条件二和条件三中一个或多个的组合。在所述安全分析条件包括多个条件的情况下,即使所述相关待分析语句在安全性分析中仅满足了其中一个条件,也可以认为所述相关待分析语句满足安全分析条件。
条件一:所述至少一个待分析AST中用于数据产出的子AST与所述至少一个敏感AST中的相同,且所述子AST与所述至少一个安全AST不同。
若满足所述条件一,则可以理解为,所述待分析任务中的API可能直接生产出了敏感指标且未经过脱敏处理就对外暴露。
条件二:所述相关待分析语句中一个应用程序编程接口(英文:Application Programming Interface,缩写:API)对应的AST的至少一个层级与所述至少一个敏感AST中的相同。
若满足所述条件二,则可以理解为,所述待分析任务中的API可能生产出了计算敏感指标所需的所有前提数据,并在单个API中将它们对外暴露。
条件三:所述相关待分析语句中多个应用程序编程接口API对应的AST的至少一个层级与所述至少一个敏感AST中的相同。
若满足所述条件三,则可以理解为,所述待分析任务中的独立软件开发商(英文:Independent Software Vendors,缩写:ISV)可能生产出了计算敏感指标所需的所有前提数据,并在多个API中分别将它们对外暴露。
S103:判定所述待分析任务为危险任务。
S104:判定所述待分析任务为安全任务。
举例说明,在所述待分析任务被判定为安全任务时,则可以通过系统进行上线操作,上线后所述待分析任务能够被系统中的其他用户(例如其他开发人员等)所查到,也可以被其他用户所执行、引用等。
针对所述待分析任务被判定为危险任务的情况,可以直接将所述待分析任务发回开发方重新修改,或通知开发方上线不成功等信息。或者,为了避免错误的安全性分析可能,还可以对判定为危险任务的所述待分析任务进行二次安全性分析,以减少错判率。可选的,若所述相关待分析语句满足安全分析条件,还包括:
将判定为危险任务的所述待分析任务发至分析终端,由所述分析终端对所述待分析任务进行二次安全性分析。
举例说明,所述分析终端可以为其他自动分析的服务器,对判定为危险任务的所述待分析任务再一次进行安全性分析,以核实第一次安全性分析结果的正确性。所述分析终端也可以是专业数据分析人员,通过人工的方式对判定为危险任务的所述待分析任务进行人工分析,以核实所述待分析任务是否确实出现安全性问题。
由上述实施例可以看出,首先根据语句的组合关系对用于分析的语句进行分类,分类得到敏感集合和安全集合,所述敏感集合中包括能造成敏感数据泄露的语句组合,所述安全集合中包括安全的语句组合,根据所述敏感集合和安全集合建立安全分析模型,当获取与待分析任务的相关待分析语句时,可以调用所述安全分析模型对所述相关待分析语句进行安全性分析,将预先得到的敏感语句组合和安全语句组合与待分析任务的相关语句进行比对分析,根据是否满足根据所述敏感集合和所述安全集合设置的安全分析条件来判定是否为安全任务或是否为危险任务,由此可对待分析任务进行自动化比对分析,从而去除了传统分析方式中的人为影响,提供了稳定的分析准确性,增加了系统的安全性。
实施例二
图3为本发明实施例提供的一种数据分析装置的装置结构图,根据语句
的组合关系对用于分析的语句进行分类,分类得到敏感集合和安全集合,所述敏感集合中包括能造成敏感数据泄露的语句组合,所述安全集合中包括安全的语句组合,根据所述敏感集合和安全集合建立安全分析模型,所述装置包括:
第一获取单元301,用于获取待分析任务的相关待分析语句。
分析单元302,用于调用所述安全分析模型对所述相关待分析语句进行安全性分析。
若所述分析结果为所述相关待分析语句满足安全分析条件,触发判断单元303判定所述待分析任务为危险任务,所述安全分析条件根据所述敏感集合和所述安全集合设置。
若所述分析结果为所述相关待分析语句不满足所述安全分析条件,触发所述判定单元303判定所述待分析任务为安全任务。
可选的,还包括:
第二获取单元,用于在触发所述第一获取单元301之前,获取所述待分析任务的任务标识;
调取单元,用于根据所述任务标识从数据库保存的数据中调取与所述待分析任务的待分析语句;
查询单元,用于根据所述任务标识查询所述待分析任务是否具有子任务,所述子任务为对所述待分析任务输出数据具有依赖关系的任务;
若具有,所述调取单元还用于从数据库保存的数据库中调取所述子任务的语句;
且若具有,所述第一获取单元301还用于获取所述待分析任务的待分析语句、所述子任务的语句以及根据所述依赖关系得到的所述待分析任务的待分析语句和所述子任务的语句之间的语句组合关系。
可选的,所述根据所述敏感集合和安全集合建立安全分析模型,包括:
根据语句的组合关系将所述敏感集合中的语句组合建立至少一个敏感抽象语法树AST,将所述安全集合中的语句组合建立至少一个安全AST;
所述分析单元302具体用于根据所述相关待分析语句中的语句组合关系,将所述相关待分析语句建立至少一个待分析AST;将所述至少一个待分析
AST与所述安全分析模型中的所述至少一个敏感AST和安全AST进行比对分析。
可选的,所述安全分析条件包括下述一个或多个的组合:
所述至少一个待分析AST中用于数据产出的子AST与所述至少一个敏感AST中的相同,且所述子AST与所述至少一个安全AST不同;
所述相关待分析语句中一个应用程序编程接口API对应的AST的至少一个层级与所述至少一个敏感AST中的相同;
所述相关待分析语句中多个应用程序编程接口API对应的AST的至少一个层级与所述至少一个敏感AST中的相同。
可选的,还包括:
发送单元,用于若所述分析结果为所述相关待分析语句满足安全分析条件,将判定为危险任务的所述待分析任务发至分析终端,由所述分析终端对所述待分析任务进行二次安全性分析。
由上述实施例可以看出,首先根据语句的组合关系对用于分析的语句进行分类,分类得到敏感集合和安全集合,所述敏感集合中包括能造成敏感数据泄露的语句组合,所述安全集合中包括安全的语句组合,根据所述敏感集合和安全集合建立安全分析模型,当获取与待分析任务的相关待分析语句时,可以调用所述安全分析模型对所述相关待分析语句进行安全性分析,将预先得到的敏感语句组合和安全语句组合与待分析任务的相关语句进行比对分析,根据是否满足根据所述敏感集合和所述安全集合设置的安全分析条件来判定是否为安全任务或是否为危险任务,由此可对待分析任务进行自动化比对分析,从而去除了传统分析方式中的人为影响,提供了稳定的分析准确性,增加了系统的安全性。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质可以是下述介质中的至少一种:只读存储器(英文:read-only memory,缩写:ROM)、RAM、磁碟或者光盘等各种可以存储程序代码的介
质。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备及系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的设备及系统实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (10)
- 一种数据分析方法,其特征在于,根据语句的组合关系对用于分析的语句进行分类,分类得到敏感集合和安全集合,所述敏感集合中包括能造成敏感数据泄露的语句组合,所述安全集合中包括安全的语句组合,根据所述敏感集合和安全集合建立安全分析模型,所述方法包括:获取待分析任务的相关待分析语句;调用所述安全分析模型对所述相关待分析语句进行安全性分析,若所述相关待分析语句满足安全分析条件,则判定所述待分析任务为危险任务,所述安全分析条件根据所述敏感集合和所述安全集合设置;若所述相关待分析语句不满足所述安全分析条件,则判定所述待分析任务为安全任务。
- 根据权利要求1所述的方法,其特征在于,在所述获取待分析任务的相关待分析语句之前,还包括:获取所述待分析任务的任务标识;根据所述任务标识从数据库保存的数据中调取与所述待分析任务的待分析语句;根据所述任务标识查询所述待分析任务是否具有子任务,所述子任务为对所述待分析任务输出数据具有依赖关系的任务;若具有,从数据库保存的数据库中调取所述子任务的语句;且若具有,所述获取待分析任务的相关待分析语句,包括:获取所述待分析任务的待分析语句、所述子任务的语句以及根据所述依赖关系得到的所述待分析任务的待分析语句和所述子任务的语句之间的语句组合关系。
- 根据权利要求1所述的方法,其特征在于,所述根据所述敏感集合和安全集合建立安全分析模型,包括:根据语句的组合关系将所述敏感集合中的语句组合建立至少一个敏感抽象语法树AST,将所述安全集合中的语句组合建立至少一个安全AST;所述调用所述安全分析模型对所述相关待分析语句进行安全性分析,包括:根据所述相关待分析语句中的语句组合关系,将所述相关待分析语句建立至少一个待分析AST;将所述至少一个待分析AST与所述安全分析模型中的所述至少一个敏感AST和安全AST进行比对分析。
- 根据权利要求3所述的方法,其特征在于,所述安全分析条件包括下述一个或多个的组合:所述至少一个待分析AST中用于数据产出的子AST与所述至少一个敏感AST中的相同,且所述子AST与所述至少一个安全AST不同;所述相关待分析语句中一个应用程序编程接口API对应的AST的至少一个层级与所述至少一个敏感AST中的相同;所述相关待分析语句中多个应用程序编程接口API对应的AST的至少一个层级与所述至少一个敏感AST中的相同。
- 根据权利要求1至4任一项所述的方法,其特征在于,若所述相关待分析语句满足安全分析条件,还包括:将判定为危险任务的所述待分析任务发至分析终端,由所述分析终端对所述待分析任务进行二次安全性分析。
- 一种数据分析装置,其特征在于,根据语句的组合关系对用于分析的语句进行分类,分类得到敏感集合和安全集合,所述敏感集合中包括能造成敏感数据泄露的语句组合,所述安全集合中包括安全的语句组合,根据所述敏感集合和安全集合建立安全分析模型,所述装置包括:第一获取单元,用于获取待分析任务的相关待分析语句;分析单元,用于调用所述安全分析模型对所述相关待分析语句进行安全性分析;若所述分析结果为所述相关待分析语句满足安全分析条件,触发判断单元判定所述待分析任务为危险任务,所述安全分析条件根据所述敏感集合和所述安全集合设置;若所述分析结果为所述相关待分析语句不满足所述安全分析条件,触发所述判定单元判定所述待分析任务为安全任务。
- 根据权利要求6所述的装置,其特征在于,还包括:第二获取单元,用于在触发所述第一获取单元之前,获取所述待分析任务的任务标识;调取单元,用于根据所述任务标识从数据库保存的数据中调取与所述待分析任务的待分析语句;查询单元,用于根据所述任务标识查询所述待分析任务是否具有子任务,所述子任务为对所述待分析任务输出数据具有依赖关系的任务;若具有,所述调取单元还用于从数据库保存的数据库中调取所述子任务的语句;且若具有,所述第一获取单元还用于获取所述待分析任务的待分析语句、所述子任务的语句以及根据所述依赖关系得到的所述待分析任务的待分析语句和所述子任务的语句之间的语句组合关系。
- 根据权利要求6所述的装置,其特征在于,所述根据所述敏感集合和安全集合建立安全分析模型,包括:根据语句的组合关系将所述敏感集合中的语句组合建立至少一个敏感抽象语法树AST,将所述安全集合中的语句组合建立至少一个安全AST;所述分析单元具体用于根据所述相关待分析语句中的语句组合关系,将所述相关待分析语句建立至少一个待分析AST;将所述至少一个待分析AST与所述安全分析模型中的所述至少一个敏感AST和安全AST进行比对分析。
- 根据权利要求8所述的装置,其特征在于,所述安全分析条件包括下述一个或多个的组合:所述至少一个待分析AST中用于数据产出的子AST与所述至少一个敏感AST中的相同,且所述子AST与所述至少一个安全AST不同;所述相关待分析语句中一个应用程序编程接口API对应的AST的至少一个层级与所述至少一个敏感AST中的相同;所述相关待分析语句中多个应用程序编程接口API对应的AST的至少一个层级与所述至少一个敏感AST中的相同。
- 根据权利要求6至9任一项所述的装置,其特征在于,还包括:发送单元,用于若所述分析结果为所述相关待分析语句满足安全分析条件,将判定为危险任务的所述待分析任务发至分析终端,由所述分析终端对所述待分析任务进行二次安全性分析。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201510609660.4 | 2015-09-22 | ||
| CN201510609660.4A CN106548264A (zh) | 2015-09-22 | 2015-09-22 | 一种数据分析方法和装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2017050148A1 true WO2017050148A1 (zh) | 2017-03-30 |
Family
ID=58364309
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2016/098816 Ceased WO2017050148A1 (zh) | 2015-09-22 | 2016-09-13 | 一种数据分析方法和装置 |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN106548264A (zh) |
| WO (1) | WO2017050148A1 (zh) |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN108551478A (zh) * | 2018-03-29 | 2018-09-18 | 中国银联股份有限公司 | 一种事务处理方法、服务器及事务处理系统 |
| CN109063511A (zh) * | 2018-08-16 | 2018-12-21 | 深圳云安宝科技有限公司 | 基于Web API的数据访问控制方法、装置、代理服务器及介质 |
| CN111767300A (zh) * | 2020-05-11 | 2020-10-13 | 全球能源互联网研究院有限公司 | 一种电力数据内外网穿透的动态脱敏方法及装置 |
| CN112104655A (zh) * | 2020-09-16 | 2020-12-18 | 安徽长泰信息安全服务有限公司 | 一种用于防止数据泄露的防护系统和方法 |
| US12430464B2 (en) | 2023-09-07 | 2025-09-30 | International Business Machines Corporation | Data leakage protection using generative large language models |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN108171076B (zh) * | 2017-12-22 | 2021-04-02 | 湖北工业大学 | 保护电子交易中消费者隐私的大数据相关性分析方法及系统 |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101833505A (zh) * | 2010-04-30 | 2010-09-15 | 天津大学 | 一种软件系统安全缺陷检测方法 |
| CN102945203A (zh) * | 2012-10-26 | 2013-02-27 | 深圳出入境检验检疫局信息中心 | 一种用于移动互联网应用的代码安全测试方法 |
| CN103793652A (zh) * | 2012-10-29 | 2014-05-14 | 广东电网公司信息中心 | 一种基于静态分析的应用系统代码安全扫描装置 |
| CN104850493A (zh) * | 2015-04-24 | 2015-08-19 | 百度在线网络技术(北京)有限公司 | 一种检测源代码漏洞的方法和装置 |
| CN104899043A (zh) * | 2015-06-16 | 2015-09-09 | 北京航空航天大学 | 采用模块安全性分析获取软件安全性需求的方法 |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN104077530A (zh) * | 2013-03-27 | 2014-10-01 | 国际商业机器公司 | 用于评估数据访问语句的安全性的方法和装置 |
| CN104252599B (zh) * | 2013-06-28 | 2019-07-05 | 深圳市腾讯计算机系统有限公司 | 一种检测跨站脚本漏洞的方法及装置 |
-
2015
- 2015-09-22 CN CN201510609660.4A patent/CN106548264A/zh active Pending
-
2016
- 2016-09-13 WO PCT/CN2016/098816 patent/WO2017050148A1/zh not_active Ceased
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101833505A (zh) * | 2010-04-30 | 2010-09-15 | 天津大学 | 一种软件系统安全缺陷检测方法 |
| CN102945203A (zh) * | 2012-10-26 | 2013-02-27 | 深圳出入境检验检疫局信息中心 | 一种用于移动互联网应用的代码安全测试方法 |
| CN103793652A (zh) * | 2012-10-29 | 2014-05-14 | 广东电网公司信息中心 | 一种基于静态分析的应用系统代码安全扫描装置 |
| CN104850493A (zh) * | 2015-04-24 | 2015-08-19 | 百度在线网络技术(北京)有限公司 | 一种检测源代码漏洞的方法和装置 |
| CN104899043A (zh) * | 2015-06-16 | 2015-09-09 | 北京航空航天大学 | 采用模块安全性分析获取软件安全性需求的方法 |
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN108551478A (zh) * | 2018-03-29 | 2018-09-18 | 中国银联股份有限公司 | 一种事务处理方法、服务器及事务处理系统 |
| US11544260B2 (en) | 2018-03-29 | 2023-01-03 | China Unionpay Co., Ltd. | Transaction processing method and system, and server |
| CN109063511A (zh) * | 2018-08-16 | 2018-12-21 | 深圳云安宝科技有限公司 | 基于Web API的数据访问控制方法、装置、代理服务器及介质 |
| CN111767300A (zh) * | 2020-05-11 | 2020-10-13 | 全球能源互联网研究院有限公司 | 一种电力数据内外网穿透的动态脱敏方法及装置 |
| CN112104655A (zh) * | 2020-09-16 | 2020-12-18 | 安徽长泰信息安全服务有限公司 | 一种用于防止数据泄露的防护系统和方法 |
| US12430464B2 (en) | 2023-09-07 | 2025-09-30 | International Business Machines Corporation | Data leakage protection using generative large language models |
Also Published As
| Publication number | Publication date |
|---|---|
| CN106548264A (zh) | 2017-03-29 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2017050148A1 (zh) | 一种数据分析方法和装置 | |
| US12314690B2 (en) | Methods and apparatus for automatic detection of software bugs | |
| CN110543356B (zh) | 异常任务检测方法、装置、设备及计算机存储介质 | |
| US11256712B2 (en) | Rapid design, development, and reuse of blockchain environment and smart contracts | |
| JP6769405B2 (ja) | 対話システムおよび対話方法 | |
| WO2013174200A1 (zh) | 代码分析方法及代码分析系统、计算机存储介质 | |
| CN107103239B (zh) | 基于应用系统业务处理逻辑的源代码越权检测方法及装置 | |
| CN104572085A (zh) | 应用程序的分析方法及装置 | |
| CN114036501A (zh) | 一种app的检测方法、系统、装置、设备及存储介质 | |
| CN113609014A (zh) | 一种接口字段校验方法、装置、存储介质及电子设备 | |
| CN108074033A (zh) | 指标数据的处理方法、系统、电子设备和存储介质 | |
| CN114911817B (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
| CN107784043B (zh) | 数据仓库数据表的监控方法、装置及系统 | |
| CN111666101A (zh) | 软件同源分析方法及装置 | |
| US9367307B2 (en) | Staged points-to analysis for large code bases | |
| CN121166507A (zh) | 智能体评估方法、装置、智能体、电子设备以及存储介质 | |
| CN120336172A (zh) | 测试用例生成方法、装置、设备、存储介质和程序产品 | |
| US8868424B1 (en) | Interactive voice response data collection object framework, vertical benchmarking, and bootstrapping engine | |
| KR102217092B1 (ko) | 애플리케이션의 품질 정보 제공 방법 및 장치 | |
| CN113656314A (zh) | 压力测试处理方法及装置 | |
| CN116483888B (zh) | 程序评估方法及装置、电子设备和计算机可读存储介质 | |
| CN105843890A (zh) | 基于知识库面向大数据及普通数据的数据采集方法和系统 | |
| CN117951000A (zh) | 信息生成方法、装置、电子设备及存储介质 | |
| CN110716859A (zh) | 自动为修改的代码推送测试用例的方法及相关装置 | |
| RU2851029C1 (ru) | Способ и система автоматизированного управления релизами приложений |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 16848030 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 16848030 Country of ref document: EP Kind code of ref document: A1 |