SlideShare a Scribd company logo
STOBDHO MASUK
Recruitment process @OWASP?
● Because this system is web application (partially)
● Because we based (100%) on FOSS (open-source)
● Because security matters
● Because OWASP people cares about security and can affect recruitment processes (hopefully) ;)
Recruitment
● Lot of recruitment agencies / services
● Huge number of potential candidates
● Whole team is involved in recruitment
● Candidate evaluation takes really lot of time
SysAdmin / Operations
● He is sysop, developer, QA and network specialist
● Also great for performance tuning
● Responsible for critical data (all data)
● Easy handles moving UPSes between racks ;)
● Anytime day / night understands what you’re talking to him
● Everything he does respects high security standards
● Loves playing games (do you know sysop that doesn’t play)? ;)
Let’s play then
● Any idea? Not Quake / Diablo / Warcraft ;)
● pythonchallenge.com, wechall.net – CTFs are great!
● trueability.com – event for sysops
● So maybe CTF / challenge?
● Such system would have to fulfill some requirements:
● Optimization of recruitment process time
● Minimisation of the risk of rejecting good candidate
● Draw attention as very interesting (you like mindfscks?)
Let's start the ball rolling
Stage 1 – simple task
Stage 2 – call/social.eng.
Stage 3 – challenge
Application Problem: huge candidates number (>100)
Target: reject not suitable cands (>80% rejections!)
Target: recognition, manipulation
Global Thermonuclear War ;)
Stage 1 – telnet / SMTP
RFC-821/1869:
HELO/EHLO ??.....??
GPG us ur CV using
http://..../gpg.asc
Lack of GPG knowledge :(
RTFM!
Stage 1 – telnet / SMTP
RFC-821/1869:
HELO/EHLO my.hostname
1 trap – not server’s hostname
but client’s (90% catched)
GPG us ur CV using
http://..../gpg.asc
Lack of GPG knowledge :(
RTFM!
Stage 1 – node.js
● At the beginning – pure C server. After 3am.. Node.js (simplicity) ;)
● What’s wrong with node.js?
● http://seclists.org/bugtraq/ - 0 hits
● http://osvdb.org/ - 2 hits
● http://1337day.com/, http://www.exploit-db.com/ - 1 hit
● https://nodesecurity.io/advisories - 4 hits
● Does it mean that node.js is safe & secure?
Node.js – how it works?
http://magnetik.github.io/
- Event driven
- Event loop
- Callbacks
- SPA, async, REST, Json
Node.js - threats
● no logging
● No error handling - DoS
● No configuration – “+” or “-”?
● No filters checking user-input
● JS: function as a variable
● Evil eval(code). Server-side XSS
● setInterval(code,2), setTimeout(code,2), str = new Function(code)
● Moduły npm – who creates those?
............................................________
....................................,.-'"...................``~.,
.............................,.-"..................................."-.,
.........................,/...............................................":,
.....................,?......................................................,
.................../...........................................................,}
................./......................................................,:`^`..}
.............../...................................................,:"........./
..............?.....__.........................................:`.........../
............./__.(....."~-,_..............................,:`........../
.........../(_...."~,_........"~,_....................,:`........_/
..........{.._$;_......"=,_......."-,_.......,.-~-,},.~";/....}
...........((.....*~_......."=-._......";,,./`..../"............../
...,,,___.`~,......"~.,....................`.....}............../
............(....`=-,,.......`........................(......;_,,-"
............/.`~,......`-...................................../
.............`~.*-,.....................................|,./.....,__
,,_..........}.>-._...................................|..............`=~-,
.....`=~-,__......`,.................................
...................`=~-,,.,...............................
................................`:,,...........................`..............__
.....................................`=-,...................,%`>--==``
........................................_..........._,-%.......`
Node.js – evil eval()
This way we added new functionality to the server during runtime!
http://node.js/myurl
Node.js – evil eval()
Node.js - npm
https://blog.nodejitsu.com/npm-innovation-through-modularity
Amount of npm
modules in the time
Amount of
npm-mods/day
comparison to
node.js and others
Node.js – how can?
● Use frameworks: https://npmjs.org/ - carefully
● Npm modules are not validated! Check those: https://nodesecurity.io
● Watch module dependencies!
● must have: your own error handling & logging
● This is server – we need proper server security solutions:
● Monitoring – think how to monitor your app
● Control-groups – set limits for resources
● SELinux sandbox
Node.js – SELinux sandbox
●'home_dir' and 'tmp_dir'
● App can r/w from std(in|out) + only defined FDs
● No network access
● No access to foreign processes / files
● We can easily connect sandbox with cgroups :)
● Helpful: semodule -DB (no dontaudit)
● grep XXX /var/log/audit/audit.log | audit2allow -M node.sandbox
● semodule -i node.sandbox.pp
Node.js – SELinux sandbox
Node.js – how can #2
● Freeze node.js version per project?
● Let’s read & learn:
● https://media.blackhat.com/bh-us-11/Sullivan/BH_US_11_Sullivan_Server_Side_WP.pdf
● http://lab.cs.ttu.ee/dl91
● https://github.com/toolness/security-adventure
● Pseudo–configuration – set limits in your code (e.g. POST size)
● try...catch ftw
● use strict; - helps even with eval case (partially)
● Bunyan / dtrace: https://npmjs.org/package/bunyan
● node.js OS? Oh and use / build node.js packages (fpm or whatever)
Stage 2 – social engineering
● Stage’s target is to verify & check candidate’s security awareness
● Christopher Hadnagy – SE framework (2k10):
● http://www.social-engineer.org/framework/Social_Engineering_Framework
● Everyone can act as recruiter and call anyone
● Building network / connections on Linkedin is very easy
● Trust (lingo, easiness in some env: research)
● Sysop knows really much about env – he’s good target
● So one has to only get sysop’s trust and decrease his carefulness
Stage 3 - virtualization
● Our needs?
● Boot process supervision
● Console access
● Resource management
● Redundant storage
● Rescue mode for VMs
● Security by default
> AWS
> KVM/libvirt
> XEN/libvirt
> LXC
Stage 3 - virtualization
boot console resources
mgmt.
redundant
storage
rescue VM security
Stage 3 - virtualization
VS
Performance XEN/HVM or KVM?
Stage 3 - virtualization
VS
We had great performance issues with XEN/HVM
The winner is „hat in the red” and its PV
(but with the cgroups help – under heavy load KVM is
not that stable)
Performance XEN/HVM or KVM?
Stage 3 – network security
DMZ (Demilitarized Zone) – logical or physical partition
https://en.wikipedia.org
Stage 3 – network security
https://en.wikipedia.org
DMZ (Demilitarized Zone) – logical or physical partition
Stage 3 – network security
● Separated, dedicated DMZ (VLAN?) for host
● No routing / communication from this DMZ with other segments
● Low – cost solutions?
● OpenWRT / DDWRT way || Pure Linux server
● 802.1Q – VLANs
Stage 3 – network security
● Network isolation on KVM host:
● Host/network bridge: L2 switch
● netfilter / nwfilter (IBM)
● By default there’s no packets isolation in the bridged network - ebtables
null, no filtering
● ebtables – filtering l2– so we gain isolation
● Or virsh nwfilter-list
● allow-arp,dhcp,dhcp-server,clean-traffic, no-arp-ip-spoofing, no-arp-mac-
spoofing, no-arp-spoofing, no-ip-multicast, no-ip-spoofing, no-mac-
broadcast, no-mac-spoofing, no-other-l2-traffic
● L2 filtering? /proc/sys/net/bridge
https://www.redhat.com/archives/libvir-list/2010-June/msg00762.html
http://pic.dhe.ibm.com/infocenter/lnxinfo/v3r0m0/topic/liaat/liaatsecurity_pdf.pdf
Stage 3 –boot process, VNC
● Accessing boot process – VNC
● VNC security? SSL? Complications..
● Maybe VNC over SSH tunnel?
● Encryption
● No certificates issues
● Every admin can easily use VNC
Stage 3 – restricted shells
● SSH tunneling requires SSH access (thank You Captain Obvious!)
● SSH access is a threat per se
● Let’s limit this SSH / shell access – use restricted shells
Restricted shells by. Google ;) =>
Stage 3 – restricted shells
● Restricted shells are threat by default – unless we know how to use those!
● Under some circumstances one could escape the rshell:
https://en.wikipedia.org/wiki/Rbash
Stage 3 – restricted shells
● Rbash:
● CentOSie / RHEL approved / friendly / legit ;)
● Protects from directory traversal
● Prohibits access to files via direct path
● Prohibits setting PATH or other shell env variables
● No commands output redirection
● PATH=$HOME/bin – and reconsider 2x what to put into this „bin”
https://en.wikipedia.org/wiki/Rbash
Stage 3 – SSH tunnel / VNC
● We must go deeper!
Candidate
VM-Proxy
screen / ssh tunnel
VM host
rshell / ibsh
rshell / rbash
VNC server
Stage 3 – restricted shells
● Other restricted shells:
● rssh – allows scp, sftp, rsync
● sudosh - http://sourceforge.net/projects/sudosh
● Allows saving whole user session and replay it
● One can define allowed operations for user
● Little outdated – better use sudosh3
● Ibsh (small, fast, secure): http://sourceforge.net/projects/ibsh/
Stage 3 – control groups
● resource management in a simple way (ulimits, nice, limits.conf).. but..
● Could you set 50 IOPS for defined process?
● What about 100Kbp/s limit for particular user?
● issues with memory–leaks in Java?
Stage 3 – control groups
https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Resource_Management_Guide/ch01.html
● Debian & RHEL friendly
● Running apps in cgroup context
● Setting cgroup context for process during runtime
Stage 3 – web application
● OpenStack?
„Couple” of compliations ;) “Out of the box” – yup – I’ve heard
about that ;) Could you deploy it in a few hours – securely?
Stage 3 – web application
Commodore OS ???
Stage 3 – web application
Commodore OS Vision FTW!
Stage 3 – web application
● Apache + mod_security
● mod_security + OWASP rules
● PHP & Python :)
● Simplicity!
● VM management with simple daemon + screen:
● while(1) do: manage_VMs();
● And this just works!
Stage 3 – recording SSH sessions
● We have to record all sessions – also those under „screen”
● Real time recording
● sudosh3 (sudosh fork) – kinda proxy shell – great ;)
● auditd – lov-lewel tool for recording syscalls
● Asciinema (ascii.io, Marcin Kulik) – great one, but not for audit purposes
● Ttyrec – outdated: http://0xcc.net/ttyrec/index.html.en
● Ssh logging patch - outdated: http://www.kdvelectronics.eu/ssh-logging/ssh-logging.html
Stage 3 – data security
● What if we loose any of the VMs...? Brrr....
● Risk assesement – what would be enough for us?
● RAID1 / Mirror – “usually” is enough for a 3 – month time
● Backups – useful ;) RAID / replication are not backups...
● GlusterFS / DRBD – if you have enough resources – try it :)
LVM
Gluster brick
KVM active host
LVM
Gluster brick
KVM passive host
replication
Podsumowanie
Maciej Lasyk
http://maciek.lasyk.info
maciek@lasyk.info
Twitter: @docent_net
OWASP Poland, 2013-10-17

More Related Content

What's hot

Hacktivity 2016: Stealthy, hypervisor based malware analysis
Hacktivity 2016: Stealthy, hypervisor based malware analysisHacktivity 2016: Stealthy, hypervisor based malware analysis
Hacktivity 2016: Stealthy, hypervisor based malware analysisTamas K Lengyel
 
BSides Denver: Stealthy, hypervisor-based malware analysis
BSides Denver: Stealthy, hypervisor-based malware analysisBSides Denver: Stealthy, hypervisor-based malware analysis
BSides Denver: Stealthy, hypervisor-based malware analysisTamas K Lengyel
 
Testing CAN network with help of CANToolz
Testing CAN network with help of CANToolzTesting CAN network with help of CANToolz
Testing CAN network with help of CANToolzAlexey Sintsov
 
An Introduction to the Formalised Memory Model for Linux Kernel
An Introduction to the Formalised Memory Model for Linux KernelAn Introduction to the Formalised Memory Model for Linux Kernel
An Introduction to the Formalised Memory Model for Linux KernelSeongJae Park
 
An EyeWitness View into your Network
An EyeWitness View into your NetworkAn EyeWitness View into your Network
An EyeWitness View into your NetworkCTruncer
 
Kernel Recipes 2015 - So you want to write a Linux driver framework
Kernel Recipes 2015 - So you want to write a Linux driver frameworkKernel Recipes 2015 - So you want to write a Linux driver framework
Kernel Recipes 2015 - So you want to write a Linux driver frameworkAnne Nicolas
 
Windows 10 - Endpoint Security Improvements and the Implant Since Windows 2000
Windows 10 - Endpoint Security Improvements and the Implant Since Windows 2000Windows 10 - Endpoint Security Improvements and the Implant Since Windows 2000
Windows 10 - Endpoint Security Improvements and the Implant Since Windows 2000CTruncer
 
A Battle Against the Industry - Beating Antivirus for Meterpreter and More
A Battle Against the Industry - Beating Antivirus for Meterpreter and MoreA Battle Against the Industry - Beating Antivirus for Meterpreter and More
A Battle Against the Industry - Beating Antivirus for Meterpreter and MoreCTruncer
 
AV Evasion with the Veil Framework
AV Evasion with the Veil FrameworkAV Evasion with the Veil Framework
AV Evasion with the Veil FrameworkVeilFramework
 
Egress-Assess and Owning Data Exfiltration
Egress-Assess and Owning Data ExfiltrationEgress-Assess and Owning Data Exfiltration
Egress-Assess and Owning Data ExfiltrationCTruncer
 
Virtual Machine Introspection with Xen
Virtual Machine Introspection with XenVirtual Machine Introspection with Xen
Virtual Machine Introspection with XenTamas K Lengyel
 
Scalability, Fidelity and Stealth in the DRAKVUF Dynamic Malware Analysis System
Scalability, Fidelity and Stealth in the DRAKVUF Dynamic Malware Analysis SystemScalability, Fidelity and Stealth in the DRAKVUF Dynamic Malware Analysis System
Scalability, Fidelity and Stealth in the DRAKVUF Dynamic Malware Analysis SystemTamas K Lengyel
 
China.z / Trojan.XorDDOS - Analysis of a hack
China.z / Trojan.XorDDOS - Analysis of a hackChina.z / Trojan.XorDDOS - Analysis of a hack
China.z / Trojan.XorDDOS - Analysis of a hackhendrikvb
 
The BlackBox Project: Safely store secrets in Git/Mercurial (originally for P...
The BlackBox Project: Safely store secrets in Git/Mercurial (originally for P...The BlackBox Project: Safely store secrets in Git/Mercurial (originally for P...
The BlackBox Project: Safely store secrets in Git/Mercurial (originally for P...Tom Limoncelli
 
Turbo charge your logs
Turbo charge your logsTurbo charge your logs
Turbo charge your logsJeremy Cook
 
OffensiveCon2022: Case Studies of Fuzzing with Xen
OffensiveCon2022: Case Studies of Fuzzing with XenOffensiveCon2022: Case Studies of Fuzzing with Xen
OffensiveCon2022: Case Studies of Fuzzing with XenTamas K Lengyel
 
LAS16-211: Using LAVA V2 for advanced KVM testing
LAS16-211: Using LAVA V2 for advanced KVM testingLAS16-211: Using LAVA V2 for advanced KVM testing
LAS16-211: Using LAVA V2 for advanced KVM testingLinaro
 
The State of the Veil Framework
The State of the Veil FrameworkThe State of the Veil Framework
The State of the Veil FrameworkVeilFramework
 

What's hot (18)

Hacktivity 2016: Stealthy, hypervisor based malware analysis
Hacktivity 2016: Stealthy, hypervisor based malware analysisHacktivity 2016: Stealthy, hypervisor based malware analysis
Hacktivity 2016: Stealthy, hypervisor based malware analysis
 
BSides Denver: Stealthy, hypervisor-based malware analysis
BSides Denver: Stealthy, hypervisor-based malware analysisBSides Denver: Stealthy, hypervisor-based malware analysis
BSides Denver: Stealthy, hypervisor-based malware analysis
 
Testing CAN network with help of CANToolz
Testing CAN network with help of CANToolzTesting CAN network with help of CANToolz
Testing CAN network with help of CANToolz
 
An Introduction to the Formalised Memory Model for Linux Kernel
An Introduction to the Formalised Memory Model for Linux KernelAn Introduction to the Formalised Memory Model for Linux Kernel
An Introduction to the Formalised Memory Model for Linux Kernel
 
An EyeWitness View into your Network
An EyeWitness View into your NetworkAn EyeWitness View into your Network
An EyeWitness View into your Network
 
Kernel Recipes 2015 - So you want to write a Linux driver framework
Kernel Recipes 2015 - So you want to write a Linux driver frameworkKernel Recipes 2015 - So you want to write a Linux driver framework
Kernel Recipes 2015 - So you want to write a Linux driver framework
 
Windows 10 - Endpoint Security Improvements and the Implant Since Windows 2000
Windows 10 - Endpoint Security Improvements and the Implant Since Windows 2000Windows 10 - Endpoint Security Improvements and the Implant Since Windows 2000
Windows 10 - Endpoint Security Improvements and the Implant Since Windows 2000
 
A Battle Against the Industry - Beating Antivirus for Meterpreter and More
A Battle Against the Industry - Beating Antivirus for Meterpreter and MoreA Battle Against the Industry - Beating Antivirus for Meterpreter and More
A Battle Against the Industry - Beating Antivirus for Meterpreter and More
 
AV Evasion with the Veil Framework
AV Evasion with the Veil FrameworkAV Evasion with the Veil Framework
AV Evasion with the Veil Framework
 
Egress-Assess and Owning Data Exfiltration
Egress-Assess and Owning Data ExfiltrationEgress-Assess and Owning Data Exfiltration
Egress-Assess and Owning Data Exfiltration
 
Virtual Machine Introspection with Xen
Virtual Machine Introspection with XenVirtual Machine Introspection with Xen
Virtual Machine Introspection with Xen
 
Scalability, Fidelity and Stealth in the DRAKVUF Dynamic Malware Analysis System
Scalability, Fidelity and Stealth in the DRAKVUF Dynamic Malware Analysis SystemScalability, Fidelity and Stealth in the DRAKVUF Dynamic Malware Analysis System
Scalability, Fidelity and Stealth in the DRAKVUF Dynamic Malware Analysis System
 
China.z / Trojan.XorDDOS - Analysis of a hack
China.z / Trojan.XorDDOS - Analysis of a hackChina.z / Trojan.XorDDOS - Analysis of a hack
China.z / Trojan.XorDDOS - Analysis of a hack
 
The BlackBox Project: Safely store secrets in Git/Mercurial (originally for P...
The BlackBox Project: Safely store secrets in Git/Mercurial (originally for P...The BlackBox Project: Safely store secrets in Git/Mercurial (originally for P...
The BlackBox Project: Safely store secrets in Git/Mercurial (originally for P...
 
Turbo charge your logs
Turbo charge your logsTurbo charge your logs
Turbo charge your logs
 
OffensiveCon2022: Case Studies of Fuzzing with Xen
OffensiveCon2022: Case Studies of Fuzzing with XenOffensiveCon2022: Case Studies of Fuzzing with Xen
OffensiveCon2022: Case Studies of Fuzzing with Xen
 
LAS16-211: Using LAVA V2 for advanced KVM testing
LAS16-211: Using LAVA V2 for advanced KVM testingLAS16-211: Using LAVA V2 for advanced KVM testing
LAS16-211: Using LAVA V2 for advanced KVM testing
 
The State of the Veil Framework
The State of the Veil FrameworkThe State of the Veil Framework
The State of the Veil Framework
 

Similar to We shall play a game....

Shall we play a game
Shall we play a gameShall we play a game
Shall we play a gamejackpot201
 
Lightweight Virtualization with Linux Containers and Docker | YaC 2013
Lightweight Virtualization with Linux Containers and Docker | YaC 2013Lightweight Virtualization with Linux Containers and Docker | YaC 2013
Lightweight Virtualization with Linux Containers and Docker | YaC 2013dotCloud
 
Lightweight Virtualization with Linux Containers and Docker I YaC 2013
Lightweight Virtualization with Linux Containers and Docker I YaC 2013Lightweight Virtualization with Linux Containers and Docker I YaC 2013
Lightweight Virtualization with Linux Containers and Docker I YaC 2013Docker, Inc.
 
Ceph Day Melbourne - Troubleshooting Ceph
Ceph Day Melbourne - Troubleshooting Ceph Ceph Day Melbourne - Troubleshooting Ceph
Ceph Day Melbourne - Troubleshooting Ceph Ceph Community
 
Linux 开源操作系统发展新趋势
Linux 开源操作系统发展新趋势Linux 开源操作系统发展新趋势
Linux 开源操作系统发展新趋势Anthony Wong
 
"Lightweight Virtualization with Linux Containers and Docker". Jerome Petazzo...
"Lightweight Virtualization with Linux Containers and Docker". Jerome Petazzo..."Lightweight Virtualization with Linux Containers and Docker". Jerome Petazzo...
"Lightweight Virtualization with Linux Containers and Docker". Jerome Petazzo...Yandex
 
Nagios Conference 2014 - Eric Mislivec - Getting Started With Nagios Core
Nagios Conference 2014 - Eric Mislivec - Getting Started With Nagios CoreNagios Conference 2014 - Eric Mislivec - Getting Started With Nagios Core
Nagios Conference 2014 - Eric Mislivec - Getting Started With Nagios CoreNagios
 
OpenShift & SELinux with Dan Walsh @rhatdan
OpenShift & SELinux with Dan Walsh @rhatdanOpenShift & SELinux with Dan Walsh @rhatdan
OpenShift & SELinux with Dan Walsh @rhatdanOpenShift Origin
 
Docker and-containers-for-development-and-deployment-scale12x
Docker and-containers-for-development-and-deployment-scale12xDocker and-containers-for-development-and-deployment-scale12x
Docker and-containers-for-development-and-deployment-scale12xrkr10
 
Time to rethink /proc
Time to rethink /procTime to rethink /proc
Time to rethink /procKir Kolyshkin
 
Fosdem_Using_SELinux_with_container_runtimes.pdf
Fosdem_Using_SELinux_with_container_runtimes.pdfFosdem_Using_SELinux_with_container_runtimes.pdf
Fosdem_Using_SELinux_with_container_runtimes.pdfnicerussianpainter
 
Security of Linux containers in the cloud
Security of Linux containers in the cloudSecurity of Linux containers in the cloud
Security of Linux containers in the cloudDobrica Pavlinušić
 
Archivematica Technical Training Diagnostics Guide (September 2018)
Archivematica Technical Training Diagnostics Guide (September 2018)Archivematica Technical Training Diagnostics Guide (September 2018)
Archivematica Technical Training Diagnostics Guide (September 2018)Artefactual Systems - Archivematica
 
A3Sec Advanced Deployment System
A3Sec Advanced Deployment SystemA3Sec Advanced Deployment System
A3Sec Advanced Deployment Systema3sec
 
Build reliable, traceable, distributed systems with ZeroMQ
Build reliable, traceable, distributed systems with ZeroMQBuild reliable, traceable, distributed systems with ZeroMQ
Build reliable, traceable, distributed systems with ZeroMQRobin Xiao
 
[OpenStack Day in Korea 2015] Track 1-6 - 갈라파고스의 이구아나, 인프라에 오픈소스를 올리다. 그래서 보이...
[OpenStack Day in Korea 2015] Track 1-6 - 갈라파고스의 이구아나, 인프라에 오픈소스를 올리다. 그래서 보이...[OpenStack Day in Korea 2015] Track 1-6 - 갈라파고스의 이구아나, 인프라에 오픈소스를 올리다. 그래서 보이...
[OpenStack Day in Korea 2015] Track 1-6 - 갈라파고스의 이구아나, 인프라에 오픈소스를 올리다. 그래서 보이...OpenStack Korea Community
 
Nagios Conference 2014 - Andy Brist - Nagios XI Failover and HA Solutions
Nagios Conference 2014 - Andy Brist - Nagios XI Failover and HA SolutionsNagios Conference 2014 - Andy Brist - Nagios XI Failover and HA Solutions
Nagios Conference 2014 - Andy Brist - Nagios XI Failover and HA SolutionsNagios
 
Workflow story: Theory versus Practice in large enterprises by Marcin Piebiak
Workflow story: Theory versus Practice in large enterprises by Marcin PiebiakWorkflow story: Theory versus Practice in large enterprises by Marcin Piebiak
Workflow story: Theory versus Practice in large enterprises by Marcin PiebiakNETWAYS
 
Workflow story: Theory versus practice in Large Enterprises
Workflow story: Theory versus practice in Large EnterprisesWorkflow story: Theory versus practice in Large Enterprises
Workflow story: Theory versus practice in Large EnterprisesPuppet
 

Similar to We shall play a game.... (20)

0507 057 01 98 * Adana Klima Servisleri
0507 057 01 98 * Adana Klima Servisleri0507 057 01 98 * Adana Klima Servisleri
0507 057 01 98 * Adana Klima Servisleri
 
Shall we play a game
Shall we play a gameShall we play a game
Shall we play a game
 
Lightweight Virtualization with Linux Containers and Docker | YaC 2013
Lightweight Virtualization with Linux Containers and Docker | YaC 2013Lightweight Virtualization with Linux Containers and Docker | YaC 2013
Lightweight Virtualization with Linux Containers and Docker | YaC 2013
 
Lightweight Virtualization with Linux Containers and Docker I YaC 2013
Lightweight Virtualization with Linux Containers and Docker I YaC 2013Lightweight Virtualization with Linux Containers and Docker I YaC 2013
Lightweight Virtualization with Linux Containers and Docker I YaC 2013
 
Ceph Day Melbourne - Troubleshooting Ceph
Ceph Day Melbourne - Troubleshooting Ceph Ceph Day Melbourne - Troubleshooting Ceph
Ceph Day Melbourne - Troubleshooting Ceph
 
Linux 开源操作系统发展新趋势
Linux 开源操作系统发展新趋势Linux 开源操作系统发展新趋势
Linux 开源操作系统发展新趋势
 
"Lightweight Virtualization with Linux Containers and Docker". Jerome Petazzo...
"Lightweight Virtualization with Linux Containers and Docker". Jerome Petazzo..."Lightweight Virtualization with Linux Containers and Docker". Jerome Petazzo...
"Lightweight Virtualization with Linux Containers and Docker". Jerome Petazzo...
 
Nagios Conference 2014 - Eric Mislivec - Getting Started With Nagios Core
Nagios Conference 2014 - Eric Mislivec - Getting Started With Nagios CoreNagios Conference 2014 - Eric Mislivec - Getting Started With Nagios Core
Nagios Conference 2014 - Eric Mislivec - Getting Started With Nagios Core
 
OpenShift & SELinux with Dan Walsh @rhatdan
OpenShift & SELinux with Dan Walsh @rhatdanOpenShift & SELinux with Dan Walsh @rhatdan
OpenShift & SELinux with Dan Walsh @rhatdan
 
Docker and-containers-for-development-and-deployment-scale12x
Docker and-containers-for-development-and-deployment-scale12xDocker and-containers-for-development-and-deployment-scale12x
Docker and-containers-for-development-and-deployment-scale12x
 
Time to rethink /proc
Time to rethink /procTime to rethink /proc
Time to rethink /proc
 
Fosdem_Using_SELinux_with_container_runtimes.pdf
Fosdem_Using_SELinux_with_container_runtimes.pdfFosdem_Using_SELinux_with_container_runtimes.pdf
Fosdem_Using_SELinux_with_container_runtimes.pdf
 
Security of Linux containers in the cloud
Security of Linux containers in the cloudSecurity of Linux containers in the cloud
Security of Linux containers in the cloud
 
Archivematica Technical Training Diagnostics Guide (September 2018)
Archivematica Technical Training Diagnostics Guide (September 2018)Archivematica Technical Training Diagnostics Guide (September 2018)
Archivematica Technical Training Diagnostics Guide (September 2018)
 
A3Sec Advanced Deployment System
A3Sec Advanced Deployment SystemA3Sec Advanced Deployment System
A3Sec Advanced Deployment System
 
Build reliable, traceable, distributed systems with ZeroMQ
Build reliable, traceable, distributed systems with ZeroMQBuild reliable, traceable, distributed systems with ZeroMQ
Build reliable, traceable, distributed systems with ZeroMQ
 
[OpenStack Day in Korea 2015] Track 1-6 - 갈라파고스의 이구아나, 인프라에 오픈소스를 올리다. 그래서 보이...
[OpenStack Day in Korea 2015] Track 1-6 - 갈라파고스의 이구아나, 인프라에 오픈소스를 올리다. 그래서 보이...[OpenStack Day in Korea 2015] Track 1-6 - 갈라파고스의 이구아나, 인프라에 오픈소스를 올리다. 그래서 보이...
[OpenStack Day in Korea 2015] Track 1-6 - 갈라파고스의 이구아나, 인프라에 오픈소스를 올리다. 그래서 보이...
 
Nagios Conference 2014 - Andy Brist - Nagios XI Failover and HA Solutions
Nagios Conference 2014 - Andy Brist - Nagios XI Failover and HA SolutionsNagios Conference 2014 - Andy Brist - Nagios XI Failover and HA Solutions
Nagios Conference 2014 - Andy Brist - Nagios XI Failover and HA Solutions
 
Workflow story: Theory versus Practice in large enterprises by Marcin Piebiak
Workflow story: Theory versus Practice in large enterprises by Marcin PiebiakWorkflow story: Theory versus Practice in large enterprises by Marcin Piebiak
Workflow story: Theory versus Practice in large enterprises by Marcin Piebiak
 
Workflow story: Theory versus practice in Large Enterprises
Workflow story: Theory versus practice in Large EnterprisesWorkflow story: Theory versus practice in Large Enterprises
Workflow story: Theory versus practice in Large Enterprises
 

More from Sadia Textile

Concepts of knit garments merchandising
Concepts of knit garments merchandisingConcepts of knit garments merchandising
Concepts of knit garments merchandisingSadia Textile
 
Weaving 2016-17 Industry in Bangladesh.
Weaving 2016-17  Industry in Bangladesh.Weaving 2016-17  Industry in Bangladesh.
Weaving 2016-17 Industry in Bangladesh.Sadia Textile
 
Seam And its Classification with seam problem
Seam And its Classification with seam problemSeam And its Classification with seam problem
Seam And its Classification with seam problemSadia Textile
 
Elements of Solid Mechanics.ppt
Elements of  Solid Mechanics.pptElements of  Solid Mechanics.ppt
Elements of Solid Mechanics.pptSadia Textile
 
Marketing: Managing Profitable Customer Relationships
Marketing: Managing Profitable Customer RelationshipsMarketing: Managing Profitable Customer Relationships
Marketing: Managing Profitable Customer RelationshipsSadia Textile
 
Abrasion Resistance and wear
Abrasion Resistance and wearAbrasion Resistance and wear
Abrasion Resistance and wearSadia Textile
 
Presentation on Organization
Presentation on OrganizationPresentation on Organization
Presentation on OrganizationSadia Textile
 
Function Of Management (Bangladeshi Example Included)
Function Of Management (Bangladeshi Example Included)Function Of Management (Bangladeshi Example Included)
Function Of Management (Bangladeshi Example Included)Sadia Textile
 
Full Design weave book For Textile Students
Full Design weave book For Textile StudentsFull Design weave book For Textile Students
Full Design weave book For Textile StudentsSadia Textile
 
Reactive Dyes and their Application
Reactive Dyes and their ApplicationReactive Dyes and their Application
Reactive Dyes and their ApplicationSadia Textile
 
Study on the Automation in Speed Frame
Study on the Automation in Speed FrameStudy on the Automation in Speed Frame
Study on the Automation in Speed FrameSadia Textile
 
Different types of twill
Different types of twillDifferent types of twill
Different types of twillSadia Textile
 
Differents parts of Simplex Machine and their Functions
Differents parts of Simplex Machine and their FunctionsDifferents parts of Simplex Machine and their Functions
Differents parts of Simplex Machine and their FunctionsSadia Textile
 
Knitting 2 sum For Fabric Very Important
Knitting 2 sum For Fabric Very ImportantKnitting 2 sum For Fabric Very Important
Knitting 2 sum For Fabric Very ImportantSadia Textile
 
Pilling on fabric surfaces
Pilling on fabric surfacesPilling on fabric surfaces
Pilling on fabric surfacesSadia Textile
 
Textile Industries And Environment(Specially For bangladesh)
Textile Industries And Environment(Specially For bangladesh)Textile Industries And Environment(Specially For bangladesh)
Textile Industries And Environment(Specially For bangladesh)Sadia Textile
 
ERP for garments(Application of software in Textile)
ERP for garments(Application of software in Textile)ERP for garments(Application of software in Textile)
ERP for garments(Application of software in Textile)Sadia Textile
 

More from Sadia Textile (19)

Concepts of knit garments merchandising
Concepts of knit garments merchandisingConcepts of knit garments merchandising
Concepts of knit garments merchandising
 
Weaving 2016-17 Industry in Bangladesh.
Weaving 2016-17  Industry in Bangladesh.Weaving 2016-17  Industry in Bangladesh.
Weaving 2016-17 Industry in Bangladesh.
 
Seam And its Classification with seam problem
Seam And its Classification with seam problemSeam And its Classification with seam problem
Seam And its Classification with seam problem
 
Elements of Solid Mechanics.ppt
Elements of  Solid Mechanics.pptElements of  Solid Mechanics.ppt
Elements of Solid Mechanics.ppt
 
Belt drive. ppt
Belt drive. pptBelt drive. ppt
Belt drive. ppt
 
Marketing: Managing Profitable Customer Relationships
Marketing: Managing Profitable Customer RelationshipsMarketing: Managing Profitable Customer Relationships
Marketing: Managing Profitable Customer Relationships
 
Abrasion Resistance and wear
Abrasion Resistance and wearAbrasion Resistance and wear
Abrasion Resistance and wear
 
Ring frame
Ring frame Ring frame
Ring frame
 
Presentation on Organization
Presentation on OrganizationPresentation on Organization
Presentation on Organization
 
Function Of Management (Bangladeshi Example Included)
Function Of Management (Bangladeshi Example Included)Function Of Management (Bangladeshi Example Included)
Function Of Management (Bangladeshi Example Included)
 
Full Design weave book For Textile Students
Full Design weave book For Textile StudentsFull Design weave book For Textile Students
Full Design weave book For Textile Students
 
Reactive Dyes and their Application
Reactive Dyes and their ApplicationReactive Dyes and their Application
Reactive Dyes and their Application
 
Study on the Automation in Speed Frame
Study on the Automation in Speed FrameStudy on the Automation in Speed Frame
Study on the Automation in Speed Frame
 
Different types of twill
Different types of twillDifferent types of twill
Different types of twill
 
Differents parts of Simplex Machine and their Functions
Differents parts of Simplex Machine and their FunctionsDifferents parts of Simplex Machine and their Functions
Differents parts of Simplex Machine and their Functions
 
Knitting 2 sum For Fabric Very Important
Knitting 2 sum For Fabric Very ImportantKnitting 2 sum For Fabric Very Important
Knitting 2 sum For Fabric Very Important
 
Pilling on fabric surfaces
Pilling on fabric surfacesPilling on fabric surfaces
Pilling on fabric surfaces
 
Textile Industries And Environment(Specially For bangladesh)
Textile Industries And Environment(Specially For bangladesh)Textile Industries And Environment(Specially For bangladesh)
Textile Industries And Environment(Specially For bangladesh)
 
ERP for garments(Application of software in Textile)
ERP for garments(Application of software in Textile)ERP for garments(Application of software in Textile)
ERP for garments(Application of software in Textile)
 

Recently uploaded

Special Purpose Vehicle (Purpose, Formation & examples)
Special Purpose Vehicle (Purpose, Formation & examples)Special Purpose Vehicle (Purpose, Formation & examples)
Special Purpose Vehicle (Purpose, Formation & examples)linciy03
 
Matt Conway - Attorney - A Knowledgeable Professional - Kentucky.pdf
Matt Conway - Attorney - A Knowledgeable Professional - Kentucky.pdfMatt Conway - Attorney - A Knowledgeable Professional - Kentucky.pdf
Matt Conway - Attorney - A Knowledgeable Professional - Kentucky.pdfMatt Conway - Attorney
 
The Inspiring Personality To Watch In 2024.pdf
The Inspiring Personality To Watch In 2024.pdfThe Inspiring Personality To Watch In 2024.pdf
The Inspiring Personality To Watch In 2024.pdfinsightssuccess2
 
Potato Flakes Manufacturing Plant Project Report.pdf
Potato Flakes Manufacturing Plant Project Report.pdfPotato Flakes Manufacturing Plant Project Report.pdf
Potato Flakes Manufacturing Plant Project Report.pdfhostl9518
 
The Ultimate Guide to IPTV App Development Process_ Step-By-Step Instructions
The Ultimate Guide to IPTV App Development Process_ Step-By-Step InstructionsThe Ultimate Guide to IPTV App Development Process_ Step-By-Step Instructions
The Ultimate Guide to IPTV App Development Process_ Step-By-Step InstructionsWHMCS Smarters
 
8 Questions B2B Commercial Teams Can Ask To Help Product Discovery
8 Questions B2B Commercial Teams Can Ask To Help Product Discovery8 Questions B2B Commercial Teams Can Ask To Help Product Discovery
8 Questions B2B Commercial Teams Can Ask To Help Product DiscoveryDesmond Leo
 
LinkedIn Masterclass Techweek 2024 v4.1.pptx
LinkedIn Masterclass Techweek 2024 v4.1.pptxLinkedIn Masterclass Techweek 2024 v4.1.pptx
LinkedIn Masterclass Techweek 2024 v4.1.pptxSymbio Agency Ltd
 
FEXLE- Salesforce Field Service Lightning
FEXLE- Salesforce Field Service LightningFEXLE- Salesforce Field Service Lightning
FEXLE- Salesforce Field Service LightningFEXLE
 
TriStar Gold Corporate Presentation May 2024
TriStar Gold Corporate Presentation May 2024TriStar Gold Corporate Presentation May 2024
TriStar Gold Corporate Presentation May 2024Adnet Communications
 
India’s Recommended Women Surgeons to Watch in 2024.pdf
India’s Recommended Women Surgeons to Watch in 2024.pdfIndia’s Recommended Women Surgeons to Watch in 2024.pdf
India’s Recommended Women Surgeons to Watch in 2024.pdfCIOLOOKIndia
 
12 Conversion Rate Optimization Strategies for Ecommerce Websites.pdf
12 Conversion Rate Optimization Strategies for Ecommerce Websites.pdf12 Conversion Rate Optimization Strategies for Ecommerce Websites.pdf
12 Conversion Rate Optimization Strategies for Ecommerce Websites.pdfSOFTTECHHUB
 
Using Generative AI for Content Marketing
Using Generative AI for Content MarketingUsing Generative AI for Content Marketing
Using Generative AI for Content MarketingChuck Aikens
 
The Leading Cyber Security Entrepreneur of India in 2024.pdf
The Leading Cyber Security Entrepreneur of India in 2024.pdfThe Leading Cyber Security Entrepreneur of India in 2024.pdf
The Leading Cyber Security Entrepreneur of India in 2024.pdfinsightssuccess2
 
Copyright: What Creators and Users of Art Need to Know
Copyright: What Creators and Users of Art Need to KnowCopyright: What Creators and Users of Art Need to Know
Copyright: What Creators and Users of Art Need to KnowMiriam Robeson
 
Falcon Invoice Discounting Setup for Small Businesses
Falcon Invoice Discounting Setup for Small BusinessesFalcon Invoice Discounting Setup for Small Businesses
Falcon Invoice Discounting Setup for Small BusinessesFalcon investment
 
What Does A 3-Band Wedding Band Mean?
What Does A 3-Band Wedding Band Mean?What Does A 3-Band Wedding Band Mean?
What Does A 3-Band Wedding Band Mean?Pristine Rings
 
transform-your-business-with-cutting-edge-inventory-management-and-3pl-integr...
transform-your-business-with-cutting-edge-inventory-management-and-3pl-integr...transform-your-business-with-cutting-edge-inventory-management-and-3pl-integr...
transform-your-business-with-cutting-edge-inventory-management-and-3pl-integr...Connect3PL
 
Global Interconnection Group Joint Venture[960] (1).pdf
Global Interconnection Group Joint Venture[960] (1).pdfGlobal Interconnection Group Joint Venture[960] (1).pdf
Global Interconnection Group Joint Venture[960] (1).pdfHenry Tapper
 
Unlock Your TikTok Potential: Free TikTok Likes with InstBlast
Unlock Your TikTok Potential: Free TikTok Likes with InstBlastUnlock Your TikTok Potential: Free TikTok Likes with InstBlast
Unlock Your TikTok Potential: Free TikTok Likes with InstBlastInstBlast Marketing
 
Future of Trade 2024 - Decoupled and Reconfigured - Snapshot Report
Future of Trade 2024 - Decoupled and Reconfigured - Snapshot ReportFuture of Trade 2024 - Decoupled and Reconfigured - Snapshot Report
Future of Trade 2024 - Decoupled and Reconfigured - Snapshot ReportDubai Multi Commodity Centre
 

Recently uploaded (20)

Special Purpose Vehicle (Purpose, Formation & examples)
Special Purpose Vehicle (Purpose, Formation & examples)Special Purpose Vehicle (Purpose, Formation & examples)
Special Purpose Vehicle (Purpose, Formation & examples)
 
Matt Conway - Attorney - A Knowledgeable Professional - Kentucky.pdf
Matt Conway - Attorney - A Knowledgeable Professional - Kentucky.pdfMatt Conway - Attorney - A Knowledgeable Professional - Kentucky.pdf
Matt Conway - Attorney - A Knowledgeable Professional - Kentucky.pdf
 
The Inspiring Personality To Watch In 2024.pdf
The Inspiring Personality To Watch In 2024.pdfThe Inspiring Personality To Watch In 2024.pdf
The Inspiring Personality To Watch In 2024.pdf
 
Potato Flakes Manufacturing Plant Project Report.pdf
Potato Flakes Manufacturing Plant Project Report.pdfPotato Flakes Manufacturing Plant Project Report.pdf
Potato Flakes Manufacturing Plant Project Report.pdf
 
The Ultimate Guide to IPTV App Development Process_ Step-By-Step Instructions
The Ultimate Guide to IPTV App Development Process_ Step-By-Step InstructionsThe Ultimate Guide to IPTV App Development Process_ Step-By-Step Instructions
The Ultimate Guide to IPTV App Development Process_ Step-By-Step Instructions
 
8 Questions B2B Commercial Teams Can Ask To Help Product Discovery
8 Questions B2B Commercial Teams Can Ask To Help Product Discovery8 Questions B2B Commercial Teams Can Ask To Help Product Discovery
8 Questions B2B Commercial Teams Can Ask To Help Product Discovery
 
LinkedIn Masterclass Techweek 2024 v4.1.pptx
LinkedIn Masterclass Techweek 2024 v4.1.pptxLinkedIn Masterclass Techweek 2024 v4.1.pptx
LinkedIn Masterclass Techweek 2024 v4.1.pptx
 
FEXLE- Salesforce Field Service Lightning
FEXLE- Salesforce Field Service LightningFEXLE- Salesforce Field Service Lightning
FEXLE- Salesforce Field Service Lightning
 
TriStar Gold Corporate Presentation May 2024
TriStar Gold Corporate Presentation May 2024TriStar Gold Corporate Presentation May 2024
TriStar Gold Corporate Presentation May 2024
 
India’s Recommended Women Surgeons to Watch in 2024.pdf
India’s Recommended Women Surgeons to Watch in 2024.pdfIndia’s Recommended Women Surgeons to Watch in 2024.pdf
India’s Recommended Women Surgeons to Watch in 2024.pdf
 
12 Conversion Rate Optimization Strategies for Ecommerce Websites.pdf
12 Conversion Rate Optimization Strategies for Ecommerce Websites.pdf12 Conversion Rate Optimization Strategies for Ecommerce Websites.pdf
12 Conversion Rate Optimization Strategies for Ecommerce Websites.pdf
 
Using Generative AI for Content Marketing
Using Generative AI for Content MarketingUsing Generative AI for Content Marketing
Using Generative AI for Content Marketing
 
The Leading Cyber Security Entrepreneur of India in 2024.pdf
The Leading Cyber Security Entrepreneur of India in 2024.pdfThe Leading Cyber Security Entrepreneur of India in 2024.pdf
The Leading Cyber Security Entrepreneur of India in 2024.pdf
 
Copyright: What Creators and Users of Art Need to Know
Copyright: What Creators and Users of Art Need to KnowCopyright: What Creators and Users of Art Need to Know
Copyright: What Creators and Users of Art Need to Know
 
Falcon Invoice Discounting Setup for Small Businesses
Falcon Invoice Discounting Setup for Small BusinessesFalcon Invoice Discounting Setup for Small Businesses
Falcon Invoice Discounting Setup for Small Businesses
 
What Does A 3-Band Wedding Band Mean?
What Does A 3-Band Wedding Band Mean?What Does A 3-Band Wedding Band Mean?
What Does A 3-Band Wedding Band Mean?
 
transform-your-business-with-cutting-edge-inventory-management-and-3pl-integr...
transform-your-business-with-cutting-edge-inventory-management-and-3pl-integr...transform-your-business-with-cutting-edge-inventory-management-and-3pl-integr...
transform-your-business-with-cutting-edge-inventory-management-and-3pl-integr...
 
Global Interconnection Group Joint Venture[960] (1).pdf
Global Interconnection Group Joint Venture[960] (1).pdfGlobal Interconnection Group Joint Venture[960] (1).pdf
Global Interconnection Group Joint Venture[960] (1).pdf
 
Unlock Your TikTok Potential: Free TikTok Likes with InstBlast
Unlock Your TikTok Potential: Free TikTok Likes with InstBlastUnlock Your TikTok Potential: Free TikTok Likes with InstBlast
Unlock Your TikTok Potential: Free TikTok Likes with InstBlast
 
Future of Trade 2024 - Decoupled and Reconfigured - Snapshot Report
Future of Trade 2024 - Decoupled and Reconfigured - Snapshot ReportFuture of Trade 2024 - Decoupled and Reconfigured - Snapshot Report
Future of Trade 2024 - Decoupled and Reconfigured - Snapshot Report
 

We shall play a game....

  • 2. Recruitment process @OWASP? ● Because this system is web application (partially) ● Because we based (100%) on FOSS (open-source) ● Because security matters ● Because OWASP people cares about security and can affect recruitment processes (hopefully) ;)
  • 3. Recruitment ● Lot of recruitment agencies / services ● Huge number of potential candidates ● Whole team is involved in recruitment ● Candidate evaluation takes really lot of time
  • 4. SysAdmin / Operations ● He is sysop, developer, QA and network specialist ● Also great for performance tuning ● Responsible for critical data (all data) ● Easy handles moving UPSes between racks ;) ● Anytime day / night understands what you’re talking to him ● Everything he does respects high security standards ● Loves playing games (do you know sysop that doesn’t play)? ;)
  • 5. Let’s play then ● Any idea? Not Quake / Diablo / Warcraft ;) ● pythonchallenge.com, wechall.net – CTFs are great! ● trueability.com – event for sysops ● So maybe CTF / challenge? ● Such system would have to fulfill some requirements: ● Optimization of recruitment process time ● Minimisation of the risk of rejecting good candidate ● Draw attention as very interesting (you like mindfscks?)
  • 6. Let's start the ball rolling Stage 1 – simple task Stage 2 – call/social.eng. Stage 3 – challenge Application Problem: huge candidates number (>100) Target: reject not suitable cands (>80% rejections!) Target: recognition, manipulation Global Thermonuclear War ;)
  • 7. Stage 1 – telnet / SMTP RFC-821/1869: HELO/EHLO ??.....?? GPG us ur CV using http://..../gpg.asc Lack of GPG knowledge :( RTFM!
  • 8. Stage 1 – telnet / SMTP RFC-821/1869: HELO/EHLO my.hostname 1 trap – not server’s hostname but client’s (90% catched) GPG us ur CV using http://..../gpg.asc Lack of GPG knowledge :( RTFM!
  • 9. Stage 1 – node.js ● At the beginning – pure C server. After 3am.. Node.js (simplicity) ;) ● What’s wrong with node.js? ● http://seclists.org/bugtraq/ - 0 hits ● http://osvdb.org/ - 2 hits ● http://1337day.com/, http://www.exploit-db.com/ - 1 hit ● https://nodesecurity.io/advisories - 4 hits ● Does it mean that node.js is safe & secure?
  • 10. Node.js – how it works? http://magnetik.github.io/ - Event driven - Event loop - Callbacks - SPA, async, REST, Json
  • 11. Node.js - threats ● no logging ● No error handling - DoS ● No configuration – “+” or “-”? ● No filters checking user-input ● JS: function as a variable ● Evil eval(code). Server-side XSS ● setInterval(code,2), setTimeout(code,2), str = new Function(code) ● Moduły npm – who creates those? ............................................________ ....................................,.-'"...................``~., .............................,.-"..................................."-., .........................,/...............................................":, .....................,?......................................................, .................../...........................................................,} ................./......................................................,:`^`..} .............../...................................................,:"........./ ..............?.....__.........................................:`.........../ ............./__.(....."~-,_..............................,:`........../ .........../(_...."~,_........"~,_....................,:`........_/ ..........{.._$;_......"=,_......."-,_.......,.-~-,},.~";/....} ...........((.....*~_......."=-._......";,,./`..../"............../ ...,,,___.`~,......"~.,....................`.....}............../ ............(....`=-,,.......`........................(......;_,,-" ............/.`~,......`-...................................../ .............`~.*-,.....................................|,./.....,__ ,,_..........}.>-._...................................|..............`=~-, .....`=~-,__......`,................................. ...................`=~-,,.,............................... ................................`:,,...........................`..............__ .....................................`=-,...................,%`>--==`` ........................................_..........._,-%.......`
  • 13. This way we added new functionality to the server during runtime! http://node.js/myurl Node.js – evil eval()
  • 14. Node.js - npm https://blog.nodejitsu.com/npm-innovation-through-modularity Amount of npm modules in the time Amount of npm-mods/day comparison to node.js and others
  • 15. Node.js – how can? ● Use frameworks: https://npmjs.org/ - carefully ● Npm modules are not validated! Check those: https://nodesecurity.io ● Watch module dependencies! ● must have: your own error handling & logging ● This is server – we need proper server security solutions: ● Monitoring – think how to monitor your app ● Control-groups – set limits for resources ● SELinux sandbox
  • 16. Node.js – SELinux sandbox ●'home_dir' and 'tmp_dir' ● App can r/w from std(in|out) + only defined FDs ● No network access ● No access to foreign processes / files ● We can easily connect sandbox with cgroups :) ● Helpful: semodule -DB (no dontaudit) ● grep XXX /var/log/audit/audit.log | audit2allow -M node.sandbox ● semodule -i node.sandbox.pp
  • 18. Node.js – how can #2 ● Freeze node.js version per project? ● Let’s read & learn: ● https://media.blackhat.com/bh-us-11/Sullivan/BH_US_11_Sullivan_Server_Side_WP.pdf ● http://lab.cs.ttu.ee/dl91 ● https://github.com/toolness/security-adventure ● Pseudo–configuration – set limits in your code (e.g. POST size) ● try...catch ftw ● use strict; - helps even with eval case (partially) ● Bunyan / dtrace: https://npmjs.org/package/bunyan ● node.js OS? Oh and use / build node.js packages (fpm or whatever)
  • 19. Stage 2 – social engineering ● Stage’s target is to verify & check candidate’s security awareness ● Christopher Hadnagy – SE framework (2k10): ● http://www.social-engineer.org/framework/Social_Engineering_Framework ● Everyone can act as recruiter and call anyone ● Building network / connections on Linkedin is very easy ● Trust (lingo, easiness in some env: research) ● Sysop knows really much about env – he’s good target ● So one has to only get sysop’s trust and decrease his carefulness
  • 20. Stage 3 - virtualization ● Our needs? ● Boot process supervision ● Console access ● Resource management ● Redundant storage ● Rescue mode for VMs ● Security by default > AWS > KVM/libvirt > XEN/libvirt > LXC
  • 21. Stage 3 - virtualization boot console resources mgmt. redundant storage rescue VM security
  • 22. Stage 3 - virtualization VS Performance XEN/HVM or KVM?
  • 23. Stage 3 - virtualization VS We had great performance issues with XEN/HVM The winner is „hat in the red” and its PV (but with the cgroups help – under heavy load KVM is not that stable) Performance XEN/HVM or KVM?
  • 24. Stage 3 – network security DMZ (Demilitarized Zone) – logical or physical partition https://en.wikipedia.org
  • 25. Stage 3 – network security https://en.wikipedia.org DMZ (Demilitarized Zone) – logical or physical partition
  • 26. Stage 3 – network security ● Separated, dedicated DMZ (VLAN?) for host ● No routing / communication from this DMZ with other segments ● Low – cost solutions? ● OpenWRT / DDWRT way || Pure Linux server ● 802.1Q – VLANs
  • 27. Stage 3 – network security ● Network isolation on KVM host: ● Host/network bridge: L2 switch ● netfilter / nwfilter (IBM) ● By default there’s no packets isolation in the bridged network - ebtables null, no filtering ● ebtables – filtering l2– so we gain isolation ● Or virsh nwfilter-list ● allow-arp,dhcp,dhcp-server,clean-traffic, no-arp-ip-spoofing, no-arp-mac- spoofing, no-arp-spoofing, no-ip-multicast, no-ip-spoofing, no-mac- broadcast, no-mac-spoofing, no-other-l2-traffic ● L2 filtering? /proc/sys/net/bridge https://www.redhat.com/archives/libvir-list/2010-June/msg00762.html http://pic.dhe.ibm.com/infocenter/lnxinfo/v3r0m0/topic/liaat/liaatsecurity_pdf.pdf
  • 28. Stage 3 –boot process, VNC ● Accessing boot process – VNC ● VNC security? SSL? Complications.. ● Maybe VNC over SSH tunnel? ● Encryption ● No certificates issues ● Every admin can easily use VNC
  • 29. Stage 3 – restricted shells ● SSH tunneling requires SSH access (thank You Captain Obvious!) ● SSH access is a threat per se ● Let’s limit this SSH / shell access – use restricted shells Restricted shells by. Google ;) =>
  • 30. Stage 3 – restricted shells ● Restricted shells are threat by default – unless we know how to use those! ● Under some circumstances one could escape the rshell: https://en.wikipedia.org/wiki/Rbash
  • 31. Stage 3 – restricted shells ● Rbash: ● CentOSie / RHEL approved / friendly / legit ;) ● Protects from directory traversal ● Prohibits access to files via direct path ● Prohibits setting PATH or other shell env variables ● No commands output redirection ● PATH=$HOME/bin – and reconsider 2x what to put into this „bin” https://en.wikipedia.org/wiki/Rbash
  • 32. Stage 3 – SSH tunnel / VNC ● We must go deeper! Candidate VM-Proxy screen / ssh tunnel VM host rshell / ibsh rshell / rbash VNC server
  • 33. Stage 3 – restricted shells ● Other restricted shells: ● rssh – allows scp, sftp, rsync ● sudosh - http://sourceforge.net/projects/sudosh ● Allows saving whole user session and replay it ● One can define allowed operations for user ● Little outdated – better use sudosh3 ● Ibsh (small, fast, secure): http://sourceforge.net/projects/ibsh/
  • 34. Stage 3 – control groups ● resource management in a simple way (ulimits, nice, limits.conf).. but.. ● Could you set 50 IOPS for defined process? ● What about 100Kbp/s limit for particular user? ● issues with memory–leaks in Java?
  • 35. Stage 3 – control groups https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Resource_Management_Guide/ch01.html ● Debian & RHEL friendly ● Running apps in cgroup context ● Setting cgroup context for process during runtime
  • 36. Stage 3 – web application ● OpenStack? „Couple” of compliations ;) “Out of the box” – yup – I’ve heard about that ;) Could you deploy it in a few hours – securely?
  • 37. Stage 3 – web application Commodore OS ???
  • 38. Stage 3 – web application Commodore OS Vision FTW!
  • 39. Stage 3 – web application ● Apache + mod_security ● mod_security + OWASP rules ● PHP & Python :) ● Simplicity! ● VM management with simple daemon + screen: ● while(1) do: manage_VMs(); ● And this just works!
  • 40. Stage 3 – recording SSH sessions ● We have to record all sessions – also those under „screen” ● Real time recording ● sudosh3 (sudosh fork) – kinda proxy shell – great ;) ● auditd – lov-lewel tool for recording syscalls ● Asciinema (ascii.io, Marcin Kulik) – great one, but not for audit purposes ● Ttyrec – outdated: http://0xcc.net/ttyrec/index.html.en ● Ssh logging patch - outdated: http://www.kdvelectronics.eu/ssh-logging/ssh-logging.html
  • 41. Stage 3 – data security ● What if we loose any of the VMs...? Brrr.... ● Risk assesement – what would be enough for us? ● RAID1 / Mirror – “usually” is enough for a 3 – month time ● Backups – useful ;) RAID / replication are not backups... ● GlusterFS / DRBD – if you have enough resources – try it :) LVM Gluster brick KVM active host LVM Gluster brick KVM passive host replication