ft6 Motivation next step: perform the tests usually tedious, error prone work aided by a tool easily repeatable enter ft6 ft6



Similar documents
testing your IPv6-firewall with ft6

Testing IPv6 Firewalls with ft6

ip6tables testing ip6tables Oliver Eggert (Universität Potsdam) ft6: firewall tester for IPv6 Folie 1 von 12

Network Packet Analysis and Scapy Introduction

Internet Firewall CSIS Packet Filtering. Internet Firewall. Examples. Spring 2011 CSIS net15 1. Routers can implement packet filtering

Port Scanning and Vulnerability Assessment. ECE4893 Internetwork Security Georgia Institute of Technology

How To Prevent DoS and DDoS Attacks using Cyberoam

FIREWALL AND NAT Lecture 7a

Internet Firewall CSIS Internet Firewall. Spring 2012 CSIS net13 1. Firewalls. Stateless Packet Filtering

Firewalls. configuring a sophisticated GNU/Linux firewall involves understanding

How will the Migration from IPv4 to IPv6 Impact Voice and Visual Communication?

FIREWALLS. Firewall: isolates organization s internal net from larger Internet, allowing some packets to pass, blocking others

Scapy. On-the-fly Packet Generation by Dienstag, 10. Januar 12

Linux Networking: IP Packet Filter Firewalling

Information Security. Training

Open source framework for interactive data exploration in server based architecture

Course Title: Penetration Testing: Security Analysis

Linux Routers and Community Networks

and reporting Slavko Gajin

Firewall Implementation

Why use Scapy? Blue Team. Red Team. Test IDS/IPS Test Firewall Learn more about TCP/IP (down and dirty) Application response(fuzzing)

ICS 351: Today's plan. IP addresses Network Address Translation Dynamic Host Configuration Protocol Small Office / Home Office configuration

TCP Packet Tracing Part 1

LOOK BEHIND THE SCENES: WINDOWS SERVER 2012 FIREWALL AT VOLKSWAGEN AG

iscsi Security (Insecure SCSI) Presenter: Himanshu Dwivedi

This Technical Support Note shows the different options available in the Firewall menu of the ADTRAN OS Web GUI.

Customer Tips. Network Packet Analyzer Tips. for the user. Purpose. Introduction to Packet Capture. Xerox Multifunction Devices.

Network Security: Workshop. Dr. Anat Bremler-Barr. Assignment #2 Analyze dump files Solution Taken from

Application Note: AN00121 Using XMOS TCP/IP Library for UDP-based Networking

DNS (Domain Name System) is the system & protocol that translates domain names to IP addresses.

Configuring Personal Firewalls and Understanding IDS. Securing Networks Chapter 3 Part 2 of 4 CA M S Mehta, FCA

Firewalls, NAT and Intrusion Detection and Prevention Systems (IDS)

Implementing Network Address Translation and Port Redirection in epipe

Kepware Technologies OPC Quick Client Connectivity Guide

CONFIGURING TCP/IP ADDRESSING AND SECURITY

A Stateful Inspection of FireWall-1

IP Address: the per-network unique identifier used to find you on a network

+ iptables. packet filtering && firewall

Technical Support Information

Appendix A: Configuring Firewalls for a VPN Server Running Windows Server 2003

Firewalls and Intrusion Detection

OLD VULNERABILITIES IN NEW PROTOCOLS? HEADACHES ABOUT IPV6 FRAGMENTS

A Case for Overlays in DCN Virtualization Katherine Barabash, Rami Cohen, David Hadas, Vinit Jain, Renato Recio and Benny Rochwerger IBM

Agenda. Understanding of Firewall s definition and Categorization. Understanding of Firewall s Deployment Architectures

Security of IPv6 and DNSSEC for penetration testers

Host-based Intrusion Prevention on Windows and UNIX. Dr. Rich Murphey White Oak Labs

Building scalable IPSec infrastructure with MikroTik. IPSec, L2TP/IPSec, OSPF

What is a Firewall? A choke point of control and monitoring Interconnects networks with differing trust Imposes restrictions on network services

Network Penetration Testing and Ethical Hacking Scanning/Penetration Testing. SANS Security Sans Mentor: Daryl Fallin

Integration Guide. LogicNow MAXfocus

INLICHTINGEN DIENSTEN INLICHTINGEN DIENSTEN

CS155 - Firewalls. Simon Cooper <sc@sgi.com> CS155 Firewalls 22 May 2003

OpenFlow and Software Defined Networking presented by Greg Ferro. OpenFlow Functions and Flow Tables

Bit Chat: A Peer-to-Peer Instant Messenger

Internet Protocol: IP packet headers. vendredi 18 octobre 13

CSCE 465 Computer & Network Security

Project 2: Firewall Design (Phase I)

Firewall Firewall August, 2003

N-CAP Users Guide Everything You Need to Know About Using the Internet! How Firewalls Work

Stateful Firewalls. Hank and Foo

PTSv2 in pills: The Best First for Beginners who want to become Penetration Testers. Self-paced, online, flexible access

IP Filter/Firewall Setup

TheGreenBow IPsec VPN Client. Configuration Guide Cisco RV325 v1. Website: Contact:

EXPLORER. TFT Filter CONFIGURATION

Penetration Testing. What Is a Penetration Testing?

CSE331: Introduction to Networks and Security. Lecture 12 Fall 2006

IPv6 Security from point of view firewalls

Quantum Hyper- V plugin

CIT 480: Securing Computer Systems. Firewalls

Digital Forensics. Module 7 CS 996

Firewalls. Firewall types. Packet filter. Proxy server. linux, iptables-based Windows XP s built-in router device built-ins single TCP conversation

DESIGN OF A TOUCHLESS USER INTERFACE. Author: Javier Onielfa Belenguer Director: Francisco José Abad Cerdá

Network Security Management

Installing and Configuring Nessus by Nitesh Dhanjani

20-CS X Network Security Spring, An Introduction To. Network Security. Week 1. January 7

RSA Event Source Configuration Guide. McAfee Database Security

12. Firewalls Content

Network forensics 101 Network monitoring with Netflow, nfsen + nfdump

Software Defined Network (SDN)

Deploying HIDS Client to Windows Hosts

Internet Security Firewalls

Sage ERP Accpac Online

Sage 300 ERP Online. Mac Resource Guide. (Formerly Sage ERP Accpac Online) Updated June 1, Page 1

S-911 Bracelet Locator Protocol 1.0 Analyzer. User Manual

1 Data information is sent onto the network cable using which of the following? A Communication protocol B Data packet

Mobile IP Network Layer Lesson 02 TCP/IP Suite and IP Protocol

Netfilter. GNU/Linux Kernel version 2.4+ Setting up firewall to allow NIS and NFS traffic. January 2008

Penetration Testing 2014

Supporting Document Mandatory Technical Document. Evaluation Activities for Stateful Traffic Filter Firewalls cpp. February Version 1.

Overview - Using ADAMS With a Firewall

Policy Based Forwarding

A DHCP Primer. Dario Laverde, 2002 Dario Laverde

IDS / IPS. James E. Thiel S.W.A.T.

Overview - Using ADAMS With a Firewall

Firewall Introduction Several Types of Firewall. Cisco PIX Firewall

Chapter 11 Cloud Application Development

Socket = an interface connection between two (dissimilar) pipes. OS provides this API to connect applications to networks. home.comcast.

Network Forensics Network Traffic Analysis

Using ZeBeDee with Firebird to Encrypt and Compress Network Traffic

Network Security CS 192

Transcription:

ft6 Motivation next step: perform the tests usually tedious, error prone work aided by a tool easily repeatable enter ft6 Oliver Eggert (Universität Potsdam) ft6: firewall tester for IPv6 Folie 1 von 25

ft6 Agenda 1 overview 2 info on design and implementation 3 live demo 4 writing your own tests (optionally) Oliver Eggert (Universität Potsdam) ft6: firewall tester for IPv6 Folie 2 von 25

ft6 Design Goals easy to configure graphical user interface browse tests and results visual representation Oliver Eggert (Universität Potsdam) ft6: firewall tester for IPv6 Folie 3 von 25

ft6 Design Goals open-source (Creative Commons BY-NC-SA 3.0) can act as a framework for new tests easy to implement new tests Oliver Eggert (Universität Potsdam) ft6: firewall tester for IPv6 Folie 4 von 25

ft6 Details powered by python, PyQt and scapy works with Linux, Windows 7, OS X python: rapid developement, easily understandable PyQt: GUI-framework, available cross-platform http://www.riverbankcomputing.com/software/pyqt/intro scapy: great framework for network packet creation http://www.secdev.org/projects/scapy/ Oliver Eggert (Universität Potsdam) ft6: firewall tester for IPv6 Folie 5 von 25

ft6 Architecture Firewall Client (runs client.py) Server (runs server.py) ft6 is a client-server application requires machines on both sides of your firewall one open port place machines not more than one hop away from firewall Oliver Eggert (Universität Potsdam) ft6: firewall tester for IPv6 Folie 6 von 25

ft6 Running ft6 Firewall Client (runs client.py) Server (runs server.py) Client and Server exhange control messages Start / End / Results Oliver Eggert (Universität Potsdam) ft6: firewall tester for IPv6 Folie 7 von 25

ft6 Running ft6 Firewall Client (runs client.py) Server (runs server.py) Client sends packets Server sniffs Oliver Eggert (Universität Potsdam) ft6: firewall tester for IPv6 Folie 8 von 25

ft6 Running ft6 Firewall Client (runs client.py) Server (runs server.py) Client sends packets Server sniffs Oliver Eggert (Universität Potsdam) ft6: firewall tester for IPv6 Folie 9 von 25

ft6 Running ft6 Firewall Client (runs client.py) Server (runs server.py) Server sends back list of packets it recieved Client figures out what went missing and displays result Oliver Eggert (Universität Potsdam) ft6: firewall tester for IPv6 Folie 10 von 25

Handling Network Packets Oliver Eggert (Universität Potsdam) ft6: firewall tester for IPv6 Folie 11 von 25

ft6 packet creation with scapy handling network packets is usually messy binary protocols accessing individual flags invovles bitshifting or bitmasking sending and receiving is error-prone, too scapy does all that for you and is human readable. great TAB-completion Oliver Eggert (Universität Potsdam) ft6: firewall tester for IPv6 Folie 12 von 25

ft6 scapy demo Oliver Eggert (Universität Potsdam) ft6: firewall tester for IPv6 Folie 13 von 25

ft6 scapy demo Oliver Eggert (Universität Potsdam) ft6: firewall tester for IPv6 Folie 14 von 25

ft6 scapy demo Oliver Eggert (Universität Potsdam) ft6: firewall tester for IPv6 Folie 15 von 25

ft6 scapy demo Oliver Eggert (Universität Potsdam) ft6: firewall tester for IPv6 Folie 16 von 25

ft6 scapy demo Oliver Eggert (Universität Potsdam) ft6: firewall tester for IPv6 Folie 17 von 25

Live Demo Oliver Eggert (Universität Potsdam) ft6: firewall tester for IPv6 Folie 18 von 25

ft6 Writing your own test Example: build own test, to see if packets containing the string "randomword"can traverse the firewall. Requires four steps: 1 create a class for your test 2 implement the execute method 3 implement the evaluate method 4 register your test with the application (More detailed in ft6 s documentation) Oliver Eggert (Universität Potsdam) ft6: firewall tester for IPv6 Folie 19 von 25

ft6 Writing your own tests Step 1: Create a class for your test class TestRandomWord(Test): def init (self, id, name, description, test_settings, app): super(testrandomword, self). init (id, name, description, test_settings, app) Oliver Eggert (Universität Potsdam) ft6: firewall tester for IPv6 Folie 20 von 25

ft6 Writing your own tests Step 2: implement the execute method def execute(self): e = Ether(dst=self.test_settings.router_mac) ip = IPv6(dst=self.test_settings.dst, src=self.test_settings.src) udp= UDP(dport=self.test_settings.open_port, sport=12345) payload = "ipv6-qab"*128 packet = e/ip/udp/(payload + "randomword") sendp(packet) packet = e/ip/udp(payload + "someotherword") sendp(packet) Oliver Eggert (Universität Potsdam) ft6: firewall tester for IPv6 Folie 21 von 25

ft6 Writing your own tests Step 3: implement the evaluate method def evaluate(self, packets): results = [] found_random = False found_otherword = False # iterate over the packets, filter those that belong to the test for p in packets: tag = str(p.lastlayer()) if not "ipv6-qab" in tag: continue if "randomword" in tag: found_random = True if "someotherword" in tag: found_otherword = True Oliver Eggert (Universität Potsdam) ft6: firewall tester for IPv6 Folie 22 von 25

ft6 Writing your own tests Step 3: implement the evaluate method # evaluate the flags if found_random: results.append("success", "Your firewall forwarded a packet with a random word!") else: results.append("failure", "Your firewall dropped a packet with a random word!") if found_otherword: results.append("warning", "Your firewall forwarded a packet with some other word. That s very weird!") else: results.append("success", "Your firewall dropped a packet with some other word. Well done firewall!") return results Oliver Eggert (Universität Potsdam) ft6: firewall tester for IPv6 Folie 23 von 25

ft6 Writing your own tests Step 4: register your test # create test classes, store them in the dictionary # so they can later be called by their id ticmp = TestICMP(1, "ICMPv6 Filtering", "The ICMP Test", self.test_settings, app)... trandomword = TestRandomWord(42, "My Random Word Test", "Tests for Random Words", self.test_settings, app) self.tests = dict([ (ticmp.id, ticmp),..., (trandomword.id, trandomword)]) Oliver Eggert (Universität Potsdam) ft6: firewall tester for IPv6 Folie 24 von 25

ft6 future work ft6 is a work in progress lots of improvement could be done reducing the number of text fields better results more tests your thoughts: contact@idsv6.de ft6 is available at http://www.idsv6.de/downloads/ft6-2013-05-22.tar.gz Oliver Eggert (Universität Potsdam) ft6: firewall tester for IPv6 Folie 25 von 25