Automated Security Testing Using The ZAP API. About Me My name is Michael Haselhurst. I work for Sage as a Test Analyst. This is the first OWASP meeting.

Slides:



Advertisements
Similar presentations
1 Websites – Are They or Are They Not a Necessity? Responses to New Consultants Questions.
Advertisements

Using Commtap Communication Targets and Activities Project.
Association of Registered Nurses of British Columbia Social Media Guide.
Conversion pages Get Set Up. The first impression ad is designed to peak your targets interest Your “cheese” is something that would benefit them so they.
Starter for 10 Unit 12: Twitter Transform IT SFT12_Twitter.
TWITTER BASICS GATEHOUSE NEWS & INTERACTIVE DIVISION.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
The OWASP Foundation Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under.
What children think about having a thyroid disorder: a small scale study By Shannon Davidson Age 10.
Social Media: FACEBOOK Kristin Martin Professional Development.
The OWASP Foundation AppSec DC Learning by Breaking A New Project for Insecure Web Apps Chuck Willis Technical Director MANDIANT
The OWASP Foundation Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under.
1 All in One Hosted Monitoring Solution. 2 Who is Monitis? Monitis was founded in 2005 by a team of seasoned entrepreneurs. These fed-up and frustrated.
Discussion examples Andrea Zhok.
E-Safety Quiz Keeping safe online! A guide for parents & children.
My English. Done by Olga Vasilchuk.. When I was 6 years old, I came to Hungary with my parents. I started learning English with my tutor before school.
Do’s and Don’t Of Web Design BY Julia Butterfield.
Anya Brookman. How to create a new message Unwanted messages Folders Messages you have sent to someone Logging out when you have finished sending.
Sage CRM Developers Course
Welcome to the Second Tutorial Welcome to the second part of this communication system website tutorial! This tutorial is for church planters. When you.
Presented by Chad Kafka This Month’s Topic: Wikispaces Advanced Today’s session is an introduction to what a WIKI is and how they can be used in education.
Michael Burnside Blog: Software Quality Assurance, Quality Engineering, and Web and Mobile Test.
Welcome to the wonderful world of……. . A Quick & Easy Guide.  What IS ?  A quick, easy and convenient way to send a letter to friends, family.
Two major things to Look for on the Internet  1. Predators. Predators  2. How to Target a PredatorHow to Target a Predator  3. How can Parents Minimize.
What’s Your Digital Marketing Strategy?. What is Digital Marketing? Computers Tablets Phones Social networks Traditional (Radio, TV) Ease of use.
Internet SafetyInternet Safety Danita RussellDanita Russell Intro.
Lecture 3 Title: Web blog By: Mr Hashem Alaidaros.
A centre of expertise in digital information managementwww.ukoln.ac.uk Getting it Right with Web 2.0 Ann Chapman UKOLN University of Bath Bath, UK UKOLN.
Chapter 1: The Internet and the WWW CIS 275—Web Application Development for Business I.
November 10,  Acceptable use  Internet Filtering  Social Web (MySpace, Facebook, etc.)  Cyberbullying  Plagiarism  Phishing.
INTRODUCTION TO WORDPRESS. About WordPress The free service that we will use from WordPress is often used as blogging software – very little knowledge.
Using Commtap Communication Targets and Activities Project.
Client Side Programming with JavaScript Why use client side programming? Web sides built on CGI programs can rapidly become overly complicated to maintain,
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation.
Tech Tip Write, Share, Revise, Compare Julie Thompson MEDT 7477.
Unit 12 Additional Evidence Charlotte Thompson. 1.1 I can describe what types of information are needed. Logo Idea 1 I do not want this logo to be my.
Assignment 2A Teaching and learning/researching technologies Group Presentation By Anne Gunson, Leana Anderson, Marisa Edwards and Kahlia Chapman-Hill.
Creating a Digital Teaching Portfolio ONLINE USING WEEBLY.
TST BOCES Arts in Education Twitter Chats #tstaie.
IT’S OUR FAVORITES!! Delicious: It’s What’s for Dinner.
Do This file can be found at
SHAPE THE WORLD. WEB DEVELOPMENT.
1. Wikis for Classes By Luis Avila 2 Why do we choose a wiki for ? It was tough as a solution for communicate with students and parents. It is a nice.
The Front Range’s Largest AppSec Conference is BACK February 18, 2016 Details & registration at Keynote by Jeremiah Grossman.
Google Apps and Tools for the Classroom
March 18, 2010 Social Knowledge Management in an Academic Research Environment: A Case Study Kimberly Silk, MLS Data Librarian.
Personal Branding. Objectives How do you see yourself? How do others see you? What is your personal brand?
QR Codes “Scan Your Way to Engagement” Pamala Heller Woodland High School – Henry County
Conversion pages Get Set Up. The 1 st rule to understand – 93% of website visitors will NOT take action on the first visit This holds true even if you.
What is a website? AcGeer Presents.... A website is a collection of Web pages, images, videos or other digital assets that is hosted on one or several.
© 2009 Ninian Solutions Ltd Collaboration & the Cloud Pauline Yau.
TechKnowlogy Conference August 2, 2011 Using GoogleDocs for Collaboration.
Church Web Hosting Services - Churchsquare.com
 We recommend this product for the e-commerce lovers who have an idea to start business with the E-commerce MLM Script. Our product has very good workflow.
Final Project By: Jessica Leopoldo “Schoology”.
Javascript worms By Benjamin Mossé SecPro
“A Day in the Life of SharePoint” Explaining SharePoint to End Users and Management Scott Shearer SharePoint Evangelist/Developer FlexPoint Technology.
One OSINT Tool to Rule Them All
Engage Your Audience with Cross Media Communications
Facebook Clone Script Social Network Script Open Source Social Network Script.
Digital Citizenship and You.
Use of Electronic and Internet advertising options
Building a Custom Gadget in OU Campus
Office365 Sway usage in a Learning and Corporate Environment
Who uses Care Opinion and Why?
Office365 Sway usage in a Learning and Corporate Environment
Technology For Tomorrow - Intro to Facebook
An Introduction to ZAP The OWASP Zed Attack Proxy
Election 2019: Engaging with Candidates
<Your Job Title> <Your Address>
Presentation transcript:

Automated Security Testing Using The ZAP API

About Me My name is Michael Haselhurst. I work for Sage as a Test Analyst. This is the first OWASP meeting I’ve attended, so it’s a bit scary to be standing at the front when I should be hiding at the back of the room. I’m not an expert in anything security related, although hopefully that won’t be too obvious tonight.

What Is ZAP? ZAP is an easy to use integrated penetration testing tool for finding vulnerabilities in web applications. It is ideal for developers and functional testers who are new to penetration testing. ZAP provides automated scanners as well as a set of tools that allow you to find security vulnerabilities manually.

What Is Sahi? Sahi is a tool used for the automation of web application testing. It comes in two flavours, a tasty free open source version, Sahi Open Source, and a commercial version named Sahi Pro. Sahi Script is Sahi's scripting language. It has the same syntax as Javascript except that variables need to be prefixed with a $ sign.

Problem As testers, we should be testing the security of the web applications that we support. Some of my colleagues had a few concerns… “I don’t know anything about security testing.” “I don’t have time to understand how to do security testing.” “How do I do security testing on this website?”

Solution Teaching my colleagues about security testing wouldn’t be a great idea. It would take a long time, plus, I don’t think I’m an authoritative source on the matter. An easier (lazier) option would be to create an automated test in Sahi to do the security testing for us!

How Will It Work? The automated script would work by… Getting the user to declare some simple variables, such as the URL of the site being targeted. Creating a new context. Adding this site to the context. Spidering this site. Performing an active scan of the site. Reporting any issues found.

Setting Up Sahi To allow Sahi to communicate with ZAP: Edit userdata.properties and set the host and the port as follows: ext.https.proxy.host=localhost ext.https.proxy.port=8080

Using The ZAP API

Writing The Script var $contextName = “Site2Target"; var $URL = “google.com"; var $prefix = "https"; var $children = “5"; var $newContext = " + $contextName; var $includeInContext = " + $contextName + "&regex=%5CQ" + $prefix + "%253A%252F%252F" + $URL + "%5CE.*"; var $spider = " + $prefix + "%3A%2F%2F" + $URL + "%2F&maxChildren=" + $children; var $activeScan = " + $prefix + "%3A%2F%2F" + $URL + "%2F&recurse=&inScopeOnly=true&scanPolicyName=&method=&postData="

Writing The Script _navigateTo($newContext); _navigateTo($includeInContext); _navigateTo($spider); var $spiderID = _getValue(_cell(1)); _navigateTo(" + $spiderID); while (_condition(_exists(_cell(1)("100")) != true)) _call(top.location.reload()); if (_condition(_exists(_cell(1)("100")))) { _navigateTo($activeScan); } var $ascanID = _getValue(_cell(1)); _navigateTo(" + $ascanID); while (_condition(_exists(_cell(1)("100")) != true)) _call(top.location.reload()); if (_condition(_exists(_cell(1)("100")))) { _navigateTo(" } _focusWindow(); _takePageScreenShot();

Results Some of my direct colleagues now use this script, as do some other teams within Sage’s UK business as well as some testing teams in other countries, such as in Sage Brazil. I wrote a document to accompany the script for people to learn a little bit more about how the script works and interacts with ZAP. If anyone would like a copy of this document then please get in touch.

Interested? If anything I’ve talked about interests you and you’d like more information (or even a copy of the script), then feel free to contact me via one of many communication methods: Facebook: facebook.com/haselhurst Twitter: twitter.com/haselhurst Anything Else: /haselhurst (probably).

Questions? Questions…