Research Article
SSLDetecter: Detecting SSL Security Vulnerabilities of Android Applications Based on a Novel Automatic Traversal Method
Algorithm 1
Heuristic depth-first traversal algorithm.
| Input: apk file of the test app | (1) | Initialize | (2) | After the test apk starts, the interface type judgment and widget tree optimization are carried out to generate the initial node | (3) | ;//assign the initial node to the current node | (4) | //add the initial node to the list of nodes in the GUIGraph | (5) | While do | (6) | ; //Take the task from the task list | (7) | ; //Simulate event action | (8) | If the state of changed then//Interface state changes | (9) | | //calculate the interface state similarity, sim is a Map structure and the keys are similar nodes, the values are the results of similarity | (10) | If then//indicate a jump to a node that has been traversed | (11) | ; //the old node is set to the current node and perform the old node task | (12) | ; //add jump information | (13) | If and then | (14) | ; //add back action | (15) | End If | (16) | Else | (17) | ; //generate new GUI nodes | (18) | ; //generate the task list for the new node | (19) | ; //Add node information | (20) | ; //add jump information | (21) | End If | (22) | End If | (23) | End While |
|