SlideShare a Scribd company logo
1 of 30
Splunk@Duke
Presented by: Jeremy Hopkins, Sr. IT Analyst
Agenda
Introductions
Early Operational Usage and Reactive
Analysis
Moving from Reactive to Proactive
• 15,000 Students
• 3,300 Faculty
• 36,000 Staff
• Total of 68,000+ Active Users
• University and Medical Center
• Worldwide Presence
Splunk @ Duke University
200+ Indices & Sourcetypes
• Syslog
• OS (Win & *nix)
• Web
• Network
• IPS/IDS/Firewall
• Shibboleth
• Mail
• LDAP
• VPN
• Many More
Departments & Uses
• IT Security Office
• System Admin
• Messaging
• Network
• Database
• Emergency Notification
Tracking
• Departmental IT Groups
• Many uses by many groups
Forwarders set to
"autoLB = true"
Distributed Search
Indexing Tier
• 4 x Indexer
• 5 TB local storage each
Collection Tier
• Various systems with
forwarders
• Syslog aggregator w/
Universal Forwarder for
syslog events
Search Tier
• 2 x Search Head
• Search Head Pooling enabled
• Looking forward to Clustering
LS
Shared License
• Department
quotas
Department Instance
• Multiple "all-in-
one" instance for
different
department needs
Splunk @ Duke University
But I barely know you…
“Who has authenticated the most in the last hour?” --Your Manager
These questions become distractions, because we know it isn’t just one question…
Where are the users logging in from?
Where is SPAM coming from?
Where is legit mail coming from?
Log analysis from a shell prompt using the ancient sysadmin combo of: grep | awk | sort |
uniq
grep sasl_username logfile | awk '{print $9}' | sort | uniq -c | sort -n | tail -5
7 sasl_username=user1@oit.duke.edu
7 sasl_username=user2@oit.duke.edu
8 sasl_username=user3@oit.duke.edu
10 sasl_username=user4@oit.duke.edu
58 sasl_username=user5@oit.duke.edu
Dashboards to the Rescue
Top 10 SMTP Logins using previous search example
Take NULL locations
and puts a custom
label on them
Creates a Location label such
as “Charlotte, NC” instead of
a column for city and state.
Top SMTP Logins
Finds SMTP logins and builds a table with username, login count, and location
eventtype=smtpauth | iplocation client_ip
| eval Location= if(CountryCode == "US",if(City=="",if(Region=="","Unknown Location,
"+Country,Region),if(Region=="",City+", ?? "+Country,City+",
"+Region)),if(City=="",Country,City+", "+Country))
| eval Location=
if(isnotnull(Location),
Location,
if(cidrmatch(”10.0.0.0/8",client_ip),
"Duke - Private”,
client_ip
)
)
| stats values(Location) count(netid) by netid | rename … | table netid Count Location | sort -
Count
Event types
– SMTP Auth Converted to a Splunk eventtype
 index=mail host=mail* process=postfix/smtpd sasl_username=*
– Duke created event types for various login events from various
sources:
 VPN – eventtype=vpnlogin
index=network sourcetype=vpn vpn_user=* vpn_inner_ipv4=*
vpn_source_ip=*
 Shibboleth (single sign on) - eventtype=shiblogin
index=idms_shib sourcetype=idp-process
(shib_success=“[password]” OR SSO=“true”)
Play nicely with others
In theory, we can join the various login types
together to find all login events
– eventtype=dukelogin is defined with the following
search
 eventtype=vpnlogin OR eventtype=smtpauth
OR eventtype=shiblogin
Event types allow others to use your logs without
knowing the specifics of your application
aka: Collaboration
https://xkcd.com/208/
Fun with Maps
Source of the mail we accepted as “not spam”
Guess Where our Spam Originates…
Was this really a DDOS?
| inputlookup ddos_20150123.csv | geoip src_ip
Neat, but how did it help?
• Plotting mail sources on maps provided a
visual for management which allow
implementation of geographically isolated
mail flow and acceptance rules
• Dashboards and eventtypes allowed the
ITSO to quickly see account abuse and
provided the groundwork for collaboration
with other teams
And then this happened…
Phishing to Fraud
• Phish targeting 600+ faculty/staff
• Typical phish emails (nothing
overly sophisticated)
– Pay Raise, Login Verification,
etc.
– Cloned Login Page
• Compromised accounts used to
access HR/Payroll sites
• After successful login, bank
routing numbers for direct
deposit changed
• Reports of monthly salaries not
received
Source: The News & Observer
Example of Phishing Email Received
Clicking here leads to URL on next
slide
A pay rise… interesting.
Link from Phish in Previous Slide
Believe
it or
not,
Duke
does
not
own
nl-
tour.ru
Gone phishin’
Example of Dashboard to Record Email into Phish Tracking Lookup Table
Search Duration
Actual Subject of Email
How we identify a particular
campaign
Your DUKE Pay Increase
Pay Increase - 20141006
Adds to PhishList lookup table
User Lookup in the PhishList
| inputlookup PhishList.csv | search To=dukeuser@duke.edu
Phishing DashboardAggregate of PhishList Data with Search Panel
Once the Bleeding Stopped…
• How do we utilize Splunk to become more proactive?
1. Look for “non-Duke” IPs with multiple user logins to
HR/Payroll system
2. Non-Duke IPs with multiple user logins regardless of
destination
3. Query the number of cities an account has logged in from in
past 24 hrs
4. Query the number of countries an account has logged in
from in past 24 hrs
• Multiple Iterations of Direct Deposit Phish
• Team moves forward from authentication only investigations
• Chum Accounts to help locate attackers early
This type of visibility into logs just did not exist for the ITSO prior
to Splunk
The Fight Continues…
It becomes organizational, and not just the responsibility of
security
• App developments
• MFA
The attackers respond
User Investigation Form
Example Using Radio Buttons
<fieldset>
<input type="text" token="search_netid">
<label>NetID</label>
<suffix/>
</input>
<input type=”radio” token=”mail_button”>
<label>Mail Logins</label>
<default>YES</default>
<choice value=”index=mail”>YES</choice>
<choice value=”index=NONESUCH”>NO</choice>
</input>
<input type="time">
<default>Last 7 days</default>
<label>Time</label>
</input>
<fieldset>
~
<searchString>$mail_button$ host=”mail-gw-*” user=$search_netid$</searchString>
Example of Combining Details Using Case
| eval combined_event_type=case(
isnotnull( vpn_login ), “VPN Login”,
isnotnull( sasl_username ), “Email”,
match( event_action, “lock” ), “Account Lock”,
match( event_action, “unlock” ), “Account Unlock”,
isnotnull( clientip ) AND isnotnull( user ), “WEB HIT”,
1=1, “-”
)
Benefits of Splunk to Duke
• Splunk allowed Duke to begin leveraging multiple data
sources almost immediately with very little ramp up time
• Detailed information on recipients of phishing messages
is now available to Security in minutes instead of hours
• Splunk has allowed Duke to more than double the
number of compromised accounts we detect and lock
each month
• Splunk provided the ability to create a custom SIEM like
solution tailored to Duke’s needs
• Use Splunk to bridge the gap between teams and
log knowledge
• Use event types, macros, and saved searches to
make your long crazy searches usable by others
• Use the eval command to create custom
algorithms
• Continue to educate your users about Phishing
Key Takeaways
Thanks for Listening!
Email: Jeremy.Hopkins@duke.edu
Socials: hopkeno
Lets Go Duke!

More Related Content

Similar to Duke at SplunkLive! Charlotte

SplunkLive! - Getting started with Splunk
SplunkLive! - Getting started with SplunkSplunkLive! - Getting started with Splunk
SplunkLive! - Getting started with SplunkSplunk
 
Splunk .conf2011: Search Language: Intermediate
Splunk .conf2011: Search Language: IntermediateSplunk .conf2011: Search Language: Intermediate
Splunk .conf2011: Search Language: IntermediateErin Sweeney
 
Designing The Right Schema To Power Heap (PGConf Silicon Valley 2016)
Designing The Right Schema To Power Heap (PGConf Silicon Valley 2016)Designing The Right Schema To Power Heap (PGConf Silicon Valley 2016)
Designing The Right Schema To Power Heap (PGConf Silicon Valley 2016)Dan Robinson
 
Threat Hunting with Splunk
Threat Hunting with Splunk Threat Hunting with Splunk
Threat Hunting with Splunk Splunk
 
Threat Hunting with Splunk
Threat Hunting with SplunkThreat Hunting with Splunk
Threat Hunting with SplunkSplunk
 
Getting started with Splunk - Break out Session
Getting started with Splunk - Break out SessionGetting started with Splunk - Break out Session
Getting started with Splunk - Break out SessionGeorg Knon
 
Getting started with Splunk
Getting started with SplunkGetting started with Splunk
Getting started with SplunkSplunk
 
Strata Presentation: One Billion Objects in 2GB: Big Data Analytics on Small ...
Strata Presentation: One Billion Objects in 2GB: Big Data Analytics on Small ...Strata Presentation: One Billion Objects in 2GB: Big Data Analytics on Small ...
Strata Presentation: One Billion Objects in 2GB: Big Data Analytics on Small ...randyguck
 
SplunkApplicationLoggingBestPractices_Template_2.3.pdf
SplunkApplicationLoggingBestPractices_Template_2.3.pdfSplunkApplicationLoggingBestPractices_Template_2.3.pdf
SplunkApplicationLoggingBestPractices_Template_2.3.pdfTuynNguyn819213
 
BSidesDC 2016 Beyond Automated Testing
BSidesDC 2016 Beyond Automated TestingBSidesDC 2016 Beyond Automated Testing
BSidesDC 2016 Beyond Automated TestingAndrew McNicol
 
SplunkLive! Analytics with Splunk Enterprise
SplunkLive! Analytics with Splunk EnterpriseSplunkLive! Analytics with Splunk Enterprise
SplunkLive! Analytics with Splunk EnterpriseSplunk
 
Threat Hunting with Splunk
Threat Hunting with SplunkThreat Hunting with Splunk
Threat Hunting with SplunkSplunk
 
SplunkLive! Data Models 101
SplunkLive! Data Models 101SplunkLive! Data Models 101
SplunkLive! Data Models 101Splunk
 
What is going on? Application Diagnostics on Azure - Copenhagen .NET User Group
What is going on? Application Diagnostics on Azure - Copenhagen .NET User GroupWhat is going on? Application Diagnostics on Azure - Copenhagen .NET User Group
What is going on? Application Diagnostics on Azure - Copenhagen .NET User GroupMaarten Balliauw
 
Tulsa Techfest 2016 : Pragmatic Governace by Scott Mitchell
Tulsa Techfest 2016 : Pragmatic Governace by Scott MitchellTulsa Techfest 2016 : Pragmatic Governace by Scott Mitchell
Tulsa Techfest 2016 : Pragmatic Governace by Scott MitchellScott Mitchell
 
SplunkLive! Presentation - Data Onboarding with Splunk
SplunkLive! Presentation - Data Onboarding with SplunkSplunkLive! Presentation - Data Onboarding with Splunk
SplunkLive! Presentation - Data Onboarding with SplunkSplunk
 
Not Big Data, AnyData
Not Big Data, AnyData Not Big Data, AnyData
Not Big Data, AnyData bsidesaugusta
 
SplunkLive! Analytics with Splunk Enterprise - Part 2
SplunkLive! Analytics with Splunk Enterprise - Part 2SplunkLive! Analytics with Splunk Enterprise - Part 2
SplunkLive! Analytics with Splunk Enterprise - Part 2Splunk
 
[@IndeedEng] Logrepo: Enabling Data-Driven Decisions
[@IndeedEng] Logrepo: Enabling Data-Driven Decisions[@IndeedEng] Logrepo: Enabling Data-Driven Decisions
[@IndeedEng] Logrepo: Enabling Data-Driven Decisionsindeedeng
 
Analytics with splunk - Advanced
Analytics with splunk - AdvancedAnalytics with splunk - Advanced
Analytics with splunk - Advancedjenny_splunk
 

Similar to Duke at SplunkLive! Charlotte (20)

SplunkLive! - Getting started with Splunk
SplunkLive! - Getting started with SplunkSplunkLive! - Getting started with Splunk
SplunkLive! - Getting started with Splunk
 
Splunk .conf2011: Search Language: Intermediate
Splunk .conf2011: Search Language: IntermediateSplunk .conf2011: Search Language: Intermediate
Splunk .conf2011: Search Language: Intermediate
 
Designing The Right Schema To Power Heap (PGConf Silicon Valley 2016)
Designing The Right Schema To Power Heap (PGConf Silicon Valley 2016)Designing The Right Schema To Power Heap (PGConf Silicon Valley 2016)
Designing The Right Schema To Power Heap (PGConf Silicon Valley 2016)
 
Threat Hunting with Splunk
Threat Hunting with Splunk Threat Hunting with Splunk
Threat Hunting with Splunk
 
Threat Hunting with Splunk
Threat Hunting with SplunkThreat Hunting with Splunk
Threat Hunting with Splunk
 
Getting started with Splunk - Break out Session
Getting started with Splunk - Break out SessionGetting started with Splunk - Break out Session
Getting started with Splunk - Break out Session
 
Getting started with Splunk
Getting started with SplunkGetting started with Splunk
Getting started with Splunk
 
Strata Presentation: One Billion Objects in 2GB: Big Data Analytics on Small ...
Strata Presentation: One Billion Objects in 2GB: Big Data Analytics on Small ...Strata Presentation: One Billion Objects in 2GB: Big Data Analytics on Small ...
Strata Presentation: One Billion Objects in 2GB: Big Data Analytics on Small ...
 
SplunkApplicationLoggingBestPractices_Template_2.3.pdf
SplunkApplicationLoggingBestPractices_Template_2.3.pdfSplunkApplicationLoggingBestPractices_Template_2.3.pdf
SplunkApplicationLoggingBestPractices_Template_2.3.pdf
 
BSidesDC 2016 Beyond Automated Testing
BSidesDC 2016 Beyond Automated TestingBSidesDC 2016 Beyond Automated Testing
BSidesDC 2016 Beyond Automated Testing
 
SplunkLive! Analytics with Splunk Enterprise
SplunkLive! Analytics with Splunk EnterpriseSplunkLive! Analytics with Splunk Enterprise
SplunkLive! Analytics with Splunk Enterprise
 
Threat Hunting with Splunk
Threat Hunting with SplunkThreat Hunting with Splunk
Threat Hunting with Splunk
 
SplunkLive! Data Models 101
SplunkLive! Data Models 101SplunkLive! Data Models 101
SplunkLive! Data Models 101
 
What is going on? Application Diagnostics on Azure - Copenhagen .NET User Group
What is going on? Application Diagnostics on Azure - Copenhagen .NET User GroupWhat is going on? Application Diagnostics on Azure - Copenhagen .NET User Group
What is going on? Application Diagnostics on Azure - Copenhagen .NET User Group
 
Tulsa Techfest 2016 : Pragmatic Governace by Scott Mitchell
Tulsa Techfest 2016 : Pragmatic Governace by Scott MitchellTulsa Techfest 2016 : Pragmatic Governace by Scott Mitchell
Tulsa Techfest 2016 : Pragmatic Governace by Scott Mitchell
 
SplunkLive! Presentation - Data Onboarding with Splunk
SplunkLive! Presentation - Data Onboarding with SplunkSplunkLive! Presentation - Data Onboarding with Splunk
SplunkLive! Presentation - Data Onboarding with Splunk
 
Not Big Data, AnyData
Not Big Data, AnyData Not Big Data, AnyData
Not Big Data, AnyData
 
SplunkLive! Analytics with Splunk Enterprise - Part 2
SplunkLive! Analytics with Splunk Enterprise - Part 2SplunkLive! Analytics with Splunk Enterprise - Part 2
SplunkLive! Analytics with Splunk Enterprise - Part 2
 
[@IndeedEng] Logrepo: Enabling Data-Driven Decisions
[@IndeedEng] Logrepo: Enabling Data-Driven Decisions[@IndeedEng] Logrepo: Enabling Data-Driven Decisions
[@IndeedEng] Logrepo: Enabling Data-Driven Decisions
 
Analytics with splunk - Advanced
Analytics with splunk - AdvancedAnalytics with splunk - Advanced
Analytics with splunk - Advanced
 

More from Splunk

.conf Go 2023 - Data analysis as a routine
.conf Go 2023 - Data analysis as a routine.conf Go 2023 - Data analysis as a routine
.conf Go 2023 - Data analysis as a routineSplunk
 
.conf Go 2023 - How KPN drives Customer Satisfaction on IPTV
.conf Go 2023 - How KPN drives Customer Satisfaction on IPTV.conf Go 2023 - How KPN drives Customer Satisfaction on IPTV
.conf Go 2023 - How KPN drives Customer Satisfaction on IPTVSplunk
 
.conf Go 2023 - Navegando la normativa SOX (Telefónica)
.conf Go 2023 - Navegando la normativa SOX (Telefónica).conf Go 2023 - Navegando la normativa SOX (Telefónica)
.conf Go 2023 - Navegando la normativa SOX (Telefónica)Splunk
 
.conf Go 2023 - Raiffeisen Bank International
.conf Go 2023 - Raiffeisen Bank International.conf Go 2023 - Raiffeisen Bank International
.conf Go 2023 - Raiffeisen Bank InternationalSplunk
 
.conf Go 2023 - På liv og død Om sikkerhetsarbeid i Norsk helsenett
.conf Go 2023 - På liv og død Om sikkerhetsarbeid i Norsk helsenett .conf Go 2023 - På liv og død Om sikkerhetsarbeid i Norsk helsenett
.conf Go 2023 - På liv og død Om sikkerhetsarbeid i Norsk helsenett Splunk
 
.conf Go 2023 - Many roads lead to Rome - this was our journey (Julius Bär)
.conf Go 2023 - Many roads lead to Rome - this was our journey (Julius Bär).conf Go 2023 - Many roads lead to Rome - this was our journey (Julius Bär)
.conf Go 2023 - Many roads lead to Rome - this was our journey (Julius Bär)Splunk
 
.conf Go 2023 - Das passende Rezept für die digitale (Security) Revolution zu...
.conf Go 2023 - Das passende Rezept für die digitale (Security) Revolution zu....conf Go 2023 - Das passende Rezept für die digitale (Security) Revolution zu...
.conf Go 2023 - Das passende Rezept für die digitale (Security) Revolution zu...Splunk
 
.conf go 2023 - Cyber Resilienz – Herausforderungen und Ansatz für Energiever...
.conf go 2023 - Cyber Resilienz – Herausforderungen und Ansatz für Energiever....conf go 2023 - Cyber Resilienz – Herausforderungen und Ansatz für Energiever...
.conf go 2023 - Cyber Resilienz – Herausforderungen und Ansatz für Energiever...Splunk
 
.conf go 2023 - De NOC a CSIRT (Cellnex)
.conf go 2023 - De NOC a CSIRT (Cellnex).conf go 2023 - De NOC a CSIRT (Cellnex)
.conf go 2023 - De NOC a CSIRT (Cellnex)Splunk
 
conf go 2023 - El camino hacia la ciberseguridad (ABANCA)
conf go 2023 - El camino hacia la ciberseguridad (ABANCA)conf go 2023 - El camino hacia la ciberseguridad (ABANCA)
conf go 2023 - El camino hacia la ciberseguridad (ABANCA)Splunk
 
Splunk - BMW connects business and IT with data driven operations SRE and O11y
Splunk - BMW connects business and IT with data driven operations SRE and O11ySplunk - BMW connects business and IT with data driven operations SRE and O11y
Splunk - BMW connects business and IT with data driven operations SRE and O11ySplunk
 
Splunk x Freenet - .conf Go Köln
Splunk x Freenet - .conf Go KölnSplunk x Freenet - .conf Go Köln
Splunk x Freenet - .conf Go KölnSplunk
 
Splunk Security Session - .conf Go Köln
Splunk Security Session - .conf Go KölnSplunk Security Session - .conf Go Köln
Splunk Security Session - .conf Go KölnSplunk
 
Data foundations building success, at city scale – Imperial College London
 Data foundations building success, at city scale – Imperial College London Data foundations building success, at city scale – Imperial College London
Data foundations building success, at city scale – Imperial College LondonSplunk
 
Splunk: How Vodafone established Operational Analytics in a Hybrid Environmen...
Splunk: How Vodafone established Operational Analytics in a Hybrid Environmen...Splunk: How Vodafone established Operational Analytics in a Hybrid Environmen...
Splunk: How Vodafone established Operational Analytics in a Hybrid Environmen...Splunk
 
SOC, Amore Mio! | Security Webinar
SOC, Amore Mio! | Security WebinarSOC, Amore Mio! | Security Webinar
SOC, Amore Mio! | Security WebinarSplunk
 
.conf Go 2022 - Observability Session
.conf Go 2022 - Observability Session.conf Go 2022 - Observability Session
.conf Go 2022 - Observability SessionSplunk
 
.conf Go Zurich 2022 - Keynote
.conf Go Zurich 2022 - Keynote.conf Go Zurich 2022 - Keynote
.conf Go Zurich 2022 - KeynoteSplunk
 
.conf Go Zurich 2022 - Platform Session
.conf Go Zurich 2022 - Platform Session.conf Go Zurich 2022 - Platform Session
.conf Go Zurich 2022 - Platform SessionSplunk
 
.conf Go Zurich 2022 - Security Session
.conf Go Zurich 2022 - Security Session.conf Go Zurich 2022 - Security Session
.conf Go Zurich 2022 - Security SessionSplunk
 

More from Splunk (20)

.conf Go 2023 - Data analysis as a routine
.conf Go 2023 - Data analysis as a routine.conf Go 2023 - Data analysis as a routine
.conf Go 2023 - Data analysis as a routine
 
.conf Go 2023 - How KPN drives Customer Satisfaction on IPTV
.conf Go 2023 - How KPN drives Customer Satisfaction on IPTV.conf Go 2023 - How KPN drives Customer Satisfaction on IPTV
.conf Go 2023 - How KPN drives Customer Satisfaction on IPTV
 
.conf Go 2023 - Navegando la normativa SOX (Telefónica)
.conf Go 2023 - Navegando la normativa SOX (Telefónica).conf Go 2023 - Navegando la normativa SOX (Telefónica)
.conf Go 2023 - Navegando la normativa SOX (Telefónica)
 
.conf Go 2023 - Raiffeisen Bank International
.conf Go 2023 - Raiffeisen Bank International.conf Go 2023 - Raiffeisen Bank International
.conf Go 2023 - Raiffeisen Bank International
 
.conf Go 2023 - På liv og død Om sikkerhetsarbeid i Norsk helsenett
.conf Go 2023 - På liv og død Om sikkerhetsarbeid i Norsk helsenett .conf Go 2023 - På liv og død Om sikkerhetsarbeid i Norsk helsenett
.conf Go 2023 - På liv og død Om sikkerhetsarbeid i Norsk helsenett
 
.conf Go 2023 - Many roads lead to Rome - this was our journey (Julius Bär)
.conf Go 2023 - Many roads lead to Rome - this was our journey (Julius Bär).conf Go 2023 - Many roads lead to Rome - this was our journey (Julius Bär)
.conf Go 2023 - Many roads lead to Rome - this was our journey (Julius Bär)
 
.conf Go 2023 - Das passende Rezept für die digitale (Security) Revolution zu...
.conf Go 2023 - Das passende Rezept für die digitale (Security) Revolution zu....conf Go 2023 - Das passende Rezept für die digitale (Security) Revolution zu...
.conf Go 2023 - Das passende Rezept für die digitale (Security) Revolution zu...
 
.conf go 2023 - Cyber Resilienz – Herausforderungen und Ansatz für Energiever...
.conf go 2023 - Cyber Resilienz – Herausforderungen und Ansatz für Energiever....conf go 2023 - Cyber Resilienz – Herausforderungen und Ansatz für Energiever...
.conf go 2023 - Cyber Resilienz – Herausforderungen und Ansatz für Energiever...
 
.conf go 2023 - De NOC a CSIRT (Cellnex)
.conf go 2023 - De NOC a CSIRT (Cellnex).conf go 2023 - De NOC a CSIRT (Cellnex)
.conf go 2023 - De NOC a CSIRT (Cellnex)
 
conf go 2023 - El camino hacia la ciberseguridad (ABANCA)
conf go 2023 - El camino hacia la ciberseguridad (ABANCA)conf go 2023 - El camino hacia la ciberseguridad (ABANCA)
conf go 2023 - El camino hacia la ciberseguridad (ABANCA)
 
Splunk - BMW connects business and IT with data driven operations SRE and O11y
Splunk - BMW connects business and IT with data driven operations SRE and O11ySplunk - BMW connects business and IT with data driven operations SRE and O11y
Splunk - BMW connects business and IT with data driven operations SRE and O11y
 
Splunk x Freenet - .conf Go Köln
Splunk x Freenet - .conf Go KölnSplunk x Freenet - .conf Go Köln
Splunk x Freenet - .conf Go Köln
 
Splunk Security Session - .conf Go Köln
Splunk Security Session - .conf Go KölnSplunk Security Session - .conf Go Köln
Splunk Security Session - .conf Go Köln
 
Data foundations building success, at city scale – Imperial College London
 Data foundations building success, at city scale – Imperial College London Data foundations building success, at city scale – Imperial College London
Data foundations building success, at city scale – Imperial College London
 
Splunk: How Vodafone established Operational Analytics in a Hybrid Environmen...
Splunk: How Vodafone established Operational Analytics in a Hybrid Environmen...Splunk: How Vodafone established Operational Analytics in a Hybrid Environmen...
Splunk: How Vodafone established Operational Analytics in a Hybrid Environmen...
 
SOC, Amore Mio! | Security Webinar
SOC, Amore Mio! | Security WebinarSOC, Amore Mio! | Security Webinar
SOC, Amore Mio! | Security Webinar
 
.conf Go 2022 - Observability Session
.conf Go 2022 - Observability Session.conf Go 2022 - Observability Session
.conf Go 2022 - Observability Session
 
.conf Go Zurich 2022 - Keynote
.conf Go Zurich 2022 - Keynote.conf Go Zurich 2022 - Keynote
.conf Go Zurich 2022 - Keynote
 
.conf Go Zurich 2022 - Platform Session
.conf Go Zurich 2022 - Platform Session.conf Go Zurich 2022 - Platform Session
.conf Go Zurich 2022 - Platform Session
 
.conf Go Zurich 2022 - Security Session
.conf Go Zurich 2022 - Security Session.conf Go Zurich 2022 - Security Session
.conf Go Zurich 2022 - Security Session
 

Recently uploaded

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 

Recently uploaded (20)

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 

Duke at SplunkLive! Charlotte

  • 1. Splunk@Duke Presented by: Jeremy Hopkins, Sr. IT Analyst
  • 2. Agenda Introductions Early Operational Usage and Reactive Analysis Moving from Reactive to Proactive
  • 3. • 15,000 Students • 3,300 Faculty • 36,000 Staff • Total of 68,000+ Active Users • University and Medical Center • Worldwide Presence
  • 4. Splunk @ Duke University 200+ Indices & Sourcetypes • Syslog • OS (Win & *nix) • Web • Network • IPS/IDS/Firewall • Shibboleth • Mail • LDAP • VPN • Many More Departments & Uses • IT Security Office • System Admin • Messaging • Network • Database • Emergency Notification Tracking • Departmental IT Groups • Many uses by many groups
  • 5. Forwarders set to "autoLB = true" Distributed Search Indexing Tier • 4 x Indexer • 5 TB local storage each Collection Tier • Various systems with forwarders • Syslog aggregator w/ Universal Forwarder for syslog events Search Tier • 2 x Search Head • Search Head Pooling enabled • Looking forward to Clustering LS Shared License • Department quotas Department Instance • Multiple "all-in- one" instance for different department needs Splunk @ Duke University
  • 6. But I barely know you… “Who has authenticated the most in the last hour?” --Your Manager These questions become distractions, because we know it isn’t just one question… Where are the users logging in from? Where is SPAM coming from? Where is legit mail coming from? Log analysis from a shell prompt using the ancient sysadmin combo of: grep | awk | sort | uniq grep sasl_username logfile | awk '{print $9}' | sort | uniq -c | sort -n | tail -5 7 sasl_username=user1@oit.duke.edu 7 sasl_username=user2@oit.duke.edu 8 sasl_username=user3@oit.duke.edu 10 sasl_username=user4@oit.duke.edu 58 sasl_username=user5@oit.duke.edu
  • 7. Dashboards to the Rescue Top 10 SMTP Logins using previous search example
  • 8. Take NULL locations and puts a custom label on them Creates a Location label such as “Charlotte, NC” instead of a column for city and state. Top SMTP Logins Finds SMTP logins and builds a table with username, login count, and location eventtype=smtpauth | iplocation client_ip | eval Location= if(CountryCode == "US",if(City=="",if(Region=="","Unknown Location, "+Country,Region),if(Region=="",City+", ?? "+Country,City+", "+Region)),if(City=="",Country,City+", "+Country)) | eval Location= if(isnotnull(Location), Location, if(cidrmatch(”10.0.0.0/8",client_ip), "Duke - Private”, client_ip ) ) | stats values(Location) count(netid) by netid | rename … | table netid Count Location | sort - Count
  • 9. Event types – SMTP Auth Converted to a Splunk eventtype  index=mail host=mail* process=postfix/smtpd sasl_username=* – Duke created event types for various login events from various sources:  VPN – eventtype=vpnlogin index=network sourcetype=vpn vpn_user=* vpn_inner_ipv4=* vpn_source_ip=*  Shibboleth (single sign on) - eventtype=shiblogin index=idms_shib sourcetype=idp-process (shib_success=“[password]” OR SSO=“true”)
  • 10. Play nicely with others In theory, we can join the various login types together to find all login events – eventtype=dukelogin is defined with the following search  eventtype=vpnlogin OR eventtype=smtpauth OR eventtype=shiblogin Event types allow others to use your logs without knowing the specifics of your application aka: Collaboration
  • 12. Fun with Maps Source of the mail we accepted as “not spam”
  • 13. Guess Where our Spam Originates…
  • 14. Was this really a DDOS? | inputlookup ddos_20150123.csv | geoip src_ip
  • 15. Neat, but how did it help? • Plotting mail sources on maps provided a visual for management which allow implementation of geographically isolated mail flow and acceptance rules • Dashboards and eventtypes allowed the ITSO to quickly see account abuse and provided the groundwork for collaboration with other teams
  • 16. And then this happened… Phishing to Fraud • Phish targeting 600+ faculty/staff • Typical phish emails (nothing overly sophisticated) – Pay Raise, Login Verification, etc. – Cloned Login Page • Compromised accounts used to access HR/Payroll sites • After successful login, bank routing numbers for direct deposit changed • Reports of monthly salaries not received Source: The News & Observer
  • 17. Example of Phishing Email Received Clicking here leads to URL on next slide A pay rise… interesting.
  • 18. Link from Phish in Previous Slide Believe it or not, Duke does not own nl- tour.ru
  • 19. Gone phishin’ Example of Dashboard to Record Email into Phish Tracking Lookup Table Search Duration Actual Subject of Email How we identify a particular campaign Your DUKE Pay Increase Pay Increase - 20141006 Adds to PhishList lookup table
  • 20. User Lookup in the PhishList | inputlookup PhishList.csv | search To=dukeuser@duke.edu
  • 21. Phishing DashboardAggregate of PhishList Data with Search Panel
  • 22. Once the Bleeding Stopped… • How do we utilize Splunk to become more proactive? 1. Look for “non-Duke” IPs with multiple user logins to HR/Payroll system 2. Non-Duke IPs with multiple user logins regardless of destination 3. Query the number of cities an account has logged in from in past 24 hrs 4. Query the number of countries an account has logged in from in past 24 hrs
  • 23. • Multiple Iterations of Direct Deposit Phish • Team moves forward from authentication only investigations • Chum Accounts to help locate attackers early This type of visibility into logs just did not exist for the ITSO prior to Splunk The Fight Continues… It becomes organizational, and not just the responsibility of security • App developments • MFA
  • 26. Example Using Radio Buttons <fieldset> <input type="text" token="search_netid"> <label>NetID</label> <suffix/> </input> <input type=”radio” token=”mail_button”> <label>Mail Logins</label> <default>YES</default> <choice value=”index=mail”>YES</choice> <choice value=”index=NONESUCH”>NO</choice> </input> <input type="time"> <default>Last 7 days</default> <label>Time</label> </input> <fieldset> ~ <searchString>$mail_button$ host=”mail-gw-*” user=$search_netid$</searchString>
  • 27. Example of Combining Details Using Case | eval combined_event_type=case( isnotnull( vpn_login ), “VPN Login”, isnotnull( sasl_username ), “Email”, match( event_action, “lock” ), “Account Lock”, match( event_action, “unlock” ), “Account Unlock”, isnotnull( clientip ) AND isnotnull( user ), “WEB HIT”, 1=1, “-” )
  • 28. Benefits of Splunk to Duke • Splunk allowed Duke to begin leveraging multiple data sources almost immediately with very little ramp up time • Detailed information on recipients of phishing messages is now available to Security in minutes instead of hours • Splunk has allowed Duke to more than double the number of compromised accounts we detect and lock each month • Splunk provided the ability to create a custom SIEM like solution tailored to Duke’s needs
  • 29. • Use Splunk to bridge the gap between teams and log knowledge • Use event types, macros, and saved searches to make your long crazy searches usable by others • Use the eval command to create custom algorithms • Continue to educate your users about Phishing Key Takeaways
  • 30. Thanks for Listening! Email: Jeremy.Hopkins@duke.edu Socials: hopkeno Lets Go Duke!

Editor's Notes

  1. Good Morning! I’m Jeremy Hopkins and I’ve been asked to speak to you about how Duke University has leveraged Splunk in our environment.
  2. While Duke’s use of Splunk is much more intensive than what we’ll discuss in this presentation, here’s the agenda for this morning. We’ll go through the Intros and “Abouts”, then move on to Duke’s early operational use of Splunk for reactive analysis. And finally give you a glimpse of where we are today as we’ve moved, and continue to move from reactive to proactive.
  3. For you Architect and Infrastructure folk, here’s a look at our deployment. Starting at the bottom we have about 3000 forwarders sending to 4 core indexers. At the top we have 2 pooled search heads. We split the license between the University and the Medical Center with DU using about 200GB/day of our 250GB portion. Additionally, we have about 16 departmental instances.
  4. Prior to splunk, we answered questions with long command lines and/or scripts of one flavor or another. While this works, it can be limiting, and not easily digestible by management.
  5. Example of our Top 10 Logins table using custom built “Location” field that contains GeoIP Data and Duke specific labels
  6. This search is really application independent because the heavy lifting is done in the event type. What’s unique about this search is the eval to put a combined and/or custom location label in the table instead of columns for City, State, Country, etc. The first eval says: If the Country Code is US then the Location should show as City, Region (state), otherwise the Location should be City and Country. The second eval looks for a null Location value and assesses it for our private IP space. If the IP matches our private space (10.0.0.0/8) then we set the location to a custom label.
  7. Example of eventtypes. We noticed that we were doing the same types of searches over and over again. These searches produced results that were a type of event or action, such as a login, but weren’t usually specific. Ie: show me all logins in application X. So we created event types these, Mail, VP, and another for our Single Sign On system (Shibboleth).
  8. We then created a rollup eventtype of “dukelogin” which is simply a search of the various login eventtypes: vpn, smtp, and shib
  9. It was about this point where this xkcd comic really was how we felt. Not so much the elaborate fantasy scenarios, though some in mgmt did come up with some pretty radical scenarios they wanted us to tackle, but more so that we could swing in, splunk a few things, and swing out into the sunset as a hero.
  10. So, we had some fun with maps! What this map tells us is that most of the mail we accept and consider legit originates from the US.
  11. This is the inverse of our previous example. It shows the locations where we block mail or drop it as Spam. The combination of this map and the previous map were used to sell to management that we needed to treat inbound mail originating from different places differently. As a result, we implemented a geoip based mail system that enforces much stricter connection rates and delivery limits from non-United States based IP addresses.
  12. Mid-January we underwent a DDOS attack. I don’t have my load balancer connection data readily available to Splunk, but I was able to grab a snapshot of the connection table from the load balancer. Think of this similar to a netstat. I took this data, and parsed out the connecting IP addresses that had idle/abandoned connections to the site being attacked and fed that into the Google Maps app in Splunk. The result is a nice map that shows where these connections originated from. This is a good example of a way you can leverage splunk to present raw data visually.
  13. What had we learned thus far?
  14. http://www.newsobserver.com/2014/01/07/3512350/email-scam-nets-thieves-a-months.html (Jan) Original phish on 11/19/13 First direct deposit issues reported after December pay period (early Jan) Add’l attacks occurred between Jan-Mar and then again resurfaced in July http://www.newsobserver.com/2014/07/22/4021696_duke-warns-workers-of-email-scam.html?rh=1 (July)
  15. Screen shot of Phishing Dashboard. Email Subject is the subject of the email you are search for. Phish Name is an arbitrary label that we will use to identify the phishing message. The Add to PhishList button exports the results of the search to a Splunk Lookup Table for ingestion by our Security Office.
  16. Example of searching the PhishList by To address. The columns you see here unpopulated “affiliation” and “netid” are filled for actual users based on other lookup tables that we keep about our users.
  17. The Phishing Dashboard pulls in statistics about the unique phishing messages and also allows for a quick user search to see which messages a specific user has received. The bottom of the dashboard compares data from another lookup table which contains a list of direct deposit changes. It looks for users that have had their Direct Deposit info changed after receiving a phishing message. This Direct Deposit Search was the first visualization of the data, but a very rudimentary way of detecting these events. The Messaging folks then punted to the IT Security Office.
  18. At this stage we begin asking questions about what we can do w/ this new visibility of Shib and web logs. We then developed some saved searches and reports to monitor these things and called it a high risk report. That report included answers to the questions here, but also incorporated the information we had been collecting about who was receiving phish messages and who has had their direct deposit changed.
  19. During Q1, we saw multiple iterations of DD phish, which helped us tweak our Splunk use One of the 1st changes, utilize Web Hits, not relying specifically on authentication logins just b/c someone logged into the site, doesn’t mean they went to the specific page for DD changes Additionally, web logs have referrer info – now we can see IP info of attackers who’ve cloned our SSO page plus we can look for our users visiting the cloned page -- lock accounts Lastly, we begin using Chum accts to look track attacker activity App developers made changes to help thwart fraud and MFA became a much higher priority across campus
  20. User Investigation form in use today.