About Me – Abhisek Datta • Head of Technology (appsecco.com) • A boutique security consulting company • TechWing @ null0x00 (null.co.in) • An Open Security Community • Security Researcher • Discovered vulnerabilities in MS Office, Internet Explorer, HP SiteScope etc. • Open Source Contributor • Wireplay, RbWinDBG etc. github.com/abhisek
Attackers Attack What They See • Real world examples? • Equifax • Accenture • LinkedIN • Verizon Name any major company and its probably breached once!
• We react to security issues • Complexity • Lack of visibility • Lack for formal security testing methodology especially for infrastructure What is the root cause? (In my opinion) We REACT to Security Issues
How does trust looks like? A DFD representing the Transaction Flow in an Online Banking Application Re-auth Anti- fraud Confirm with sender for high value transactions
How do we solve this? (My Opinion) • Instead of responding to vulnerabilities, we must proactively prevent them .. Continuously • We do this by applying the principles of Secure Software Development Life-cycle while building Infrastructure
What is it? • The process of provisioning and managing infrastructure through machine readable code & configuration • It is an alternative approach compared to managing physical hardware and provisioning them with interactive setup and configuration tools
The Tooling with an Example 1. Setup 3 EC2 instances in AWS 2. Setup an EFS for shared state 3. Deploy workload 4. Get output 5. Destroy https://github.com/abhisek/afl-in-the-cloud Image Source: https://docs.microsoft.com/en-us/azure/devops/learn/what-is-infrastructure-as-code
Now what? • Add security controls (mitigations) in architecture • Edit code to include the required resources and configuration • Push to repository • This triggers CI/CD • CI/CD runs test cases on code (if any) • CI/CD update the live infrastructure