EGI CSIRT:Security challenges
- 1 Security challenges: what is it about ?
- 1.1 Scenario: Stolen Credentials
- 1.2 Security challenges: what is expected from sites ?
- 1.3 Scope of the SSC / Information to be gathered at the sites
- 1.4 For an initial response and first directions try to find answers to the following questions
- 1.5 What is the normal security incident response procedure?
- 1.6 Scores, Evaluation - Report generation
- 1.7 Post processing, clean up
- 1.8 SSC Evaluation Form
- 2 De-briefing
Security challenges: what is it about ?
The goals of the security drills are:
- to investigate whether sufficient information is available to be able conduct an audit trace as part of an incident response, and to ensure that appropriate communications channels are available.
- to assess the incident response capabilities of the involved security teams.
- to evaluate the efficiency of the various incident response operations aiming at containment.
- trigger and improve the collaboration of the full incident response chain, involving security teams from the RCs, NGIs, EGI, VOs and CAs.
Scenario: Stolen Credentials
A common problem in distributed environments is that user credentials get compromised resulting in illicit usage of resources.
This might happen as a result of brute force attacks on weak passwords, lost/stolen hardware, phishing, or following an earlier incident where this data was harvested by the attacker. In addition, in the Cloud environment, we rather often see that users choose insecure (default) configuration for services they install or introduce other vulnerabilities which are then quickly exploited by automated attacks constantly targeting all systems connected to the internet.
Stolen or brute forced (ssh) credentials in distributed environments carry the additional risk that such incidents can spread rapidly, affecting multiple resource centres in multiple countries. Therefore proper access management is crucial in incident response. In the EGI infrastructure access to resources is usually controlled based on x509 certificates.
x509 access management can happen on different levels, each action has a certain delay until it takes effect and a certain scope.
- Resource Center / Service level, immediately, bans the user at the RC/Service
- Suspend DN at VOMS, up to 1 week, already issued voms-proxies remain valid, no new proxies will be issued. Scope VO wide, certificate could also be used within other VOs.
- CA revokes certificate, takes effect when the new CRLs are loaded to the services, up to 48 hours, globally. Certificate will not be accepted at an service.
- The FedCloud user management may not be fully integrated in the central suspension and therefore requires some manual intervention of the RC admins to make sure that the DN in question can not access the interfaces to start/stop/delete VMs.
Since suspending at the RC service level is immediately effective it is crucial that the RC security teams, as well as the VO security teams, managing the access to their resources are trained to suspend a reported malicious certififcate DN on all of there systems, to stop all running processes related to that DN, and to trace back a IP/VM to the controlling DN.
At the same time the state of the VM in question should be preserved for later investigation and further access to it suspended.
Security challenges: what is expected from sites ?
The sites contacted for a challenge are asked to follow the normal security incident response procedure, and react as if the incident was real, with the two following exceptions:
1. No sanctions must be applied against the Virtual Organization (VO) that was used to submit the job / start the VM. 2. All "multi-destination" alerts must be addressed to the e-mail list which has been designated for the test: abuse(at)egi.eu for Security Service Challenges. Instead, insert the originally intended "multi-destination" address(es) in the body of your message. Make sure to have the string: [SSC] in the subject of the message.
Scope of the SSC / Information to be gathered at the sites
In this challenge the following basic Incident Response activities will get evaluated:
- Communications: Provide in time information to be used in Incident Response
- Suspend DNs from accessing, starting, deleting a VM
- Snapshot a live VM associated to a reported IP, including its memory
- IP based, given a time-stamp and an IP, find a DN using a VM under the IP in question.
- DN based: given a DN, find the IPs associated to VMs running under the DN in question
- Network connections of IP in time range X
For an initial response and first directions try to find answers to the following questions
- Are there any other suspicious connections open to/from a reported IP or jobs running under a reported DN? If so, to which IPs? - What are the DNs associated to the reported IP?
- If possible suspend - From where (IPs) were the jobs submitted? - From where (IPs) did l. - To which VO is the user/certificate affiliated? - Which grid-certificates (DN) are involved in this test-incident? # Example: DN-1: CN=John Doe, O=<SomeInstitute>,O=<Something>, ..." - Since when were the VM running? # Example: YYYY:MM:DD hh:mm Date:
The sites should provide the security teams asap with this information at the latest within one working day. The time needed to pass this information to EGI-CSIRT by replying to the alarm mail will be measured and evaluated.
What is the normal security incident response procedure?
Please try to follow this procedure where possible, and note/report any problems with it
PLEASE REMEMBER THAT FOR THE CHALLENGE THE PROCEDURE IS APPLIED WITH RESTRICTIONS AS STATED IN THE PREVIOUS SECTION. For questions please contact: ssc(at)mailman.egi.eu
More informations about EGI security procedures ( flowchart, formal document, forensic howto ... ) can be found here : https://wiki.egi.eu/wiki/EGI_CSIRT:Policies
Please also visit our Forensic Howto wiki pages. If you want to contribute, just send your input to irtf(at)mailman.egi.eu.
Scores, Evaluation - Report generation
We distinguish between
1) Measurable per site operations (with target times):
- initial feedback: 4h
- found malicious job/processes/stop them: 4h
- ban problematic certificate: 4h
- contain the malicious binary and sent it to the incident-coordinator: 24h
These will be measured by the ssc-monitor and the scores the sites get are calculated according to the formula stated on the wiki page. Times are relative to the timestamp in the alarm ticket sent to the site, we try to make sure that the alarms will be send during office-hours (09:00 - 18:00, local time).
and 2) per site Forensic operations:
- all sites will receive "malware" with unique per site artifacts like UUIDs, URLs, IPs etc finding them may require more advanced forensic operations, like memory analysis. These findings should be reported to IRTF within the ssc incident ticket as soon as they are found.
The reported artifacts will be extracted from the transactions in the ticket. The available scores will decrease over time.
Post processing, clean up
As part of the incident handling, Grid authorizations may have been withdrawn from the DN that was used to submit the job. When the incident response procedure is complete, the test operator will explicitly request restoration of any such authorizations to their original state.
SSC Evaluation Form
When the challenge has been completed on a representative number of Sites, the test operator will ask for de-briefing input from the participating Sites. Material submitted will be used to edit a report. The report will be circulated to the contributors for comments before being presented to the EGI-CSIRT.
Communication Template Debriefing
Dear all, thank you for your contributions to the SSC-19.03 This message is about to inform you that the SSC-19.03 is now over. You should receive the site report the next days. As a clean-up step we would now ask the challenged sites to restore eventually banned credentials, in particular: CN=Amelie Caillet, CN=700993, CN=acaillet, OU=Users, OU=Organic Units, DC=cern, DC=ch and CN=Cindy Denis, CN=759002, CN=cidenis, OU=Users, OU=Organic Units, DC=cern, DC=ch
Remark: Not sure if it is worth to also ask them to clean up the worker nodes where the payload ran. This should have happened meanwhile automatically, the sites where we saw long living bots got informed to kill them (in May ;-))