| In recent years,with the popularity of Wireless Network and the arrival of the 4G era,mobile phone devices with its easy to use,easy to carry and other advantages quickly replace the laptop,desktop computers become the highest utilization of personal Internet devices.At the same time,offline living and mobile Internet gradually integration,such as shopping,payment,courier,bank,take-away and the most popular shared bicycle can be done by mobile phone.As Android has an 87.5% market share in the mobile phone market,the research on the security of Android is of great significance to protect personal privacy information and property security.Research on Android platform vulnerability mining method can find and patch Android platform vulnerabilities in time,and help to improve the security of Android platform.At present,most of the researches on Automatic Vulnerability Mining focus on how to generate test samples better and improve the coverage rate of samples,while the research on Data Channel Recognition Technology is quite rare.For Vulnerability Mining,it is necessary to identify which kind of data input and input interface an application or system supports.Therefore,this paper puts forward the method of identifying Data Channel for media and Kernel Driver of Android respectively,and studies the media Vulnerability Mining method and kernel Vulnerability Mining method of Android platform based on Fuzzing.The author’s major contributions are outlined as follows:(1)This paper presents a method for identifying media Data Channels based on binary search.This method firstly divides the special import function in the dynamic link library by binary static analysis technique,which is divided into two types: network interaction and file type interaction according to the way of receiving data.Then,reverse lookups the APP application that invokes the dynamic link library,and finds out the input interface that can be used for Fuzzing by further analyzing the APP application.(2)This paper studies the media Vulnerability Mining of the Android platform,gets the input interface by identifying media Data Channel based on binary search,completes the sample test and the Exception Monitoring with the adb command,and finally realizes the media Vulnerability Mining System based on Fuzzing.(3)This paper proposes a method to automatically identify Data Channel of Kernel Driver based on disassembly and regular expression matching.First extract the kernel binary from the Android system and disassemble them,and then summarize the common code features of kernel processing IOCTL number at assembly level and C code level respectively,and use the regular expression to match the IOCTL number.Finally,a valid set of IOCTL number is obtained by filtering with valid condition.(4)This paper studies the Kernel Driver Vulnerability Mining of Android platform,gets a valid set of IOCTL number by automatic IOCTL number identification technique,and generating malformed data through data mutation module,and interact with the kernel driver by calling the ioctl function.Finally,realizes the Kernel Driver Vulnerability Mining System based on Fuzzing.Finally,the test results show that the media Vulnerability Mining System based on Fuzzing and the Kernel Driver Vulnerability Mining System can effectively find the media and kernel driver vulnerabilities.The main feature of this paper is that this paper proposes the method of identifying Media Data Channel and Kernel Driver Data Channel for Android.Among them,the method of identifying the Media Library Data Channel has the advantages of well-targeted and wide coverage.The method of automatic identifying the Kernel Driver Data Channel has the advantages of high efficiency,high accuracy,wide coverage and full automation. |