当前位置:网站首页>Excellent test engineer must have 4 safety test methods!
Excellent test engineer must have 4 safety test methods!
2022-06-11 10:14:00 【Software test network】
One . Safety test
1、 Security testing methods
Testing means can be used for security testing , At present, the main safety testing methods are :
1) Static code security testing
Mainly through the security scanning of the source code , According to the data flow in the program 、 control flow 、 Semantic and other information are matched with its unique software security rule base , Find out the potential security vulnerabilities in the code .
Static source code security testing is a very useful method , It can find all the code that may have security risks in the coding phase , In this way, developers can solve potential security problems at an early stage . And that's why , Static code testing is more suitable for the early code development stage , Not the test phase .
2) Dynamic penetration test
Penetration testing is also a common safety testing method . Is to use automated tools or manual methods to simulate the input of hackers , Attack test the application system , Find out the security vulnerabilities at runtime .
The characteristic of this test is that it is true and effective , Generally, the problems found are correct , It's more serious . But a fatal disadvantage of penetration testing is that the simulated test data can only reach a limited number of test points , Coverage is very low .
3) Program data scanning
A software with high security requirements , Data cannot be destroyed during operation , Otherwise, it will lead to buffer overflow type attacks . The method of data scanning is usually memory test , Memory testing can find many vulnerabilities such as buffer overflow , Such vulnerabilities are difficult to find by other test methods .
for example , Scan the memory information when the software is running , See if there is any information that leads to hidden dangers , Of course, this requires special tools to verify , It is difficult to do it by hand .
2、 Reverse security testing process
Most software security tests are based on the principle of defect space reverse design , That is, check where there may be potential safety hazards in advance , Then test these possible hidden dangers .
therefore , The reverse test process starts from the defect space , Establish defect threat model , Find the intrusion point through the threat model , Scan and test known vulnerabilities at the intrusion point . The advantage is that known defects can be analyzed , Avoid known types of defects in software , But there is usually nothing you can do about unknown attack means and methods .
1) Establish defect threat model
The establishment of defect threat model mainly starts with the known security vulnerabilities , Check the software for known vulnerabilities . When building a threat model , You need to first determine what professional areas the software involves , Then, the model is built according to the attack means encountered in various professional fields .
2) Find and scan intrusion points
Check which defects in the threat model may occur in the software , Then bring the possible threats into the intrusion point matrix for management . If there is a mature vulnerability scanning tool , Then directly use the vulnerability scanning tool to scan , Then the suspicious problems found are included in the intrusion point matrix for management .
3) Verification test of intrusion matrix
After creating the intrusion matrix , The corresponding test cases can be designed for the specific items of the intrusion matrix , Then test and verify .
3、 Forward security test process
In order to avoid the test incompleteness caused by the reverse design principle , A positive testing method is needed to test the software completely , Enable the tested software to prevent unknown attack means and methods .
1) First identify the test space
Identify all variable data in the test space , Due to the high cost of security testing , Among them, we should focus on identifying the external input layer .
for example , Demand analysis 、 Outline design 、 Detailed design 、 The test space should be identified in the coding stages , The test space tracking matrix is established .
2) Define the design space precisely
Focus on whether the design space is clearly defined in the requirements , And whether the data involved in the requirements have identified its legal value range .
In this step , The most important thing to pay attention to is the exact word , The design space should be accurately defined in strict accordance with the principle of security .
3) Identify potential safety hazards
According to the test space and design space found and the conversion rules between them , Identify which test spaces and which transformation rules may have security risks .
for example , The more complex the test space , That is, the more complex the test space partition or the more variable data combination relationships, the less secure it is . And the more complex the conversion rules are , The more likely it is to go wrong , These are security risks .
4) Establish and verify intrusion matrix
After the safety hazard identification is completed , The intrusion matrix can be established according to the identified security risks . List potential safety hazards , Identify variable data with potential safety hazards , And identify the level of potential safety hazards . For those variable data with high security risk level , Detailed test case design must be carried out .
4、 The difference between forward and reverse testing
The forward testing process is to find defects and vulnerabilities based on the test space .
The reverse test process is based on the known defect space to find out whether the same defects and vulnerabilities will occur in the software , Both have their own advantages and disadvantages .
1) Forward test
The advantage of the process is that the test is sufficient , But the workload is relatively large . therefore , Software with low security requirements , Generally, it can be tested according to the reverse test process , For software with high security requirements , It should focus on the forward test process , The reverse test process is supplemented .
2) Reverse test
One of the main advantages of the process is its low cost , Just verify the known possible defects , But the disadvantage is that the test is not perfect , The test space cannot be completely overwritten , Unknown attack means cannot be found .
边栏推荐
- 【clickhouse专栏】新建库角色用户初始化
- Record yesterday's embarrassment
- With determination to forge ahead, JASMINER continues to deepen its brand strength
- Dotween usage
- Standard dual airbags, Changan Lumin listed, starting at 48900 yuan
- mysql基础学习笔记03
- What are the functions and features of EMG linear light emitter?
- What hydraulic oil is used for Denison hydraulic pump? What are the requirements
- Q1 revenue exceeded expectations. Why did man Bang win headwind growth?
- Introduction to steamvr
猜你喜欢

Datagrip 2022, datagrip function

Picture rule page turning

Detailed explanation of Lora module wireless transceiver communication technology

How much do you know about software compatibility testing? How to select a software compatibility testing organization?

parker派克先导式电磁阀和直动式电磁阀的区别有哪些?

mysql基础学习笔记03

Empire CMS imitates DIY handmade website source code of craft activity /92kaifa imitates self-adaptive mobile phone version template of craft activity

Empire CMS imitation "game bird" template source code /92kaifa version large mobile game portal template

ugui图片墙

What are the functions and functions of the EMG actuator
随机推荐
不卷了!入职字节跳动一周就果断跑了。
B站到底能不能赚到钱?
mysql基础学习笔记03
浅谈wandfluh比例阀的功能与作用
图表背后的秘密 | 技术指标讲解:唐奇安通道
【Objective-C】动态创建控件
面试复习手写题--函数截流与抖动
MySQL 权限管理和备份
什么是数字孪生?一个实时而虚拟的表现形式
Browserfetcher class for getting started with puppeter
EMG线性光源发射器有哪些功能和特点呢?
Bcgcontrolbar Library Professional Edition, fully documented MFC extension class
Datagrip 2022, datagrip function
外包干了四年,废了...
有哪些ABAP关键字和语法,到了ABAP云环境上就没办法用了?
Tree topology networking structure of ZigBee module communication protocol
Puppeter class of puppeter introduction
ugui图片墙
Integer lifting example
锐意进取,砥砺前行,JASMINER持续深耕品牌实力