fantastic attacks and how kalipso can find them
play

Fantastic Attacks and How Kalipso can find them Kamila Babayeva - PowerPoint PPT Presentation

Fantastic Attacks and How Kalipso can find them Kamila Babayeva Sebastian Garcia babaykam@fel.cvut.cz, @_kamifai_ sebastian.garcia@agent.fel.cvut.cz, @eldracote What if you need to analyze a very large pcap to find if there was an


  1. Fantastic Attacks and How Kalipso can find them Kamila Babayeva Sebastian Garcia babaykam@fel.cvut.cz, @_kamifai_ sebastian.garcia@agent.fel.cvut.cz, @eldracote

  2. What if you need to analyze a very large pcap to find if there was an infection?

  3. A real android infection Kalipso demo

  4. What was helping the detection? Red Alerts Dst ports Dst ips Behavioral letters Slips can identify In “dst ports as a In “dst IPs as a some weird situations client” we can see client” we can Tuples with a and alert you about a lot of bytes and see a lot of strong them packets going to a connections to periodicity dst port this IP in a weird port

  5. How does slips idea timewindows work? Machine Learning for Profiles and detections Network Detection. happen in TW. Behaviors Backend change. Home net directionality Defines for which IPs it Out: Only consider traffic going out of the profile creates profiles All: Consider traffic in and out of the profile profiles modules Profile per src IP. Computes Implement everything in all the features in the profile modules as independent processes

  6. Modules Threat Intelligence ASN Anomaly detection ml C&C detection kalipso geoip timeline Portscan detection Virus total whois

  7. directionality

  8. directionality

  9. directionality

  10. directionality

  11. kalipso

  12. kalipso’s magic nodejs Node.js is an open-source, cross-platform, JavaScript runtime environment that executes JavaScript code outside of a Blessed library browser. A high-level terminal interface library for node.js https://pypi.org/project/blessed/ redis Open source in-memory data structure store Blessed-contrib Build terminal dashboards using ascii/ansi art and javascript https://github.com/yaronn/blessed-contrib

  13. Blessed library

  14. Blessed-contrib library

  15. kalipso’s magic In-memory key store

  16. redis example of entry profile_10.0.0.1_timewindow1 (hash) DstIPs : {123.123.123.123: 1, '1.1.1.1':3} SrcIPs : {'2.2.2.2':4} Modified : True OutTuples : {'3.3.3.3:80:tcp': ['98a,a,a,a,a,a', previous_time, T2, IPINFO]} Detections : { [ ['Port Scan',1,0.5], ['Exploit', 0.3, 1] ]} BlockRequest : True/False DstPortsClientUDPEstablished : {80: {'totalbytes': 23, 'totalflows': 2, 'totalpkt': 4, 'dstips': {'3.4.5.6':25 ,'6.6.6.6':44}}} DstPortsClientUDPNotEstablished : {80: {'totalbytes': 23, 'totalflows': 2, 'totalpkt': 4, 'dstips': {'1.1.1.1':32 ,'2.2.2.2':44 ,'3.3.3.3': 66}}} DstPortsClientTCPEstablished : {80: {'totalbytes': 23, 'totalflows': 2, 'totalpkt': 4, 'dstips': {'1.1.1.1':32 ,'2.2.2.2':44 ,'3.3.3.3': 66}}} DstPortsClientTCPNotEstablished : {80: {'totalbytes': 23, 'totalflows': 2, 'totalpkt': 4, 'dstips': {'1.1.1.1':32 ,'2.2.2.2':44 ,'3.3.3.3': 66} }} DstPortsServerUDPEstablished : {80: {'totalbytes': 23, 'totalflows': 2, 'totalpkt': 4}} SrcPortsClientUDPEstablished : {1234: {'totalbytes': 23, 'totalflows': 2, 'totalpkt': 4, 'dstips': {'1.1.1.1':32 ,'2.2.2.2':44 ,'3.3.3.3': 66}}}

  17. kalipso profiles All profiles and all the time windows when this profile communicated. Detected profiles and time windows are highlighted in red.

  18. kalipso timeline A combined timeline of what happened and when. Based on Zeek files. Each main line (e.g DNS) has below its corresponding interpretation (Query:)

  19. kalipso Ip info Clicking on a IP shows its information. Both in the timeline and the profiles tree.

  20. kalipso evidence The evidence is generated by all detection modules. This is the supporting evidence for the detection.

  21. kalipso hotkeys Help on what you can do

  22. kalipso E hotkey Src ports when the IP of the profile acted as client. Separated in Established and Not Established histograms. Shows the amount of total flows, total packets and total bytes going in a specific source port.

  23. kalipso C hotkey Dst IPs when the IP of the profiles acted as client. Separated in Established and Not Established histograms. Shows the amount of total flows, total packets and total bytes going to a specific dst IP.

  24. kalipso p hotkey Dst ports when the IP of the profile acted as client. Separated in Established and Not Established histograms. Shows the amount of total flows, total bytes and total packets going to a specific dst port.

  25. kalipso n hotkey Dst Ports when the IP of the profile acted as client. Separated in Established and not Established histograms. Shows the amount of connections to a dst IP on a specific port .

  26. kalipso m hotkey Shows geolocations of all dst IPs to which the src IP of the profile connected to during the time window.

  27. kalipso H Hotkey Out Tuples Behavioral letters about the out tuples ‘IP-port-protocol’ combined together with ASN, geo country and Virus Total summary

  28. Behavioral letters Outtuples Group flows together Aggregation key is Src IP Dst IP Dst Port Protocol For each flow compute duration, size, and periodicity.

  29. Behavioral letters Behavior in time

  30. kalipso Fake scroll We implemented a fake scroll capability to deal with the limitations of the library.

  31. Installation https://github.com/stratosphereips/StratosphereLinuxIPS

  32. THANK YOU! Kamila Babayeva Sebastian Garcia babaykam@fel.cvut.cz, sebastian.garcia@agent. @_kamifai_ fel.cvut.cz, @eldracote CREDITS: This presentation template was created by Slidesgo, including icons by Flaticon, and infographics & images by Freepik. Please keep this slide for attribution.

Recommend


More recommend