Network Security Data Visualization


Published on

Network Security Data Visualization

Published in: Technology
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • “ These striking images are 3D hyperbolic graphs of Internet topology. They are created using the Walrus visualisation tool developed by Young Hyun at the Cooperative Association for Internet Data Analysis ( CAIDA ). The underlying data on the topological structure of the Internet is gathered by skitter , a CAIDA tool for large-scale collection and analysis of Internet traffic path data.” -
  • Network Security Data Visualization

    1. 1. Network Security Data Visualization Greg Conti CS6262
    2. 2.
    3. 3. information visualization is the use of interactive, sensory representations, typically visual, of abstract data to reinforce cognition.
    4. 4. Why InfoVis? <ul><li>Helps find patterns </li></ul><ul><li>Helps reduce search space </li></ul><ul><li>Aids efficient monitoring </li></ul><ul><li>Enables interaction (what if) </li></ul><ul><li>Help prevent overwhelming the user </li></ul>
    5. 5. So What? <ul><li>Go Beyond the Algorithm </li></ul><ul><li>Help with detecting and understand some 0 day attacks </li></ul><ul><li>Make CTF and Root Wars a Spectator Sport </li></ul><ul><li>Help find insider threats </li></ul><ul><li>Help visually fingerprint attacks </li></ul>What tasks do you need help with?
    6. 6. TCP Dump image:
    7. 7. Network Traffic Viewed in Ethereal Ethereal by Gerald Combs can be found at image:
    8. 8. Network Traffic as Viewed in EtherApe Etherape by Juan Toledo can be found at screenshot:
    9. 9. Outline <ul><li>Quick overview of Intrusion Detection Systems (IDS) </li></ul><ul><li>Quick overview of Information Visualization </li></ul><ul><li>What data is available on the wire </li></ul><ul><li>Finding interesting combinations </li></ul><ul><li>What the attacks look like </li></ul>
    10. 10. Intrusion Detection System <ul><li>An intrusion-detection system (IDS) is a tool used to detect attacks or other security breaches in a computer system or network. </li></ul>
    11. 11. Intrusion Detection System Types <ul><li>Host-based intrusion-detection is the art of detecting malicious activity within a single computer by using </li></ul><ul><ul><li>host log information </li></ul></ul><ul><ul><li>system activity </li></ul></ul><ul><ul><li>virus scanners </li></ul></ul><ul><li>A Network intrusion detection system is a system that tries to detect malicious activity such as denial of service attacks, port-scans or other attempts to hack into computers by reading all the incoming packets and trying to find suspicious patterns. </li></ul>
    12. 12. Information Visualization Mantra <ul><li>Overview First, </li></ul><ul><li>Zoom & Filter, </li></ul><ul><li>Details on Demand </li></ul><ul><li>- Ben Shneiderman </li></ul>
    13. 13. Overview First…
    14. 14. Zoom and Filter…
    15. 15. Details on Demand…
    16. 16. What Tools are at Your Disposal… <ul><li>Color </li></ul><ul><li>Size </li></ul><ul><li>Shape </li></ul><ul><li>Orientation </li></ul><ul><li>Scale </li></ul><ul><li>Interactivity </li></ul><ul><li>Sequence </li></ul><ul><li>Filtering </li></ul><ul><li>Perspective </li></ul>
    17. 17. What Can InfoVis Help You See? <ul><li>Relationships between X & Y & Z… </li></ul><ul><li>Anomalies </li></ul><ul><li>Outliers </li></ul><ul><li>Extremes </li></ul><ul><li>Patterns </li></ul><ul><li>Comparisons and Differences </li></ul><ul><li>Trends </li></ul>
    18. 18. User Tasks <ul><li>ID </li></ul><ul><li>Locate </li></ul><ul><li>Distinguish </li></ul><ul><li>Categorize </li></ul><ul><li>Cluster </li></ul><ul><li>Distribution </li></ul><ul><li>Rank </li></ul><ul><li>Compare </li></ul><ul><li>Associate </li></ul><ul><li>Correlate </li></ul> See also
    19. 19. Representative Current Research
    20. 20. Dr. Rob Erbacher <ul><li>Representative Research </li></ul><ul><ul><li>Visual Summarizing and Analysis Techniques for Intrusion Data </li></ul></ul><ul><ul><li>Multi-Dimensional Data Visualization </li></ul></ul><ul><ul><li>A Component-Based Event-Driven Interactive Visualization Software Architecture </li></ul></ul>
    21. 21. Demo
    22. 22. Dr. David Marchette <ul><li>Passive Fingerprinting </li></ul><ul><li>Statistics for intrusion detection </li></ul>
    23. 23. (images) (descriptions)
    24. 24. Soon Tee Teoh <ul><li>Visualizing Internet Routing Data </li></ul>
    25. 25. CAIDA <ul><li>Code Red Worm Propagation </li></ul><ul><li>Young Hyun </li></ul><ul><li>David Moore </li></ul><ul><li>Colleen Shannon </li></ul><ul><li>Bradley Huffaker </li></ul>
    26. 26. Jukka Juslin Intrustion Detection and Visualization Using Perl
    27. 27. Michal Zalewski <ul><li>TCP/IP Sequence Number Generation </li></ul>Initial paper - Follow-up paper - Linux 2.2 TCP/IP sequence numbers are not as good as they might be, but are certainly adequate, and attack feasibility is very low. Linux 2.2 TCP/IP sequence numbers are not as good as they might be, but are certainly adequate, and attack feasibility is very low. Linux 2.2 TCP/IP sequence numbers are not as good as they might be, but are certainly adequate, and attack feasibility is very low.
    28. 28. Atlas of Cyber Space
    29. 29. John Levine <ul><li>The Use of Honeynets to Detect Exploited Systems Across Large Enterprise Networks </li></ul><ul><li>Interesting look at detecting zero-day attacks </li></ul>
    30. 30. Port 135 MS BLASTER scans <ul><li>Date Public: 7/16/03 Date Attack: 8/11/03 </li></ul><ul><li>Georgia Tech Honeynett </li></ul><ul><li>Source: John Levine, Georgia Tech </li></ul>
    31. 31. Port 1434 (MS-SQL) scans <ul><li>Date Public: 7/24/02 Date Attack: 1/25/03 </li></ul><ul><li>Georgia Tech Honeynet </li></ul><ul><li>Source: John Levine, Georgia Tech </li></ul>
    32. 32. Port 554 (RTSP) scans <ul><li>Date Public: 8/15/2003 Date Attack: 8/22/03 </li></ul><ul><li>Georgia Tech Honeypot </li></ul><ul><li>Source: John Levine, Georgia Tech </li></ul>
    33. 33. Hot Research Areas… <ul><li>visualizing vulnerabilities </li></ul><ul><li>visualizing IDS alarms (NIDS/HIDS) </li></ul><ul><li>visualizing worm/virus propagation </li></ul><ul><li>visualizing routing anamolies </li></ul><ul><li>visualizing large volume computer network logs </li></ul><ul><li>visual correlations of security events </li></ul><ul><li>visualizing network traffic for security </li></ul><ul><li>visualizing attacks in near-real-time </li></ul><ul><li>security visualization at line speeds </li></ul><ul><li>dynamic attack tree creation (graphic) </li></ul><ul><li>forensic visualization </li></ul>
    34. 34. More Hot Research Areas… <ul><li>feature selection </li></ul><ul><li>feature construction </li></ul><ul><li>incremental/online learning </li></ul><ul><li>noise in the data </li></ul><ul><li>skewed data distribution </li></ul><ul><li>distributed mining </li></ul><ul><li>correlating multiple models </li></ul><ul><li>efficient processing of large amounts of data </li></ul><ul><li>correlating alerts </li></ul><ul><li>signature detection </li></ul><ul><li>anomaly detection </li></ul><ul><li>forensic analysis </li></ul>
    35. 35. One Approach… <ul><li>Look at TCP/IP Protocol Stack Data (particularly header information) </li></ul><ul><li>Find interesting visualizations </li></ul><ul><li>Throw some interesting traffic at them </li></ul><ul><li>See what they can detect </li></ul><ul><li>Refine </li></ul>
    36. 36. TCP/IP Protocol Stack
    37. 37. Information Available On and Off the Wire <ul><li>Levels of analysis </li></ul><ul><li>External data </li></ul><ul><ul><li>Time </li></ul></ul><ul><ul><li>Size </li></ul></ul><ul><ul><li>Protocol compliance </li></ul></ul><ul><ul><li>Real vs. Actual Values </li></ul></ul><ul><li>Matrices of options </li></ul><ul><li>Header slides </li></ul>
    38. 38. Link Layer (Ethernet) Physical Link Network Transport Application Presentation Session
    39. 39. Network Layer (IP) Physical Link Network Transport Application Presentation Session
    40. 40. Transport Layer (TCP) Physical Link Network Transport Application Presentation Session
    41. 41. Transport Layer (UDP) Physical Link Network Transport Application Presentation Session
    42. 43. Exploitation Pattern of Typical Internet Worm <ul><li>Target Vulnerabilities on Specific Operating Systems </li></ul><ul><li>Localized Scanning to Propagate (Code Red) </li></ul><ul><ul><li>3/8 of time within same Class B (/16 network) </li></ul></ul><ul><ul><li>1/2 of time within same Class A (/8 network) </li></ul></ul><ul><ul><li>1/8 of time random address </li></ul></ul><ul><li>Allows for Quick Infection Within Internal Networks with High Concentration of Vulnerable Hosts </li></ul>? Source: John Levine, Georgia Tech
    43. 44. Ethernet Packet Capture Parse Process Plot tcpdump (pcap, winpcap, snort) Perl (c/c++) Perl (c/c++) xmgrace (GNU plotutils gtk+/opengl html) tcpdump capture files
    44. 45. Grace <ul><li>“ Grace is a WYSIWYG 2D plotting tool for the X Window System and M*tif. Grace runs on practically any version of Unix-like OS. As well, it has been successfully ported to VMS, OS/2, and Win9*/NT/2000/XP” </li></ul>
    45. 46. Required Files <ul><li>Perl, tcpdump and grace need to be installed. </li></ul><ul><li>- </li></ul><ul><li>- </li></ul><ul><li>- </li></ul><ul><li>to install grace... </li></ul><ul><li>Download RPMs (or source) </li></ul><ul><li> </li></ul><ul><li>The files you want </li></ul><ul><li>grace-5.1.14-1.i386.rpm </li></ul><ul><li>pdflib-4.0.3-1.i386.rpm </li></ul><ul><li>Install </li></ul><ul><li>#rpm -i pdflib-4.0.3-1.i386.rpm </li></ul><ul><li>#rpm -i grace-5.1.14-1.i386.rpm </li></ul>
    46. 47. Hello World Example <ul><li># tcpdump -lnnq -c10 | perl | perl |outfile.dat </li></ul><ul><li># xmgrace outfile.dat & </li></ul><ul><li>Optionally you can run xmgrace with an external format language file… </li></ul><ul><li># xmgrace outfile.dat -batch formatfile </li></ul>
    47. 48. Hello World Example (cont) <ul><li>Optionally you can run xmgrace with an external format language file… </li></ul><ul><li>xmgrace outfile.dat -batch formatfile </li></ul><ul><li>formatfile is a text file that pre-configures Grace e.g. </li></ul><ul><li>title &quot;Port Scan Against Single Host&quot; </li></ul><ul><li>subtitle &quot;Superscan w/ports 1-1024&quot; </li></ul><ul><li>yaxis label &quot;Port&quot; </li></ul><ul><li>yaxis label place both </li></ul><ul><li>yaxis ticklabel place both </li></ul><ul><li>xaxis ticklabel off </li></ul><ul><li>xaxis tick major off </li></ul><ul><li>xaxis tick minor off </li></ul><ul><li>autoscale </li></ul>
    48. 49. Data Format <ul><li>tcpdump outputs somewhat verbose output </li></ul><ul><li>09:02:01.858240 0:6:5b:4:20:14 0:5:9a:50:70:9 62: > tcp 0 (DF) </li></ul><ul><li> cleans up output </li></ul><ul><li>09 02 01 858240 0:6:5b:4:20:14 0:5:9a:50:70:9 4532 1080 tcp </li></ul><ul><li> extracts/formats for Grace. </li></ul><ul><ul><li>0 4532 </li></ul></ul><ul><ul><li>1 1080 </li></ul></ul><ul><ul><li>0 4537 </li></ul></ul><ul><ul><li>1 1080 </li></ul></ul><ul><ul><li>0 2370 </li></ul></ul><ul><ul><li>1 1080 </li></ul></ul>
    49. 50. Results Example 1 - Baseline with Normal Traffic Example 2 - Port Scan Example 3 - Port Scan “Fingerprinting” Example 4 - Vulnerability Scanner Example 5 - Wargame
    50. 51. Example 1 - Baseline <ul><li>Normal network traffic </li></ul><ul><ul><li>FTP, HTTP, SSH, ICMP… </li></ul></ul><ul><li>Command Line </li></ul><ul><ul><li>Capture Raw Data </li></ul></ul><ul><ul><ul><li>tcpdump -l -nnqe -c 1000 tcp or udp | perl > exp1_outfile.txt </li></ul></ul></ul><ul><ul><li>Run through Analysis Script </li></ul></ul><ul><ul><ul><li>cat exp1_outfile.txt | perl > output1a.dat </li></ul></ul></ul><ul><ul><li>Open in Grace </li></ul></ul><ul><ul><ul><li>xmgrace output1a.dat & </li></ul></ul></ul>
    51. 54. Example 2 - PortScan <ul><li>Light “normal” network traffic (HTTP) </li></ul><ul><li>Command Line </li></ul><ul><ul><li>Run 2a.bat (chmod +x 2a.bat) </li></ul></ul><ul><li>echo running experiment 2 </li></ul><ul><li>echo 1-1024 port scan </li></ul><ul><li>tcpdump -l -nnqe -c 1200 tcp or udp > raw_outfile_2.txt </li></ul><ul><li>cat raw_outfile_2.txt | perl > exp2_outfile.txt </li></ul><ul><li>cat exp2_outfile.txt | perl > output_2a.dat </li></ul><ul><li>xmgrace output_2a.dat & </li></ul><ul><li>echo experiment 2 completed </li></ul>
    52. 56. Attacker
    53. 57. Defender
    54. 58. Example 3- PortScan “Fingerprinting” <ul><li>Tools Examined: </li></ul><ul><li>Nmap Win 1.3.1 (on top of Nmap 3.00) </li></ul><ul><ul><li>XP Attacker </li></ul></ul><ul><ul><li>( </li></ul></ul><ul><li>Nmap 3.00 </li></ul><ul><ul><li>RH 8.0 Attacker </li></ul></ul><ul><ul><li>( </li></ul></ul><ul><li>Superscan 3.0 </li></ul><ul><ul><li>RH 8.0 Attacker </li></ul></ul><ul><ul><li>( </li></ul></ul>
    55. 59. nmap 3.00 default (RH 8.0) nmap 3.00 udp scan (RH 8.0) Superscan 3.0 Nmap Win 1.3.1
    56. 60. Three Parallel Scans
    57. 61. Example 4: Vulnerability Scanner <ul><li>Attacker: RH 8.0 running Nessus 2.0.10 </li></ul><ul><li>Target: RH 9.0 </li></ul>
    58. 63. Example 5: Wargame <ul><li>Attackers: NSA Red Team </li></ul><ul><li>Defenders: US Service Academies </li></ul><ul><li>Defenders lock down network, but must provide certain services </li></ul>Dataset -
    59. 68. Zooming in on port 8080
    60. 70. Port 135 <ul><li>CAN-2003-0605 tcp any 135 </li></ul><ul><li>The RPC DCOM interface in Windows 2000 SP3 and SP4 allows remote attackers to cause a denial of service (crash), and local attackers to use the DoS to hijack the epmapper pipe to gain privileges, via certain messages to the __RemoteGetClassObject interface that cause a NULL pointer to be passed to the PerformScmStage function. </li></ul><ul><li>CAN-2003-0352 6 any 135 </li></ul><ul><li>Buffer overflow in a certain DCOM interface for RPC in Microsoft Windows NT 4.0, 2000, XP, and Server 2003 allows remote attackers to execute arbitrary code via a malformed message, as exploited by the Blaster/MSblast/LovSAN worm. </li></ul>
    61. 71. Conclusions <ul><li>Limited fingerprinting of tools is possible </li></ul><ul><li>Visualization can help drive better algorithms </li></ul><ul><li>Some attacker techniques can be identified </li></ul><ul><li>Some vulnerabilities can be identified </li></ul>
    62. 72. Demo <ul><li>See readme.txt </li></ul><ul><li>Two demo scripts… </li></ul><ul><ul><li>runme.bat (uses sample dataset) </li></ul></ul><ul><ul><li>runme_sniff.bat (performs live capture, must be root) </li></ul></ul><ul><li>Note: you must modify the IP address variable in the Analyzer script. (See for example) </li></ul>
    63. 73. Future <ul><li>Distributed NIDS Visualization </li></ul><ul><li>Real-time vs. Offline </li></ul><ul><li>Interesting datasets </li></ul><ul><li>3D </li></ul><ul><li>Other visualization techniques </li></ul><ul><li>Visualization of protocol attacks </li></ul><ul><li>Visualization of application layer attacks </li></ul><ul><li>Visualization of physical layer attacks (?) </li></ul><ul><li>Code up some stand-alone tools </li></ul>
    64. 74. <ul><li>Questions? </li></ul>
    65. 75. Who are your users: 1. 2. 3. What are their tasks? 1. 2. 3. <ul><li>ID </li></ul><ul><li>Locate </li></ul><ul><li>Distinguish </li></ul><ul><li>Categorize </li></ul><ul><li>Cluster </li></ul><ul><li>Distribution </li></ul><ul><li>Rank </li></ul><ul><li>Compare </li></ul><ul><li>Associate </li></ul><ul><li>Correlate </li></ul><ul><li>Color </li></ul><ul><li>Size </li></ul><ul><li>Shape </li></ul><ul><li>Orientation </li></ul><ul><li>Scale </li></ul><ul><li>Interactivity </li></ul><ul><li>Sequence </li></ul><ul><li>Filtering </li></ul><ul><li>Perspective </li></ul>