SELinux Een SELinux-module voor CGI scripts Marcel Nijenhof

Slides:



Advertisements
Verwante presentaties
Nederlab Laboratory for research on the patterns of change in the Dutch language and culture Kickoff, 25 januari, 2013 Meertens Instituut, Amsterdam.
Advertisements

Training voor beheerders
Stijn Hoppenbrouwers Software Engineering les 1 Algemene inleiding en Requirements Engineering.
Digitaal Depot. Waarom een Digitaal Depot •Overheden en particulieren werken steeds meer en soms alleen nog maar digitaal; •Gebruikers verwachten digitaal.
OOS Object geOrienteerd Software-ontwerp
Het ER model Een powerpoint presentatie, gemaakt door: F. Triep
E-RADEN Roadmap. AGENDA • Overzicht van nieuwe ontwikkelingen 2009 • Interfaces • Document Types : Meta-data • E-raden gratis ? • Perspectieven.
Gebruikers, groepen en permissies – theorie
1/1/ / faculty of Computer Science eindhoven university of technology 5B040:Computerarchitectuur 2M200:Inleiding Computersystemen Sessie 8(1): Het Operating.
1 Device driver. 2 Hardware Operating Systeem Prog1Prog2 System calls/ API Device drivers Gebruiker afschermen van de hardware.
Hogeschool HZ Zeeland 19 augustus 2003augustus 2003 Data Structuren & Algoritmen Week 5.
Cobian Backup 8 Welkom op de Cobian presentatie.
Kickstartserver Werner Maes 16 december Configuratie Dell Poweredge Mhz 256 MB RAM (wordt wsl 512 Mb) 4*18 Gb in RAID 5 RHAS4 U2 Standaard.
Linux FTP Server.
Activiteit 1.6 Bepalen niet-functionele eisen
Ontwerpen van Informatiesystemen met
Inleidend probleem Data structuur (hiërarchie van classes)
Designing Knowledge Systems b Hoofdstuk 11 van Knowledge Engineering and Management. The CommonKADS Methodology. b A.Th. Schreiber, J.M. Akkermans, A.A.Anjewierder,
Wolter Kaper - Ruby on Rails Webtoepassing ontwerpen Webprogrammeren, week 1.
Wat is downloaden? Bestanden op internet zetten, Bestanden van internet binnenhalen, Surfen op internet.
P. 1 Vakgroep Informatietechnologie Structuur Deel II C++ Classes Namespaces Type casting Reference types Constructors en Destructors Memory Management.
SURFnet en IEEE 802.1X Amsterdam, 8&9 Mei 2003.
Operating Systems Informatica.
Your GateWay to the Finest Academic Research papers in the Netherlands Technische aspecten: de ARNO archive server Thomas Place KUB.
Deel XXI 1 Internetapplicaties Internetprogrammeren Capita Selecta.
1 Het nut van de bron Gebruikersdag GBKN 4 juni 2010 Bart van der Lely.
Uw netwerk beheren met Nagios.
Data Maarten Terpstra en Peter le Clerq. 1.Wij denken dat bedrijven in toenemende mate data gebruiken voor toepassingen in marketing, sales, service,
PADS4 maakt het eenvoudig om informatie te verspreiden naar een specifiek publiek op de juiste plaats en het juiste moment PADS4 is een professionele oplossing.
Eisenbheer module CROW
Les 3: Zaterdag 15 maart 2014 Wim Peeters
Hoofdstuk 7 ERP-systemen: human resources Enterprise Resource Planning © Pearson Education, 2007; Enterprise Resource Planning door Mary Sumner.
Computertechniek 2 – ARM assembler Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1  programma draaien vanuit ROM.
1 Introductie next MCT - Programmeren 2 © S. Walcarius Waarom java? programma machinetaal (.exe) compilen platformspecifiek Een exe programma.
Quota’s in Linux Werner Maes 3 april Quota’s: doel Methode om schijfgebruik te controleren: Per gebruiker Per groep En om schijfgebruik te limiteren:
1 OMI Digitaal publiceren in bredere context.
Prototyping Week 7 // Tweenlite & API. TweenMax Snel mooie en effectieve animatie.
Impressie van de nieuwe User Interface(s) G. Donchyts, Deltares
INFITT01 - Internettechnologie WEEK 3. Programma Sessies JSP.
1 KPN Mobiel – Introductie Repository Object Browser & Designer 10 Designer 10g & Repository Object Browser Maandag 28 februari 2005 Lucas Jellema (AMIS)
Over de fabels en feiten van applicatiebouw en de invoering van het Spring Framework 16 december 2014 Ferdy du Chatenier / Gilbert van den.
Functies Rollen Taakcluster … Taakcluster 1 Taakgebied… Taakgebied 2 Taakgebied 1 Taak … Taak 2 Taak 1 Rol … Rol 2 Rol 1 Functie … Functie 2 Functie 1.
Alarm beheer via SMS Comfort. Algemeen SMS comfort is een netwerkoplossing die u toestaat om SMS tekstberichten vanuit allerhande interfaces te verzenden.
Aanpassingen PLDA 1/5/2016. Entrepots AV terugbetaling BOD Summiere aangifte voor tijdelijke opslag Overzicht.
Contract- management Behoefte- management Transitie Testen Realisatie Ontwerp Require- ments man. Gebruikers- ondersteuning Educatie Monitoring Data- beheer.
Gebruikers- ondersteuning Change support Tactisch support Strategisch support Management support Monitoring Educatie Management- informatie Behoefte- management.
Modificatie van Galaxy voor Next-Generation Sequencing Bataillie Michiel 2010 – 2011 Bachelorproef Hoge School West-Vlaanderen Dept. Simon Stevin.
LPI 2010 NLLGG Trainer: Jeroen van Pelt Bijeenkomst 6: Gebruikers, permissies, procesbeheer
PPGM Voor databeheerders Johan Van Rensbergen 09/08/2016.
Operating Systems Informatica.
Windows applicatieontwikkeling
Overzicht Vooronderzoek Hypothese Onderzoeksvraag Methodologie
Gevorderde EV3 PROGRAMMEER LES
Computersystemen 2 (TIRCCMS02 - Operating systems)
BEGINNER EV3 PROGRAMMEER Les
Algemeen schema Strategisch support Management support Strategie
Strategisch support Management support Strategie Tactisch support
Strategisch support Management support Strategie Tactisch support
Strategisch support Management support Strategie Tactisch support
BDL Implementatie keten wijzigingen 2017
VeiligheidsRegioTwente
Hoe kan ik McAfee Mobile Security downloaden op mijn iPhone?
Een volgende stap voor het succesvolle EDISON verhaal
M5 Datacommunicatie Applicatielaag
Strategisch support Management support Strategie Tactisch support
ASP.NET MVC Web Development
Strategisch support Management support Strategie Tactisch support
– Software development fundamentals
Powershell & HTML.
Transcript van de presentatie:

SELinux Een SELinux-module voor CGI scripts Marcel Nijenhof marceln@pion.xs4all.nl 15 Mei 2008 Voorjaarsconferentie nluug

Wat is selinux Ontwikkeld door de nsa Eigen os flask Geport na linux Beveiligings model Regels vast gelegd Afdwingen regels Relatie tussen processen en objecten Domeinen en typen

Voorbeeld: Aanpassen paswoord

Aanpassingen Extended attributen De “-Z” vlag (ls, ps, ..) Logging getenforce/setenforce chcon/restorecon Semange Setsebool Semodule audit2allow

Cgips Simpel cgi script Draait enkele commando's Laat resultaat zien Runcmd() { echo "<h2>$@<h2> echo "<pre>" $@ echo "<pre>" } runcmd getenforce runcmd getsebool \ httpd_enable_cgi runcmd id -Z runcmd ps -ef Simpel cgi script Draait enkele commando's Laat resultaat zien Status selinux Selinux gebruiker Resultaat “ps -ef”

Resultaat zonder aanpassingen SE Linux uit ps -ef UID ... CMD root ... init [3] marceln ... -bash root ... /usr/sbin/httpd apache ... /usr/sbin/httpd ... apache ... /var/www/cgi-bin/ps apache ... ps -ef SE Linux aan ps -ef UID ... CMD apache ... /var/www/cgi-bin/cgips apache ... ps -ef

SE Linux en cgi scripten Ps in een cgi script geeft geen informatie Helaas zien we het resultaat van ps niet

Oplossen SELinux devel Kopieer voorbeeld Nieuw types cgips_t cgips_exec_t Domein transitie Toegangs regels via “audit2allow”

Interface file interface(`cgips_domtrans',` gen_require(` type cgips_t, cgips_exec_t; ') domain_auto_trans($1,cgips_exec_t,cgips_t) allow $1 cgips_t:fd use; allow cgips_t $1:fd use; allow $1 cgips_t:fifo_file rw_file_perms; allow $1 cgips_t:process sigchld;

Type enforcement policy_module(cgips,1.0.1) require { class chr_file getattr; class dir { add_name getattr read remove_name search write }; class fd use; ... } allow cgips_t bin_t:dir search; allow cgips_t bin_t:file { execute execute_no_trans getattr read }; allow cgips_t crond_t:dir { getattr search };

Vmsplice exploit Kernel exploit Onbekend bij call for paper ./vmsplice.bin <<EOF echo echo "> head \ -1 /etc/shadow" head -1 /etc/shadow EOF Kernel exploit Onbekend bij call for paper Wat doet SELinux voor nieuwe kernel exploit? Nieuw cgi-script Voert exploit uit Toont /etc/shadow

Resultaat Exploit werkt gewoon exploit werkt niet Je wordt root Uid = 0 Alles mag volgens posix exploit werkt niet Behoud Security context Role: httpd_sys_script_t Beperkingen SELinux Geen toegang tot “/etc/shadow”

Conclusies Het is lastig Totaal ander model dan posix Beveiligt niet de data van de applicatie zelf De applicatie moet immers toegang hebben Problemen met embedded apache modules Geen exec Het kan wel gevolgen van exploits inperken Zie vmsplice voorbeeld

Vragen Sheets: http://pion.xs4all.nl/lezingen/SELinux-nluug2008vj.odp Paper: http://pion.xs4all.nl/lezingen/SELinux-nluug2008vj.html Email: info@pion.xs4all.nl Dit document is gelicenseerd onder “Attribution- ShareAlike 3.0Netherlands license”, beschikbaar op http://creativecommons.org/licenses/by- sa/3.0/nl