Automation Detection of Malware and Stenographical Content Using Machine Learning
Automation Detection of Malware and Stenographical Content Using Machine Learning
In recent times many malware attacks increasing in our society. Mainly image-
based malware attacks are spreading worldwide and many people get harmful
malware-based images through the technique called steganography. In the
existing system, only open malware and files from the internet is identified.
V
LIST OF FIGURES
VI
TABLE OF CONTENT
3 IMPLEMENTATION
3.1 Image Processing 19
3.1.1 Digital Image Processing 19
3.1.2 Pattern Recognition 20
3.2 Basic approaches to malware detection 21
VII
3.3 Machine learning 22
4
METHODOLOGY 3.4 Unsupervised Learning 22
Methodology 29
5 RESULT
5.1 Result 49
5.2 Performance Analysis 52
VIII
IX
CHAPTER 1
INTRODUCTION
There is no way to discover the hidden message except by the sender and
receiver. Because the secret message is embedded in the cover file, anyone
observing it as an ordinary file does not notice that the cover file contains secret
information, thus making steganography more secure.
The person who knows whether the cover file contains secret information is the
only one who can attempt to steal it.Machine learning is the main domain used for
modern steganography purposes. The major reason is the modern problem needs
a modern solution. Machine learning powerful prediction algorithm helps to find out
the stego content. It can be also useful for filtering the contents in the transmission
area.
1
CHAPTER 2
LITERATURE SURVEY
The domain analysis that we have done for the project mainly involved
understanding the neural networks
2.2 TensorFlow:
Features: TensorFlow provides stable Python (for version 3.7 across all
platforms) and C APIs; and without API backwards compatibility guarantee:
C++, Go, Java, JavaScript and Swift (early release). Third-party packages are
available for C#, Haskell Julia, MATLAB,R, Scala, Rust, OCaml, and
Crystal."New language support should be built on top of the C API. However,
not all functionality is available in C yet." Some more functionality is provided
by the Python API.
2.3 Opencv:
2
OpenCV's application areas include:
Boosting
Decision tree learning
Gradient boosting trees
Expectation-maximization algorithm
k-nearest neighbor algorithm
Naive Bayes classifier
Artificial neural networks
Random forest
Support vector machine (SVM)
Deep neural networks (DNN)
3
ROS (Robot Operating System). OpenCV is used as the primary vision
package in ROS.
Integrating Vision Toolkit (IVT), a fast and easy-to-use C++ library with an
optional interface to OpenCV.
OpenCV Functionality
Image/video I/O, processing, display (core, imgproc, highgui)
Object/feature detection (objdetect, features2d, nonfree)
Geometry-based monocular or stereo computer vision (calib3d,
stitching, videostab)
Computational photography (photo, video, superres)
Machine learning & clustering (ml, flann)
CUDA acceleration (gpu)
Image-Processing:
4
processing is the analysis and manipulation of a digitized image, especially in
order to improve its quality‖.
Digital-Image :
Robotics Application
Localization − Determine robot location automatically
Navigation
Obstacles avoidance
Assembly (peg-in-hole, welding, painting)
Manipulation (e.g. PUMA robot manipulator)
Human Robot Interaction (HRI) − Intelligent robotics to interact with and
serve people
Medicine Application
Classification and detection (e.g. lesion or cells classification and tumor
5
coding necessary for writing deep neural network code. The code is hosted on
GitHub, and community support forums include the GitHub issues page, and a
Slack channel.
Keras applications module is used to provide pre-trained model for deep neural
networks. Keras models are used for prediction, feature extraction and fine
tuning. This chapter explains about Keras applications in detail.
Pre-trained models
ResNet
VGG16
MobileNet
InceptionResNetV2
InceptionV3
2.5 Numpy: