BwDDoS attack & defense project Report

download BwDDoS attack & defense project Report

of 44

Transcript of BwDDoS attack & defense project Report

  • 8/17/2019 BwDDoS attack & defense project Report

    1/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 1 

    1. INTRODUCTION

    Internet services are indispensable and yet, vulnerable to Denial of Service (DoS)

    attacks, and especially to Distributed Denial of Service (DDoS) attacks. DDoS attacks,

    which many attacking agents cooperate to cause excessive load to a victim host, service,

    or network. DDoS attacks have increased in importance, number and strength over the

    years, becoming a major problem. Furthermore, significant growth in size of attacks

    and in their sophistication is reported. BW-DDoS employed relatively crude, inefficient,

    ‘brute force’ mechanisms; future attacks may be significantly more effective, and hence

    much more harmful. To meet the increasing threats, more advanced defenses should be

    deployed. This may involve some proposed mechanisms (not yet deployed), as well as

    new approaches.

    A “denial-of-service” attack is characterized by an explicit attempt by attackers to

     prevent legitimate users of a service from using that service. Examples include attempts

    to “flood” a network, thereby preventing legitimate network traffic attempts to disrupt

    connections between two machines, thereby preventing access to a service attempts to

     prevent a particular individual from accessing a service attempts to disrupt service to a

    specific system or person Denial-of-service attacks come in a variety of forms and aim

    at a variety of services. There are three basic types of attack: consumption of scarce,

    limited, or non-renewable resources by sending illegitimate traffic there by denying

    service to the legitimate users.

    BW-DDoS Attacks

    BW-DDoS attacks are usually generated from a large number of compromised

    computers (zombies or pup- pets). According to recent surveys, BW-DDoS attacks are

    the most frequently used DoS method.1,2 Most BW- DDoS attacks use a few simpleideas, mainly flooding (many agents sending packets at the maximal rate) and reflection

    (sending requests to an uncompromised server with a spoofed sender IP address,

    causing the server to send longer response packets to the victim). Table 1 sum- marizes

    the different attacks we discuss in this article.

    Flooding attacks have created significant damage, because attackers were able to use a

    sufficient number of agents to cause massive bandwidth consumption leading to packet

    loss. However, it seems that, gradually, attackers are adopting more complex and

    effective attacks. For example, the largest attacks reported in recent years consisted of

  • 8/17/2019 BwDDoS attack & defense project Report

    2/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 2 

    100 Gbps in 2010, 60 Gbps in 2011 and 2012, and 300 Gbps in 2013.2,3 The 2010,

    2011, and 2013 attacks were DNS reflection and amplification attacks. In 2012, the

    largest attack targeted the DNS infrastructure. Researchers have discovered even more

    effective BW-DDoS techniques, for instance, with higher amplification factors.

    Inducing a significant percentage of packet loss is no easy task. Generally, packet

    delivery probability is the ratio between the available bottleneck link bandwidth and the

    attack rate. However, as Figure 1 shows, congestion or (small) packet loss probability

    causes dramatic performance degradation in TCP connections. This performance

    degradation is due to TCP’s congestion control mechanism, which drastically reduces

    TCP’s sending rate upon packet loss. Thus, BW-DDoS damage might be worse than the

    mere consumed bandwidth.

    1.1 NEED FOR THE NEW SYSTEM

    To identify Bandwidth Distributed Denial of Service (BW-DDoS) attacks, which

    disrupt the operation of the network infrastructure by causing congestion or an

    excessive amount of traffic. BW-DDoS attacks can cause loss or severe degradation of

    connectivity, between the Internet and victim networks or even whole autonomous

    systems, possibly disconnecting whole regions of the Internet.

    1.2 DETAILED PROBLEM DEFINITION

    The recent occurrences of DDoS attacks make it an important issue to deal with. Of the

    various technologies available for its prevention, network filtering is implementable,

    effective and reliable method. We thus implement filtering methods to avoid BwDDoS

    attacks.

    1.3 EXISTING SYSTEM

    A number of IP traceback approaches have been suggested to identify attackers and

    there are two major methods for IP traceback, the probabilistic packet marking (PPM)

    and the deterministic packet marking (DPM). Both of these strategies require routers to

    inject marks into individual packets. The DPM strategy requires all the Internet routers

    to be updated for packet marking. Moreover, the DPM mechanism poses an

    extraordinary challenge on storage for packet logging for routers. Further, both PPM

    and DPM are vulnerable to hacking, which is referred to as packet pollution.

  • 8/17/2019 BwDDoS attack & defense project Report

    3/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 3 

    Disadvantages

      PPM strategy can only operate in a local range of the Internet (ISP network), where

    the defender has the authority to manage. ISP networks are generally quite small,

    and cannot traceback to the attack sources located out of the ISP network.

      Because of the vulnerability of the original design of the Internet, we may not be

    able to find the actual hackers at present.

    1.4 PROPOSED SYSTEM

    BW-DDoS attack, where the attacker sends as many packets as possible directly to the

    victim, or from an attacker controlled machines called ‘zombies’ or ‘bots’.The simplest

    scenario is one in which the attacker is sending multiple packets using a connectionless

     protocol such as UDP. In UDP flood attacks, the attacker commonly has a user-mode

    executable on the zombie machine which opens a standard UDP sockets and sends

    many UDP packets towards the victim.for UDP floods, and many other BW-DDoS

    attacks, the attacking agents must have zombies, i.e., hosts running adversary-controlled

    malware, allowing the malware to use the standard TCP/IP sockets.The first attempts to

    avoid detection, and the second tries to exploit legitimate protocol behavior and cause

    legitimate clients/server to excessively misuse their bandwidth against the attacked

    victim.

    Network-Level Defense Mechanisms

    BW-DDoS defense mechanisms focus on several types of schemes, including detecting,

    filtering, absorbing, and cooperating. We surveyed defense schemes of both deployed

    and academically proposed mechanisms. Here, we discuss different defense

    mechanisms, their deployment location in the network, and the infrastructure adaptation

    and type of cooperation they require, if any. Note that many defense mechanisms rely

    on the ability to differentiate between attacks and legitimate flows; however, in this

    article, we don’t discuss differentiation techniques as they have been surveyed before.11 

    Table 3 summarizes the defense mechanisms.

    Response Mechanism

    We consider four types of defense mechanisms: filtering, rate limiting, detouring and

    absorbing, and breakthrough.

    Filtering. Assuming the offending flows are identified, they can be filtered out.

    Filtering can take place in various network locations: close to the destination, at the

  • 8/17/2019 BwDDoS attack & defense project Report

    4/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 4 

    core (that is, in routers), or close to the source. Usually, to be effective in BW-DDoS

    mitigation, filtering must occur before the congested link, because the victim usually

    isn’t in a position to hold back the attack.One example of filtering is preventing source

    IP spoofing. RFCs 2827 and 3704 recommend that ISPs employ ingress filtering andfilter packets with IP addresses external to that network. Many ISPs do this; however,

    approximately 15 percent of Internet addresses can still send spoofed packets.2,6 LOT

    (Lightweight Opportunistic Tunneling) is another solution to mitigate spoofing by

    opportunistically establishing tunnels between gateways and adding a random tag to

    tunneled packets, making it difficult for attackers to guess the correct tag value.12 

    Packets not carrying the correct tag are discarded, preventing the spoofing of packets

    that originate from incorrect networks.

    Additional filtering mechanisms include access control lists (ACLs), Remote-Triggered

    Blackhole (RTBH), and firewalls. ACLs are router mechanisms that allow or deny

    matching flows. They’re often configured manually; however, some intrusion

     prevention systems can configure ACLs automatically. Each ACL entry takes a

    significant amount of memory and some time to process, so routers should limit ACL

    rules in both number and processing time. Memory and CPU use increase as more ACL

    entries are used, which might be an additional target for DDoS — not necessarily bandwidth based.

    RTBH (RFC 5635) uses the router’s forwarding tables such that all traffic to the victim

    or from attacking sources is forwarded to a “blackhole,” completely denying access to

    the target. RTBH uses a small amount of memory and its processing is faster than ACL.

    However, RTBH filtering is significantly more aggressive and might help an attacker

    disconnect its victim from its sources and/or destinations, thereby potentially achieving

    the goal with little resources.

    Rate limiting. In contrast to completely blocking the attacking flows, rate-limiting

    schemes let the offending flows transmit their typical rate or obey some other limit.

    Researchers proposed rate limiting at routers in several forms, including capabilities,

     packet tagging, and scheduling based. Capabilities are tokens issued by the destination

    (server) to the source (client). Capabilities inform the source, and more importantly the

    routers en route, that the destination is willing to accept traffic from this source. The

    issued capabilities are attached to packets the source sends, allowing routers en route to

  • 8/17/2019 BwDDoS attack & defense project Report

    5/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 5 

    identify and prioritize approved flows. Note that packets without capabilities aren’t

    filtered; instead, they get lower delivery probability, which effectively limits their rate

    during attack periods. SIFF (Stateless Internet Flow Filter) proposed stateless

    capabilities wherein capabilities are calculated using (keyed) hash.13

     Routers check and prioritize flows carrying verified capabilities. TVA (traffic validation architecture)

    keeps a (small) state in routers and lets servers request specific restrictions per flow. 

    Capabilities based solutions assume that victims will authorize only legitimate sources

    and won’t cooperate with attackers. Deployment of capabilities-based solutions requires

    changes to both end hosts and routers.

    Detouring and Absorbing.

    Absorption overlays are overprovisioned with bandwidth and can absorb BW-DDoS

    attacks. They construct a perimeter around the victim server that only selected nodes

    can penetrate; unauthorized traffic is filtered. Cloud (practical) or overlay (academic)

    solutions route traffic via the cloud or overlay, which “scrubs” the attack flows.

    Absorption clouds and overlays were designed specifically to mitigate BW-DDoS and

    were investigated in several works, such as SOS (Secure Overlay Services). 18 Note that

    overlay solutions usually introduce new protocols and hence typically require updating

    host software. Other solutions, mainly those deployed, make no protocol 

    Breakthrough. The final category of BW-DDoS mechanisms are those that use

    aggressive clients to break through the congestion. Aggressive clients use TCPfriendly

     protocols as long as they can sustain enough goodput. When TCP’s goodput drops

     below some threshold, aggressive clients commence using protocols without congestion

    control, such as UDP, thereby exploiting the real network delivery probability. An

    important design goal of aggressive clients is to avoid self-generated BW-DDoS

    attacks.

    Defense Mechanism Location

    The various defense mechanisms can be deployed at different network locations. Some

    are deployed close to the destination, that is, near the victim. Note that defense

    mechanisms close to the destination might get a good idea about some of the attack’s

     properties, but they might not be well-positioned to mitigate BW-DDoS attacks because

    many packets are discarded near the victim due to the exhausted resources. Hence,

    many defense mechanisms try to mitigate attacks closer to the source. Router or

  • 8/17/2019 BwDDoS attack & defense project Report

    6/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 6 

     backbone-based defense mechanisms are usually located near an overprovisioned link

    and try to ensure that traffic reaching the victim originates mostly from legitimate

    sources. Similarly, source-based defense mechanisms try to prevent attackers from

    sending excessive traffic, especially during BW-DDoS attacks.

    Additional deployment locations are “in the cloud” and overlay networks. In such

    solutions, traffic is routed via an overprovisioned cloud service that scrubs the attacking

    flows and forwards only legitimate traffic to the victim.

    Advantages

      Bandwidth based identification

     

    Easily identifies attacker  High attack detection

  • 8/17/2019 BwDDoS attack & defense project Report

    7/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 7 

    2. ANALYSIS

    System analysis is a general term that refers to an orderly, structured process for

    identifying and solving problems. We call system analysis process lifecycle

    methodology, since it relates to four significant phases in the lifecycle of all business

    information system. The life cycle is divided into four phases.

      Study Phase

      Design Phase

      Development Phase

      Implementation Phase

    Analysis implies the process of breaking something into parts so that the whole may be

    understood. The definition of the system analysis includes not only the process of

    analysis but also that of synthesis, which implies the process of putting together to form

    a new whole.

    All activities associated with each life cycle phase must be performed, managed and

    documented. Hence we define system analysis as the performance, management,

    documentation of the activities related to the life cycle phases of a computer-based

     business system. In the study phase a detailed study of the project is made and clear picture of the project is in mind. In the design phase the designing of the input, output

    and table designs are made. Development phase is where the physical designing of the

    input-output screens and coding of the system is done. System implementation actually

    implements the system by making necessary testing.

    2.1 FEASIBILITY STUDY

    The feasibility of a project can be ascertained in terms of technical factors, economicfactors, or both. A feasibility study is documented with a report showing all the

    ramifications of the project. In project finance, the pre-financing work (sometimes

    referred to as due diligence) is to make sure there is no "dry rot" in the project and to

    identify project risks ensuring they can be mitigated and managed in addition to

    ascertaining "debt service" capability.

  • 8/17/2019 BwDDoS attack & defense project Report

    8/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 8 

    Technical Feasibility:There are a number of technical issues, which are generally

    raised during the feasibility stage of the investigation. A study of function, performance

    and constraints gave me the ability to achieve acceptable system.The software required

    for this system is: 

    JDK 1.5 

    Financial Feasibility:

    The analysis raises financial and economic questions during the preliminary

    investigation to estimate the following: 

      The cost to conduct a full systems investigation.

     

    The cost of hardware and software for the class of application of

    the project being considered.

    To be judged feasible, a proposal for the specific project must pass all these

    tests, otherwise it is not considered as a feasible project. I gathered the details regarding

    the financial aspects incorporated in the system to make it cost efficient.

    Operational Feasibility.

    Suppose for a moment that technical and economic resources are both judged adequate.

    The systems analyst must still consider the operational feasibility of the requested

     project. Operational feasibility is dependent on human resources available for the

     project and involves projecting whether the system will operate and be used once it is

    installed. If users are virtually wed to the present system, see no problems with it, and

    generally are not involved in requesting a new system, resistance to implementing the

    new system will be strong. Chances for it ever becoming operational are low.

    2.2 PROJECT MANAGEMENT

      Construction of normal Dataset

      Local Data Collection

      Training normal data using cluster mechanism

     

    Testing Phase

  • 8/17/2019 BwDDoS attack & defense project Report

    9/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 9 

    2.2.1 Construction of normal Dataset

    The data obtained from the audit data sources mostly contains local routing information,

    data and control information from MAC and routing layers along with other traffic

    statistics. The training of data may entail modelling the allotment of a given set of

    training points or characteristic network traffic samples.

    2.2.2 Local Data Collection

    A normal profile is an aggregated rule set of multiple training data segments. New and

    updated detection rules across ad-hoc networks are obtained from normal profile. The

    normal profile consists of normal behaviour patterns that are computed using trace data

    from a training process where all activities are normal. During testing process, normal

    and abnormal activities are processed and any deviations from the normal profiles are

    recorded.

    2.2.3 Training normal data using cluster mechanism

    It calculates the number of points near each point in the feature space. In fixed width

    clustering technique, set of clusters are formed in which each cluster has fixed radius

    also known as cluster width in the feature space.

    2.2.4 Testing Phase

    The testing phase takes place by comparing each new traffic samples with the cluster set

    to determine the anonymity. The distance between a new traffic sample point and each

    cluster centroid is calculated. If the distance from the test point s to the centroid of its

    nearest cluster is less than cluster width parameter w, then the traffic sample shares the

    label as either normal or anomalous of its nearest cluster. If the distance from s to the

    nearest cluster is greater than w, then s lies in less dense region of the feature space, and

    is labelled as anomalous.

    2.3 REQUIREMENT ANALYSIS

    Requirements analysis in systems engineering and software engineering,

    encompasses those tasks that go into determining the needs or conditions to meet for a

    new or altered product or project, taking account of the possibly

    conflicting requirements of the various stakeholders, analysing, documenting, validating

    and managing software or system requirements. Requirements analysis is critical to the

  • 8/17/2019 BwDDoS attack & defense project Report

    10/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 10 

    success of a systems or software project. The requirements should be documented,

    actionable, measurable, testable, traceable, related to identified business needs or

    opportunities, and defined to a level of detail sufficient for system design. Requirements

    analysis in systems engineering and software engineering, encompasses those tasks thatgo into determining the needs or conditions to meet for a new or altered product or

     project, taking account of the possibly conflicting requirements of the

    various stakeholders, analyzing, documenting, validating and managing software or

    system requirements. Requirements analysis is critical to the success of a systems or

    software project. The requirements should be documented, actionable, measurable,

    testable, traceable, related to identified business needs or opportunities, and defined to a

    level of detail sufficient for system design.

  • 8/17/2019 BwDDoS attack & defense project Report

    11/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 11 

    3.  DESIGN

    3.1 INPUT DESIGN

    Input design converts user-oriented inputs to computer-based format, which requires

    careful attention. The collection of input data is the most expensive part of the system in

    terms of the equipment used and the number of people involved. In input design, data is

    accepted for computer processing and input to the system is done through mapping via

    some map support or links.Inaccurate input data is the most common cause of errors in

    data processing. The input screens need to be designed very carefully and logically. A

    set of menus is provided which help for better application navigation. While entering

    data in the input forms, proper validation checks are done and messages will be

    generated by the system if incorrect data has been entered.

    3.2 OUTPUT DESIGN

    Outputs are the most important and direct source of information to the user and to the

    department. Intelligent output design will improve the systems relationship with the

    user and help much in decision-making. Outputs are also used to provide a permanent

    hard copy of the results for later uses. The forms used in the system are shown in the

    appendix. The Output Design is another very important phase. The outputs are mainly

    used to communicate with a user, processing the input data given by the user etc. A

    quality output is one, which meets the requirements of the end user and presents the

    information clearly. In any system results of processing are communicated to the users

    and to other through outputs. In the Output design it is determined how the information

    is to be displayed for immediate need and also hardcopy out. Efficient, intelligible

    output design should improve the system’s relationship with the user and the help in

    decision making.

    3.3 DATA FLOW DIAGRAM

    Data Flow Diagrams represent one of the most ingenious tools used for structured

    analysis. It has the purpose of clarifying system requirements and identifying major

    transformations that will become programs in system design. It is the major starting

     point in the design phase that functionally decomposes the requirements specifications

  • 8/17/2019 BwDDoS attack & defense project Report

    12/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 12 

    down to the lowest level of detail. In the normal convention a DFD has four major

    symbols. 

    Symbols used in DFD are:

    Square, this defines source or destination of data.

    Arrow, which shows data flow

    Circle, which represents a process that transforms

    incoming data into outgoing flow

    Open rectangle, which shows a data store

    Level 0

    Level 1

  • 8/17/2019 BwDDoS attack & defense project Report

    13/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 13 

    Level 2

    Level 3

  • 8/17/2019 BwDDoS attack & defense project Report

    14/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 14 

    4. SYSTEM MODELLING

    4.1 UML DIAGRAM

  • 8/17/2019 BwDDoS attack & defense project Report

    15/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 15 

    5. CODING

    Coding is the software activity where the detailed design specification is implemented

    as source code. Coding is the lowest level of abstraction for the software development

     process. It is the last stage in decomposition of the software requirements where module

    specifications are translated into a programming language.

    Typical tasks for Coding

      Traceability analyses

      Source Code to Design Specification(and vice versa)

      Test Cases to Source Code and to Design Specification

     

    Source Code and Source Code Document Evaluation

      Source Code Interface Analysis

      Test Procedure and Test Case Generation

    5.1 PROGRAMMING LANGUAGE USED

    JAVA 

    Java is an object-oriented multithread programming languages .It is designed to be

    small, simple and portable across different platforms as well as operating systems.

    FEATURES OF JAVA

    Platform Independence 

    The Write-Once-Run-Anywhere  ideal has not been achieved (tuning for different

     platforms usually required), but closer than with other languages.

    Object Oriented 

    Object oriented throughout - no coding outside of class definitions, including main().

      An extensive class library available in the core language packages.

    Compiler/Interpreter Combo 

      Code is compiled to byte codes that are interpreted by a Java virtual machines

    (JVM).

  • 8/17/2019 BwDDoS attack & defense project Report

    16/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 16 

      This provides portability to any machine for which a virtual machine has been

    written.

     

    The two steps of compilation and interpretation allow for extensive code

    checking and improved security.

    Robust 

      Exception handling built-in, strong type checking (that is, all data must be

    declared an explicit type), local variables must be initialized.

    Several features of C & C++ eliminated: 

     

     No memory pointers

       No preprocessor

      Array index limit checking

    Automatic Memory Management 

     

    Automatic garbage collection - memory management handled by JVM.

    Security

     

     No memory pointers

      Programs run inside the virtual machine sandbox.

      Array index limit checking

     

    Code pathologies reduced by

     Byte code verifier  - checks classes after loading

    o  Class loader  - confines objects to unique namespaces. Prevents loading a

    hacked "java.lang.SecurityManager" class, for example.

    o  Security manager - determines what resources a class can access such as

    reading and writing to the local disk.

    Dynamic Binding 

      The linking of data and methods to where they are located is done at run-time.

     

     New classes can be loaded while a program is running. Linking is done on the

     fly.

  • 8/17/2019 BwDDoS attack & defense project Report

    17/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 17 

      Even if libraries are recompiled, there is no need to recompile code that uses

    classes in those libraries.

     

    This differs from C++, which uses static binding. This can result in  fragile 

    classes for cases where linked code is changed and memory pointers then point

    to the wrong addresses.

    Good Performance 

      Interpretation of byte codes slowed performance in early versions, but advanced

    virtual machines with adaptive and just-in-time compilation and other

    techniques now typically provide performance up to 50% to 100% the speed of

    C++ programs.

    Threading

       Lightweight   processes, called threads, can easily be spun off to perform

    multiprocessing.

      Can take advantage of multiprocessors where available

      Great for multimedia displays.

    Built-in Networking 

      Java was designed with networking in mind and comes with many classes to

    develop sophisticated Internet communications.

    5.2 CODES

    Client

    package ui;

    import java.awt.Dimension;

    import java.awt.event.ActionEvent;

    import java.awt.event.ActionListener;

    import java.awt.event.WindowEvent;

    import java.awt.event.WindowListener;

    import java.io.IOException;

    import java.io.ObjectOutputStream;

  • 8/17/2019 BwDDoS attack & defense project Report

    18/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 18 

    import java.net.InetAddress;

    import java.net.UnknownHostException;

    import java.util.Iterator;

    import java.util.Map.Entry;

    import java.util.Set;

    import java.util.TreeMap;

    import java.util.Vector;

    import javax.swing.JButton;

    import javax.swing.JFrame;

    import javax.swing.JLabel;

    import javax.swing.JOptionPane;

    import javax.swing.JScrollPane;

    import javax.swing.JTable;

    import javax.swing.JTextArea;

    import javax.swing.JTextField;

    import javax.swing.UIManager;

    import javax.swing.UIManager.LookAndFeelInfo;

    import javax.swing.UnsupportedLookAndFeelException;

    import javax.swing.table.DefaultTableModel;

    import logic.Multicst;

    import logic.Receiver;

    import logic.SocketListener;

    import support.Constants;

    import support.SocketConnection;

    import support.Utils;

    import voc.SearchVO;

    public class ClientForm implements ActionListener,WindowListener

    {

    SocketListener socketListener;

    private String nodeName = "";

    private JFrame jFrame;

    private JTextField jTextField;

    private JButton jButtonSend;

    public JTextArea jTextAreaRes;

  • 8/17/2019 BwDDoS attack & defense project Report

    19/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 19 

    private JScrollPane jScrollPane;

    private String port;

    private String ipAddress;

    private String msg = "";

    private Multicst multicst;

    Receiver receiver;

    private JButton jButtonSearch;

    private JTable jTableRouting;

    private DefaultTableModel modelRouting;

    JScrollPane jScrollPane2;

    JLabel jLabel3;

    Vector routInfo = new Vector();

    SocketConnection socketConnection = new

    SocketConnection();

    public ClientForm() {

    try {

    for (LookAndFeelInfo info :

    UIManager.getInstalledLookAndFeels()) {

    if ("Nimbus".equals(info.getName())) {

    UIManager.setLookAndFeel(info.getClassName());

    break;

    }

    }

    } catch (UnsupportedLookAndFeelException e) {

    // handle exception

    } catch (ClassNotFoundException e) {

    // handle exception

    } catch (InstantiationException e) {

    // handle exception

    } catch (IllegalAccessException e) {

    // handle exception

    }

    nodeName = Utils.NodeName(Constants.TYPE_CLIENT);

    port = Utils.generatePortNo();

  • 8/17/2019 BwDDoS attack & defense project Report

    20/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 20 

    socketListener = new SocketListener(port, this);

    try {

    ipAddress =

    InetAddress.getLocalHost().getHostAddress();

    } catch (UnknownHostException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    }

    receiver = new Receiver(this, this.nodeName);

    multicst = new Multicst(Constants.MULTICAST_NEI +

    this.nodeName + ":"

    + port + ":" + ipAddress,

    Constants.INET_ADDRESS_NEIGHBOR,

    Constants.MULTICAST_NEI);

    }

    public void designForm() {

    jFrame = new JFrame(nodeName);

    jFrame.setLayout(null);

    jFrame.setVisible(true);

    // jFrame.setSize(700, 700);

    /* Search Query */

    JLabel jLabel = new JLabel("Search :");

    jLabel.setBounds(10, 30, 150, 40);

    jFrame.add(jLabel);

    jTextField = new JTextField();

    jTextField.setBounds(10, 80, 150, 40);

    jFrame.add(jTextField);

    jButtonSend = new JButton("Send");

    jButtonSend.setBounds(10, 130, 100, 40);

    jButtonSend.addActionListener(this);

    jButtonSearch = new JButton("Search Router");

    jButtonSearch.setBounds(140, 130, 140, 40);

    jButtonSearch.addActionListener(this);

    jFrame.add(jButtonSearch);

    jFrame.add(jButtonSend);

  • 8/17/2019 BwDDoS attack & defense project Report

    21/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 21 

    /* Response */

    JLabel jLabel2 = new JLabel("Response :");

    jLabel2.setBounds(20, 180, 100, 40);

    jFrame.add(jLabel2);

    jTextAreaRes = new JTextArea();

    jScrollPane = new JScrollPane(jTextAreaRes);

    jScrollPane.setBounds(20, 230, 660, 400);

    jFrame.add(jScrollPane);

    /* Routing Table */

    jLabel3 = new JLabel("Routing Info :");

    jLabel3.setBounds(320, 30, 150, 40);

    jLabel3.setVisible(false);

    modelRouting = new

    DefaultTableModel(Constants.routerInfo, 0);

    jTableRouting = new JTable(modelRouting);

    jScrollPane2 = new JScrollPane(jTableRouting);

    jScrollPane2.setVisible(false);

    jScrollPane2.setBounds(320, 70, 300, 100);

    jFrame.add(jLabel3);

    jFrame.add(jScrollPane2);

    screenCenter();

    }

    public void screenCenter() {

    Dimension dim = jFrame.getToolkit().getScreenSize();

    int screenWidth = dim.width;

    int screenHeight = dim.height;

    int frameWidth = screenWidth / 3;

    int frameHeight = screenHeight / 3;

    jFrame.setSize(700, 700);

    jFrame.setLocation((screenWidth - frameWidth) / 2,

    (screenHeight - frameHeight) / 2);

    }

    public static void main(String[] args) {

  • 8/17/2019 BwDDoS attack & defense project Report

    22/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 22 

    ClientForm clientForm = new ClientForm();

    clientForm.designForm();

    }

    @Override

    public void actionPerformed(ActionEvent e) {

    // TODO Auto-generated method stub

    if (e.getSource() == jButtonSearch) {

    modelRouting.setRowCount(0);

    jTextAreaRes.setText("");

    // modelRouting.r

    jTableRouting = new JTable(modelRouting);

    jScrollPane2.setVisible(false);

    jLabel3.setVisible(false);

    new JProgressBarForm().designForm(jFrame, this);

    TreeMap nodeConfig =

    receiver.nodeConfig;

    Set set =

    nodeConfig.entrySet();

    Iterator iter =

    set.iterator();

    while (iter.hasNext()) {

    Entry mapEntry =

    iter.next();

    String nameTmp = mapEntry.getKey();

    String nameConfig = mapEntry.getValue();

    if

    (nameTmp.contains(Constants.TYPE_ROUTER)) {

    routInfo.add(nameTmp);

    String[] nameInfo =

    nameConfig.split(":");

    routInfo.add(nameInfo[0]);

    routInfo.add(nameInfo[1]);

    modelRouting.addRow(routInfo);

    // modelRouting.

  • 8/17/2019 BwDDoS attack & defense project Report

    23/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 23 

    }

    }

    // jScrollPane2.setVisible(true);

    // jLabel3.setVisible(true);

    } else if (e.getSource() == jButtonSend) {

    if (routInfo.size() != 0) {

    SearchVO searchVO = new SearchVO();

    searchVO.setQuery(jTextField.getText());

    searchVO.setClientName(this.nodeName);

    searchVO.setClientPort(port);

    searchVO.setClientIp(ipAddress);

    searchVO.setTo(Constants.TYPE_ROUTER);

    String searchKey = jTextField.getText();

    ObjectOutputStream oo =

    socketConnection.SocketSend(

    routInfo.get(1),

    routInfo.get(2));

    try {

    oo.writeObject(searchVO);

    oo.close();

    } catch (IOException e1) {

    // TODO Auto-generated catch block

    e1.printStackTrace();

    }

    } else {

    JOptionPane.showMessageDialog(null,

    "Retrieve Router Info !!");

    }

    }

    }

    public void windowClosing(WindowEvent e)

    {

    System.exit(0);

  • 8/17/2019 BwDDoS attack & defense project Report

    24/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 24 

    }

    public void windowClosed(WindowEvent e)

    {}

    public void windowOpened(WindowEvent e)

    {}

    public void windowActivated(WindowEvent e)

    {}

    public void windowDeactivated(WindowEvent e)

    {}

    public void windowIconified(WindowEvent e)

    {}

    public void windowDeiconified(WindowEvent e)

    {}

    }

    Router

    package ui;

    import java.awt.BorderLayout;

    import java.awt.Dimension;

    import java.awt.event.WindowEvent;

    import java.awt.event.WindowListener;

    import java.net.InetAddress;

    import java.net.UnknownHostException;

    import javax.swing.JButton;

    import javax.swing.JFrame;

    import javax.swing.JTabbedPane;

    import javax.swing.UIManager;

    import javax.swing.UnsupportedLookAndFeelException;

    import javax.swing.UIManager.LookAndFeelInfo;

    import logic.Multicst;

    import logic.Receiver;

    import logic.SocketListener;

  • 8/17/2019 BwDDoS attack & defense project Report

    25/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 25 

    import support.Constants;

    import support.Utils;

    public class RouterTabForm implements WindowListener{

    public String nodeName = "";

    public String portNo;

    public String ipAddress;

    public Receiver receiver;

    private final Multicst multicst;

    SocketListener socketListener;

    public RouterForm router;

    JFrame jFrame;

    public RouterTableForm routerTableForm;

    public String[] config;

    public RouterTabForm() throws UnknownHostException {

    try {

    for (LookAndFeelInfo info :

    UIManager.getInstalledLookAndFeels()) {

    if ("Nimbus".equals(info.getName())) {

    UIManager.setLookAndFeel(info.getClassName());

    break;

    }

    }

    } catch (UnsupportedLookAndFeelException e) {

    // handle exception

    } catch (ClassNotFoundException e) {

    // handle exception

    } catch (InstantiationException e) {

    // handle exception

    } catch (IllegalAccessException e) {

    // handle exception

    }

    config = Utils.getProperties();

    nodeName = Utils.NodeName(Constants.TYPE_ROUTER);

  • 8/17/2019 BwDDoS attack & defense project Report

    26/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 26 

    portNo = Utils.generatePortNo();

    ipAddress =

    InetAddress.getLocalHost().getHostAddress();

    multicst = new Multicst(Constants.MULTICAST_NEI +

    nodeName + ":"+ portNo + ":" + ipAddress,

    Constants.INET_ADDRESS_NEIGHBOR,Constants.MULTICAST_NEI);

    receiver = new Receiver(this, nodeName);

    socketListener = new SocketListener(portNo, this);

    router = new RouterForm(multicst, receiver, this);

    routerTableForm = new RouterTableForm();

    }

    public void Design() {

    try {

    jFrame = new JFrame(nodeName);

    JTabbedPane tab = new JTabbedPane();

    jFrame.add(tab, BorderLayout.CENTER);

    JButton button = new JButton("1");

    tab.add(nodeName, router);

    button = new JButton("2");

    tab.add("Routing Table", routerTableForm);

    jFrame.add(tab);

    jFrame.setVisible(true);

    screenCenter();

    } catch (Exception e) {

    e.printStackTrace();

    }

    }

    public void screenCenter() {

    Dimension dim = jFrame.getToolkit().getScreenSize();

    int screenWidth = dim.width;

    int screenHeight = dim.height;

    int frameWidth = screenWidth / 3;

    int frameHeight = screenHeight / 3;

    jFrame.setSize(700, 700);

  • 8/17/2019 BwDDoS attack & defense project Report

    27/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 27 

    jFrame.setLocation((screenWidth - frameWidth) / 2,

    (screenHeight - frameHeight) / 2);

    }

    public static void main(String[] args) {

    try {

    RouterTabForm routerTabForm = new

    RouterTabForm();

    routerTabForm.Design();

    } catch (Exception e) {

    e.printStackTrace();

    }

    }

    @Override

    public void windowOpened(WindowEvent e) {

    // throw new UnsupportedOperationException("Not supported

    yet."); //To change body of generated methods, choose Tools |

    Templates.

    }

    @Override

    public void windowClosing(WindowEvent e) {

    System.exit(0);//throw new

    UnsupportedOperationException("Not supported yet."); //To change

    body of generated methods, choose Tools | Templates.

    }

    @Override

    public void windowClosed(WindowEvent e) {

    //throw new UnsupportedOperationException("Not supported

    yet."); //To change body of generated methods, choose Tools |

    Templates.

    }

    @Override

  • 8/17/2019 BwDDoS attack & defense project Report

    28/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 28 

    public void windowIconified(WindowEvent e) {

    // throw new UnsupportedOperationException("Not supported

    yet."); //To change body of generated methods, choose Tools |

    Templates.

    }

    @Override

    public void windowDeiconified(WindowEvent e) {

    //throw new UnsupportedOperationException("Not supported

    yet."); //To change body of generated methods, choose Tools |

    Templates.

    }

    @Override

    public void windowActivated(WindowEvent e) {

    // throw new UnsupportedOperationException("Not supported

    yet."); //To change body of generated methods, choose Tools |

    Templates.

    }

    @Override

    public void windowDeactivated(WindowEvent e) {

    // throw new UnsupportedOperationException("Not supported

    yet."); //To change body of generated methods, choose Tools |

    Templates.

    }

    }

    IDS System

    package ui;

    import java.awt.BorderLayout;

    import java.awt.Dimension;

    import java.awt.event.WindowEvent;

    import java.awt.event.WindowListener;

    import java.net.InetAddress;

    import javax.swing.JButton;

  • 8/17/2019 BwDDoS attack & defense project Report

    29/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 29 

    import javax.swing.JFrame;

    import javax.swing.JTabbedPane;

    import javax.swing.UIManager;

    import javax.swing.UIManager.LookAndFeelInfo;

    import javax.swing.UnsupportedLookAndFeelException;

    import logic.Multicst;

    import logic.Receiver;

    import logic.SocketListener;

    import support.Constants;

    import support.Utils;

    public class IdsDesignTabForm implements WindowListener{

    JFrame jframe;

    public IdsMonitoringForm idsMonitoringForm;

    String[] nodeConfig;

    public SocketListener socketListener;

    public IdsGraphForm idsGraphForm;

    public Receiver receiver;

    String inetAddress;

    public IdsDesignTabForm() {

    try {

    inetAddress =

    InetAddress.getLocalHost().getHostAddress();

    receiver = new Receiver(this, "");

    idsMonitoringForm = new IdsMonitoringForm(this);

    idsGraphForm = new IdsGraphForm(this);

    for (LookAndFeelInfo info :

    UIManager.getInstalledLookAndFeels()) {

    if ("Nimbus".equals(info.getName())) {

    UIManager.setLookAndFeel(info.getClassName());

    break;

    }

    }

  • 8/17/2019 BwDDoS attack & defense project Report

    30/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 30 

    } catch (Exception e) {

    // handle exception

    }

    }

    public void designForm() {

    try {

    nodeConfig = Utils.getProperties();

    socketListener = new

    SocketListener(nodeConfig[3], this);

    // design();

    jframe = new JFrame("IDS System");

    JTabbedPane tab = new JTabbedPane();

    jframe.add(tab, BorderLayout.CENTER);

    JButton button = new JButton("1");

    tab.add("Ids Monitoring", idsMonitoringForm);

    button = new JButton("2");

    tab.add("Network Monitoring", idsGraphForm);

    jframe.add(tab);

    jframe.setVisible(true);

    screenCenter();

    } catch (Exception e) {

    e.printStackTrace();

    }

    }

    public void screenCenter() {

    Dimension dim = jframe.getToolkit().getScreenSize();

    int screenWidth = dim.width;

    int screenHeight = dim.height;

    int frameWidth = screenWidth / 3;

    int frameHeight = screenHeight / 3;

    jframe.setSize(700, 700);

    jframe.setLocation((screenWidth - frameWidth) / 2,

    (screenHeight - frameHeight) / 2);

    }

  • 8/17/2019 BwDDoS attack & defense project Report

    31/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 31 

    public static void main(String[] args) {

    IdsDesignTabForm idsDesignForm = new

    IdsDesignTabForm();

    idsDesignForm.designForm();

    }

    /*public void callMulticst() {

    try {

    String msg = Constants.MULTICAST_MONITOR;

    multicst = new Multicst(msg, inetAddress, msg);

    } catch (Exception e) {

    e.printStackTrace();

    // TODO: handle exception

    }

    }*/

    @Override

    public void windowOpened(WindowEvent e) {

    // throw new UnsupportedOperationException("Not supported

    yet."); //To change body of generated methods, choose Tools |

    Templates.

    }

    @Override

    public void windowClosing(WindowEvent e) {

    System.exit(0); //throw new

    UnsupportedOperationException("Not supported yet."); //To change

    body of generated methods, choose Tools | Templates.

    }

    @Override

    public void windowClosed(WindowEvent e) {

    //throw new UnsupportedOperationException("Not supported

    yet."); //To change body of generated methods, choose Tools |

    Templates.

    }

  • 8/17/2019 BwDDoS attack & defense project Report

    32/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 32 

    @Override

    public void windowIconified(WindowEvent e) {

    //throw new UnsupportedOperationException("Not supported

    yet."); //To change body of generated methods, choose Tools |

    Templates.

    }

    @Override

    public void windowDeiconified(WindowEvent e) {

    //throw new UnsupportedOperationException("Not supported

    yet."); //To change body of generated methods, choose Tools |

    Templates.

    }

    @Override

    public void windowActivated(WindowEvent e) {

    //throw new UnsupportedOperationException("Not supported

    yet."); //To change body of generated methods, choose Tools |

    Templates.

    }

    @Override

    public void windowDeactivated(WindowEvent e) {

    //throw new UnsupportedOperationException("Not supported

    yet."); //To change body of generated methods, choose Tools |

    Templates.

    }

    }

    5.3 

    SOFTWARE REQUIREMENTS

    The Software Requirements is a technical specification of requirements for the software

     product. The goal of software requirements definition is to completely and consistently

    specify the technical requirements for the software product in a concise and

    unambiguous manner  

  • 8/17/2019 BwDDoS attack & defense project Report

    33/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 33 

    Operating System : Windows Family.

    Programming Language : JDK 1.5 or higher

    5.4 

    HARDWARE REQUIREMENTS

    The selection of hardware is very important in the existence and proper working of any

    software. When selecting hardware the size and capacity requirements are also

    important.

    Processor : Any Processor above 500 MHz.

    Ram : 128Mb.

    Hard Disk : 10 GB.

    Input device : Standard Keyboard and Mouse.

    Output device : VGA and High Resolution Monitor.

  • 8/17/2019 BwDDoS attack & defense project Report

    34/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 34 

    6. SYSTEM TESTING 

    6.1 TESTING PROCEDURES 

     

    Unit Testing

      Integration Testing

      Validation Testing

      Output Testing

      User Acceptance Testing

      System Testing

    6.1.1 Unit Testing

    Here we test each module individually and integrate the overall system. Unit

    testing focuses verification efforts even in the smallest unit of software design in each

    module. This is known as “Module Testing”. The modules of the system are tested

    separately. This testing is carried out in the programming style itself. In this testing each

    module is focused to work satisfactorily as regard to expected output from the module.

    There are some validation checks for the fields.

    6.1.2 Integration Testing

    Data can be lost across an interface, one module can have an adverse effect on

    the other sub-functions, when combined may not produce the desired functions.

    Integrated testing is the systematic testing to uncover the errors within the interface.

    This testing is done with simple data and the developed system has run successfully

    with this simple data. The need for integrated system is to find the overall system

     performance.

    6.1.3 Validation Testing

    At the culmination of black box testing, software is completely assembled as a

     package. Interfacing errors have been uncovered and correct and final series of test, i.e.,

    validation test begins. Validation test van is defined with a simple definition that

    succeeds when the software functions in a manner that can be reasonably accepted by

    the customer.

  • 8/17/2019 BwDDoS attack & defense project Report

    35/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 35 

    6.1.4 Output Testing

    After performing validation testing, the next step is output testing of the

     proposed system. Since the system cannot be useful if it does not produce the required

    output. Asking the user about the format in which the system is required tests the output

    displayed or generated by the system under consideration. Here the output format is

    considered in two ways. One is on screen format and other one is printed format. The

    output format on the screen is found to be corrected as the format was designed in the

    system phase according to the user needs. As for hard copy the output comes according

    to the specification requested by the user. Here the output testing does not result in any

    correction in the system.

    Taking various kinds of data plays a vital role in system testing. After preparing

    the test data, system under study is tested using the tested data. While testing, errors are

    again uncovered and corrected by using the above steps and corrections are also noted

    for future use. The system has been verified and validated by running test data and live

    data.

    First the system is tested with some sample test data are generated with the

    knowledge of possible range of values that are required to hold by the fields. The

    system runs successfully for the given test data and for live data.

    6.1.5 User Acceptance Testing

    User acceptance testing of the system is the key factor for the success of any

    system. The system under consideration is tested for the user acceptance by constantly

    keeping in touch with perspective system at the time of development and making

    change whenever required. This is done with regard to the input screen design and

    output screen design.

    6.2 TESTING METHODOLOGIES

    Different testing methodologies are applied before the system is tested for user

    acceptance.

    Black Box Testing 

    Knowing the specific function that a product has been designed to perform, test

    can be conducted that each function is fully operational. Black Box Testing is carried to

  • 8/17/2019 BwDDoS attack & defense project Report

    36/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 36 

    test that input to a function is probably accepted and output is correctly produced. A

     black box testing examines some aspects of a system with little regards for the internal

    logical structure of the software. Errors in the following categories were found through

     black box testing

      Incorrect or missing function

      Interface errors

      Errors in data structures or external database access

      Performance errors

      Initialization and termination errors

    White Box Testing

    White Box Testing of software is predicated on a close examination of

     procedural details. The status of a program may be tested at various points. Things to

    determine whether asserted status is corresponding to the actual status. Using the

    following test case can be derived.

      Exercise all logical conditions on their true and false side

     

    Exercise all loops within their boundaries and their operational bounds

      Exercise internal data structure to ensure their value

  • 8/17/2019 BwDDoS attack & defense project Report

    37/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 37 

    7. CONCLUSION

    BW-DDoS attacks employed relatively crude, inefficient, brute force mechanisms.

    However, several known attacks, which aren’t commonly used, let attackers launch

    sophisticated attacks, which are difficult to detect and might considerably amplify

    attackers’ strength.  Deployed and proposed defenses might struggle to meet these

    increasing threats; therefore, we need to deploy more advanced defenses. This might

    involve proposed mechanisms as well as new approaches. Some proposed defenses

    raise operational and political issues; these are beyond the scope of our article but

    should be considered carefully. Finally, for a defense mechanism to be practical, it must

     be easy to deploy and require minor changes, if any, especially to the Internet’s core

    routers.

  • 8/17/2019 BwDDoS attack & defense project Report

    38/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 38 

    8. REFERENCE

    [1] “Prolexic Attack Report,Q32011Q42012,”P.T.Inc.,2012; 

    www.prolexic.com/attackreports.

    [2] “Worldwide Infrastructure Security Reports

    Series(20052012),”ArborNetworks,2013; www.arbornetworks.com/report.

    [3] M. Prince, “The DDoS that Almost Broke the Internet,”CloudFlare, 27 Mar.

    2013; http://blog.cloudflare.com/the-ddos-that-almost-broke-the-internet. 

    [4] S. Wei, J. Mirkovic, and M. Swany, “Distributed WormSimulation with a

    Realistic Internet Model,” Workshop Principles of Advanced and Distributed

    Simulation(PADS 05), IEEE CS, 2005, pp. 71 – 79.

    [5] 

    S. Antonatos et al., “Pu ppetnets: Misusing Web Browsers as a Distributed

    Attack Infrastructure,” ACM Trans.  Information and System Security, vol. 12,

    no. 2, 2008, pp. 12:1 – 12:15.

    [6] “ANA Spoofer Project,” Advanced Network Architecture Group, 2012;

    http://spoofer.csail.mit.edu/summary.php. 

    http://blog.cloudflare.com/the-ddos-that-almost-broke-the-internethttp://blog.cloudflare.com/the-ddos-that-almost-broke-the-internethttp://blog.cloudflare.com/the-ddos-that-almost-broke-the-internethttp://spoofer.csail.mit.edu/summary.phphttp://spoofer.csail.mit.edu/summary.phphttp://spoofer.csail.mit.edu/summary.phphttp://blog.cloudflare.com/the-ddos-that-almost-broke-the-internet

  • 8/17/2019 BwDDoS attack & defense project Report

    39/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 39 

    9. SCREENSHOT

  • 8/17/2019 BwDDoS attack & defense project Report

    40/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 40 

  • 8/17/2019 BwDDoS attack & defense project Report

    41/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 41 

  • 8/17/2019 BwDDoS attack & defense project Report

    42/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 42 

  • 8/17/2019 BwDDoS attack & defense project Report

    43/44

    Bandwidth Distributed Denial of Service: Attacks & Defense

    DEPARTMENT Of CSE, MCET 43 

  • 8/17/2019 BwDDoS attack & defense project Report

    44/44

    Bandwidth Distributed Denial of Service: Attacks & Defense