Book Image

Mastering Machine Learning for Penetration Testing

By : Chiheb Chebbi
Book Image

Mastering Machine Learning for Penetration Testing

By: Chiheb Chebbi

Overview of this book

Cyber security is crucial for both businesses and individuals. As systems are getting smarter, we now see machine learning interrupting computer security. With the adoption of machine learning in upcoming security products, it’s important for pentesters and security researchers to understand how these systems work, and to breach them for testing purposes. This book begins with the basics of machine learning and the algorithms used to build robust systems. Once you’ve gained a fair understanding of how security products leverage machine learning, you'll dive into the core concepts of breaching such systems. Through practical use cases, you’ll see how to find loopholes and surpass a self-learning security system. As you make your way through the chapters, you’ll focus on topics such as network intrusion detection and AV and IDS evasion. We’ll also cover the best practices when identifying ambiguities, and extensive techniques to breach an intelligent system. By the end of this book, you will be well-versed with identifying loopholes in a self-learning security system and will be able to efficiently breach a machine learning system.
Table of Contents (13 chapters)

Chapter 5 – Botnet Detection with Machine Learning

As we did after every chapter, we are going to give you the opportunity to practice what you have learned and evaluate your skills. This chapter's GitHub repository contains a link to botnet traffic dataset in the practice folder at https://github.com/PacktPublishing/Mastering-Machine-Learning-for-Penetration-Testing/tree/master/Chapter5:

  1. Download the dataset and load it with the pandas library
  2. Select the suitable features
  3. Identify the training and testing sets, then export them into a .pickle file
  4. Load the .pickle file
  5. Use the same code blocks of Chapter 5, Botnet Detection with Machine Learning.

Import a support vector machine classifier:

from sklearn.svm import *

Train the SVM model:

clf= SVC(kernel='rbf')
clf.fit(Xdata, Ydata)

Print out the accuracy of the built model:

Score = clf.score(XdataT,YdataT...