Siirry suoraan sisältöön

Web-sovellusten turvallisuusLaajuus (5 op)

Tunnus: TTC6500

Laajuus

5 op

Opetuskieli

  • suomi
  • englanti

Vastuuhenkilö

  • Joonatan Ovaska,

Osaamistavoitteet

Tällä kurssilla opiskelija pohtii verkkosovellusten turvallisuutta kokonaisvaltaisesti. Opiskelija oppii käyttämään tehokkaasti työkaluja ja menetelmiä yleisten verkkosovellusten haavoittuvuuksien etsimiseen, hyödyntämiseen ja korjaamiseen.

Opintojakson osaamiset
EUR-ACE Tieto ja ymmärrys
- Tieto ja ymmärrys oman erikoistumisalan perustana olevista insinööritieteistä tasolla, joka on tarpeen ohjelman muiden oppimistulosten saavuttamiseksi, mukaan lukien käsitys tulevaisuuden vaatimuksista omalla alalla.
- Tieto ja ymmärrys soveltuvista materiaaleista, laitteista, työvälineistä, teknologioista ja prosesseista sekä niiden rajoituksista omalla erikoistumisalalla.
- Tieto ja ymmärrys soveltuvista analyysi-, suunnittelu- ja tutkimus/kehittämistekniikoista ja -menetelmistä sekä niiden rajoituksista omalla erikoistumisalalla.
EUR-ACE Monialainen osaaminen
- Tietoisuus insinöörin ammattikäytännön yhteiskunnallisista, työsuojeluun ja ympäristöön liittyvistä, taloudellisista ja teollisista vaikutuksista sekä ymmärrys niiden asettamista rajoituksista.
EUR-ACE Tekniikan soveltaminen käytäntöön
- Kyky tunnistaa, muotoilla ja ratkaista monimutkaisia ongelmia kyeten valitsemaan ja omaten käytännön taidot soveltaa tilanteeseen soveltuvia, vakiintuneita analyyttisiä, laskennallisia ja kokeellisia tekniikoita ja menetelmiä.
- Kyky selvittää oman alan ammattikäytän-töä koskevat ohjeet ja turvallisuus-määräykset sekä soveltaa niitä.

Sisältö

Tämä kurssi on sovellettua kyberturvallisuutta. Käymme läpi yleisiä verkkosovellusten haavoittuvuuksia useiden käytännön harjoitusten avulla käyttäen todellisia esimerkkejä (enimmäkseen).

Käsittelemme erilaisia ​​verkkoon ja verkkosovelluksiin liittyviä aiheita, kuten selaimen suojausmallia, syötteiden validointia, servlet-säiliöitä, tietokantoja ja lisäyksiä.

Käsittelemme kyberturvallisuusympäristön tämänhetkisiä trendejä ja niiden vaikutuksia verkkoon.

Esitietovaatimukset

Kurssi edellyttää vankkaa ohjelmoinnin ymmärrystä ja aikaisempaa kokemusta web-tekniikoista. Opiskelijan tulee osata käyttää komentorivityökaluja.

Arviointikriteerit, tyydyttävä (1)

2: Opiskelija osaa löytää yleisiä verkkosovellusten haavoittuvuuksia. Opiskelija ymmärtää olemassa olevien hyödyntämistekniikoiden toimintaperiaatteet. Opiskelija osaa kirjoittaa raportin, joka kattaa useimmat havainnot ja lieventämissuositukset useimpien tällä kurssilla käsiteltyjen haavoittuvuustyyppien osalta. Opiskelija osaa päivittää tietojaan itsenäisesti seuraamalla erilaisia ​​uutisia ja tutkimusta.

1: Opiskelija osaa löytää yksinkertaisia ​​verkkosovellusten haavoittuvuuksia. Opiskelija ymmärtää olemassa olevien hyväksikäyttötekniikoiden perusteet. Opiskelija osaa kirjoittaa raportin, joka kattaa havainnot ja lieventämissuositukset joidenkin tällä kurssilla käsiteltyjen haavoittuvuustyyppien osalta. Opiskelija osaa löytää tietoa tärkeimmistä uutisista ja tapahtumista.

Arviointikriteerit, hyvä (3)

4: Opiskelija osaa löytää ja lieventää yleisiä verkkosovellusten haavoittuvuuksia. Opiskelija osaa muokata ja luoda yksinkertaisia ​​hyödykkeitä haluttujen tavoitteiden saavuttamiseksi. Opiskelija osaa kirjoittaa raportin, joka kattaa havainnot ja lieventämissuositukset useimpien tällä kurssilla käsiteltyjen haavoittuvuustyyppien osalta. Opiskelija osaa päivittää tietojaan itsenäisesti seuraamalla erilaisia ​​uutisia ja tutkimusta.

3: Opiskelija osaa etsiä ja lieventää yleisiä verkkosovellusten haavoittuvuuksia. Opiskelija ymmärtää olemassa olevien hyödyntämistekniikoiden toimintaperiaatteet. Opiskelija osaa kirjoittaa raportin, joka kattaa useimmat havainnot ja lieventämissuositukset useimpien tällä kurssilla käsiteltyjen haavoittuvuustyyppien osalta. Opiskelija osaa päivittää tietojaan itsenäisesti seuraamalla erilaisia ​​uutisia ja tutkimusta.

Arviointikriteerit, kiitettävä (5)

5: Opiskelija osaa itsenäisesti etsiä, hyödyntää ja lieventää yleisiä verkkosovellusten haavoittuvuuksia. Opiskelija osaa luoda ja muokata hyväksikäyttöjä haluttujen tavoitteiden saavuttamiseksi. Opiskelija osaa kirjoittaa tiiviin raportin, joka kattaa kaikki keskeiset havainnot ja lieventämissuositukset kaikille tällä kurssilla käsittelemille haavoittuvuuksille. Opiskelija osaa päivittää tietojaan itsenäisesti seuraamalla erilaisia ​​uutisia ja tutkimusta.

Arviointikriteeri, hyväksytty/hylätty

0: Opiskelija ei täytä arvosanalle 1 asetettuja kriteerejä.

Enrollment

01.08.2024 - 22.08.2024

Timing

26.08.2024 - 18.12.2024

Number of ECTS credits allocated

5 op

Mode of delivery

Face-to-face

Unit

Teknologiayksikkö

Campus

Lutakon kampus

Teaching languages
  • English
Seats

0 - 35

Degree programmes
  • Bachelor's Degree Programme in Information and Communications Technology
  • Tieto- ja viestintätekniikka (AMK)
Teachers
  • Joonatan Ovaska
Groups
  • TTV22S5
    Tieto- ja viestintätekniikka (AMK)
  • TTV22S2
    Tieto- ja viestintätekniikka (AMK)
  • TTV22S3
    Tieto- ja viestintätekniikka (AMK)
  • TIC22S1
    Bachelor's Degree Programme in Information and Communications Technology
  • TTV22S1
    Tieto- ja viestintätekniikka (AMK)
  • TTV22S4
    Tieto- ja viestintätekniikka (AMK)

Objective

This course enables the student to think about web application security in a holistic fashion. The student will learn an effective toolset and methodology for finding, exploiting, and fixing common web application vulnerabilities.

Competences
EUR-ACE: Knowledge and understanding 
EUR-ACE: Engineering practice 
EUR-ACE: Multidisciplinary competences

Content

This is a course about applied cyber security. We will consider common web application vulnerabilities through a series of hands-on exercises using real-world examples (mostly).

We will address various topics related to web and web applications, such as the browser security model, input validation, servlet containers, databases and injections.

We will address current trends in cyber security landscape, and their effect on the web.

Oppimateriaali ja suositeltava kirjallisuus

Materials in the e-learning environment and the book: Real-World Bug Hunting: A Field Guide to Web Hacking

Teaching methods

- lectures
- independent study
- distance learning
- webinars
- exercises
- learning tasks
- book

Exam schedules

No exam, assessment is based on assignments.

Vaihtoehtoiset suoritustavat

The admission procedures are described in the degree rule and the study guide. The teacher of the course will give you more information on possible specific course practices.

Student workload

One credit (1 Cr) corresponds to an average of 27 hours of work.

- lectures 15 h
- demos 5 h
- reading assignments 15 h
- independent study 40 h
- assignment solving 50 h
- assignment reporting 10 h
Total 135 h

Content scheduling

Assignments have weekly deadlines.

We go through OWASP TOP10 2021 list week by week basis and we do assignments based on those topics.

Further information

No exam, assessment is based on assignments.

Evaluation scale

0-5

Arviointikriteerit, tyydyttävä (1-2)

2: The student is able to find common web application vulnerabilities. The student can understand the working principles of existing exploit techniques. The student can write a report that covers most findings and mitigation recommendations for most vulnerability types addressed by this course. The student is able to update their knowledge independently by following various news and research outlets.

1: The student is able to find simple web application vulnerabilities. The student can understand the basics of existing exploit techniques. The student can write a report that covers findings and mitigation recommendations for some vulnerability types addressed by this course. The student is able to find information about major news and events.

Arviointikriteerit, hyvä (3-4)

4: The student is able to find and mitigate common web application vulnerabilities. The student can modify and create simple exploits to achieve desired goals. The student can write a report that covers findings and mitigation recommendations for most vulnerability types addressed by this course. The student is able to update their knowledge independently by following various news and research outlets.

3: The student is able to find and mitigate common web application vulnerabilities. The student can understand the working principles of existing exploit techniques. The student can write a report that covers most findings and mitigation recommendations for most vulnerability types addressed by this course. The student is able to update their knowledge independently by following various news and research outlets.

Assessment criteria, excellent (5)

5: The student is able to independently find, exploit, and mitigate common web application vulnerabilities. The student can create and modify exploits to achieve the desired goals. The student can write a succinct report that covers all the salient findings and mitigation recommendations for all vulnerability types addressed by this course. The student is able to update their knowledge independently by following various news and research outlets.

Assessment criteria, approved/failed

0: The student does not meet the criteria set for grade 1.

Qualifications

The course requires a solid understanding of programming and previous experience in web technologies. The student must be comfortable using command line tools.

Enrollment

01.08.2023 - 24.08.2023

Timing

28.08.2023 - 17.11.2023

Number of ECTS credits allocated

5 op

Mode of delivery

Face-to-face

Unit

Teknologiayksikkö

Campus

Lutakon kampus

Teaching languages
  • English
Seats

0 - 35

Degree programmes
  • Bachelor's Degree Programme in Information and Communications Technology
  • Tieto- ja viestintätekniikka (AMK)
Teachers
  • Joonatan Ovaska
Groups
  • TTV21S3
    Tieto- ja viestintätekniikka (AMK)
  • TTV21S5
    Tieto- ja viestintätekniikka (AMK)
  • TIC21S1
    Bachelor's Degree Programme in Information and Communications Technology
  • TTV21S2
    Tieto- ja viestintätekniikka (AMK)
  • TTV21S1
    Tieto- ja viestintätekniikka (AMK)

Objective

This course enables the student to think about web application security in a holistic fashion. The student will learn an effective toolset and methodology for finding, exploiting, and fixing common web application vulnerabilities.

Competences
EUR-ACE: Knowledge and understanding 
EUR-ACE: Engineering practice 
EUR-ACE: Multidisciplinary competences

Content

This is a course about applied cyber security. We will consider common web application vulnerabilities through a series of hands-on exercises using real-world examples (mostly).

We will address various topics related to web and web applications, such as the browser security model, input validation, servlet containers, databases and injections.

We will address current trends in cyber security landscape, and their effect on the web.

Oppimateriaali ja suositeltava kirjallisuus

Materials in the e-learning environment and the book: Real-World Bug Hunting: A Field Guide to Web Hacking

Teaching methods

- lectures
- independent study
- distance learning
- webinars
- exercises
- learning tasks
- book

Exam schedules

No exam, assessment is based on assignments.

Vaihtoehtoiset suoritustavat

The admission procedures are described in the degree rule and the study guide. The teacher of the course will give you more information on possible specific course practices.

Student workload

One credit (1 Cr) corresponds to an average of 27 hours of work.

- lectures 20 h
- demos and walktroughs 10 h
- assignments 50 h
- independent study 35 h
- reading and reflecting documentation 20 h
Total 135 h

Evaluation scale

0-5

Arviointikriteerit, tyydyttävä (1-2)

2: The student is able to find common web application vulnerabilities. The student can understand the working principles of existing exploit techniques. The student can write a report that covers most findings and mitigation recommendations for most vulnerability types addressed by this course. The student is able to update their knowledge independently by following various news and research outlets.

1: The student is able to find simple web application vulnerabilities. The student can understand the basics of existing exploit techniques. The student can write a report that covers findings and mitigation recommendations for some vulnerability types addressed by this course. The student is able to find information about major news and events.

Arviointikriteerit, hyvä (3-4)

4: The student is able to find and mitigate common web application vulnerabilities. The student can modify and create simple exploits to achieve desired goals. The student can write a report that covers findings and mitigation recommendations for most vulnerability types addressed by this course. The student is able to update their knowledge independently by following various news and research outlets.

3: The student is able to find and mitigate common web application vulnerabilities. The student can understand the working principles of existing exploit techniques. The student can write a report that covers most findings and mitigation recommendations for most vulnerability types addressed by this course. The student is able to update their knowledge independently by following various news and research outlets.

Assessment criteria, excellent (5)

5: The student is able to independently find, exploit, and mitigate common web application vulnerabilities. The student can create and modify exploits to achieve the desired goals. The student can write a succinct report that covers all the salient findings and mitigation recommendations for all vulnerability types addressed by this course. The student is able to update their knowledge independently by following various news and research outlets.

Assessment criteria, approved/failed

0: The student does not meet the criteria set for grade 1.

Qualifications

The course requires a solid understanding of programming and previous experience in web technologies. The student must be comfortable using command line tools.

Ilmoittautumisaika

01.08.2022 - 25.08.2022

Ajoitus

29.08.2022 - 16.12.2022

Opintopistemäärä

5 op

Toteutustapa

Lähiopetus

Yksikkö

Teknologiayksikkö

Toimipiste

Lutakon kampus

Opetuskielet
  • Suomi
Paikat

0 - 35

Koulutus
  • Tieto- ja viestintätekniikka (AMK)
Opettaja
  • Joonatan Ovaska

Tavoitteet

Tällä kurssilla opiskelija pohtii verkkosovellusten turvallisuutta kokonaisvaltaisesti. Opiskelija oppii käyttämään tehokkaasti työkaluja ja menetelmiä yleisten verkkosovellusten haavoittuvuuksien etsimiseen, hyödyntämiseen ja korjaamiseen.

Opintojakson osaamiset
EUR-ACE Tieto ja ymmärrys
- Tieto ja ymmärrys oman erikoistumisalan perustana olevista insinööritieteistä tasolla, joka on tarpeen ohjelman muiden oppimistulosten saavuttamiseksi, mukaan lukien käsitys tulevaisuuden vaatimuksista omalla alalla.
- Tieto ja ymmärrys soveltuvista materiaaleista, laitteista, työvälineistä, teknologioista ja prosesseista sekä niiden rajoituksista omalla erikoistumisalalla.
- Tieto ja ymmärrys soveltuvista analyysi-, suunnittelu- ja tutkimus/kehittämistekniikoista ja -menetelmistä sekä niiden rajoituksista omalla erikoistumisalalla.
EUR-ACE Monialainen osaaminen
- Tietoisuus insinöörin ammattikäytännön yhteiskunnallisista, työsuojeluun ja ympäristöön liittyvistä, taloudellisista ja teollisista vaikutuksista sekä ymmärrys niiden asettamista rajoituksista.
EUR-ACE Tekniikan soveltaminen käytäntöön
- Kyky tunnistaa, muotoilla ja ratkaista monimutkaisia ongelmia kyeten valitsemaan ja omaten käytännön taidot soveltaa tilanteeseen soveltuvia, vakiintuneita analyyttisiä, laskennallisia ja kokeellisia tekniikoita ja menetelmiä.
- Kyky selvittää oman alan ammattikäytän-töä koskevat ohjeet ja turvallisuus-määräykset sekä soveltaa niitä.

Sisältö

Tämä kurssi on sovellettua kyberturvallisuutta. Käymme läpi yleisiä verkkosovellusten haavoittuvuuksia useiden käytännön harjoitusten avulla käyttäen todellisia esimerkkejä (enimmäkseen).

Käsittelemme erilaisia ​​verkkoon ja verkkosovelluksiin liittyviä aiheita, kuten selaimen suojausmallia, syötteiden validointia, servlet-säiliöitä, tietokantoja ja lisäyksiä.

Käsittelemme kyberturvallisuusympäristön tämänhetkisiä trendejä ja niiden vaikutuksia verkkoon.

Oppimateriaali ja suositeltava kirjallisuus

Verkko-oppimisympäristössä julkaistava sähköinen materiaali, sekä kirja: Real-World Bug Hunting: A Field Guide to Web Hacking

Opetusmenetelmät

- luennot
- itseopiskelu
- verkko-opinnot
- webinaarit
- harjoitustyöt
- oppimistehtävät
- kirja

Tenttien ajankohdat ja uusintamahdollisuudet

Ei tenttiä, arviointi perustuu tehtävä suorituksiin.

Vaihtoehtoiset suoritustavat

Hyväksilukemisen menettelytavat kuvataan tutkintosäännössä ja opinto-oppaassa. Opintojakson opettaja antaa lisätietoa mahdollisista opintojakson erityiskäytänteistä.

Opiskelijan ajankäyttö ja kuormitus

Yksi opintopiste (1 op) tarkoittaa keskimäärin 27 tunnin työtä.

- luennot 10 h
- harjoitustyöt 60 h
- itsenäinen työskentely 45 h
- lukeminen ja reflektoitu dokumentaatio 20 h
Yhteensä 135 h

Arviointiasteikko

0-5

Arviointikriteerit, tyydyttävä (1-2)

2: Opiskelija osaa löytää yleisiä verkkosovellusten haavoittuvuuksia. Opiskelija ymmärtää olemassa olevien hyödyntämistekniikoiden toimintaperiaatteet. Opiskelija osaa kirjoittaa raportin, joka kattaa useimmat havainnot ja lieventämissuositukset useimpien tällä kurssilla käsiteltyjen haavoittuvuustyyppien osalta. Opiskelija osaa päivittää tietojaan itsenäisesti seuraamalla erilaisia ​​uutisia ja tutkimusta.

1: Opiskelija osaa löytää yksinkertaisia ​​verkkosovellusten haavoittuvuuksia. Opiskelija ymmärtää olemassa olevien hyväksikäyttötekniikoiden perusteet. Opiskelija osaa kirjoittaa raportin, joka kattaa havainnot ja lieventämissuositukset joidenkin tällä kurssilla käsiteltyjen haavoittuvuustyyppien osalta. Opiskelija osaa löytää tietoa tärkeimmistä uutisista ja tapahtumista.

Arviointikriteerit, hyvä (3-4)

4: Opiskelija osaa löytää ja lieventää yleisiä verkkosovellusten haavoittuvuuksia. Opiskelija osaa muokata ja luoda yksinkertaisia ​​hyödykkeitä haluttujen tavoitteiden saavuttamiseksi. Opiskelija osaa kirjoittaa raportin, joka kattaa havainnot ja lieventämissuositukset useimpien tällä kurssilla käsiteltyjen haavoittuvuustyyppien osalta. Opiskelija osaa päivittää tietojaan itsenäisesti seuraamalla erilaisia ​​uutisia ja tutkimusta.

3: Opiskelija osaa etsiä ja lieventää yleisiä verkkosovellusten haavoittuvuuksia. Opiskelija ymmärtää olemassa olevien hyödyntämistekniikoiden toimintaperiaatteet. Opiskelija osaa kirjoittaa raportin, joka kattaa useimmat havainnot ja lieventämissuositukset useimpien tällä kurssilla käsiteltyjen haavoittuvuustyyppien osalta. Opiskelija osaa päivittää tietojaan itsenäisesti seuraamalla erilaisia ​​uutisia ja tutkimusta.

Arviointikriteerit, kiitettävä (5)

5: Opiskelija osaa itsenäisesti etsiä, hyödyntää ja lieventää yleisiä verkkosovellusten haavoittuvuuksia. Opiskelija osaa luoda ja muokata hyväksikäyttöjä haluttujen tavoitteiden saavuttamiseksi. Opiskelija osaa kirjoittaa tiiviin raportin, joka kattaa kaikki keskeiset havainnot ja lieventämissuositukset kaikille tällä kurssilla käsittelemille haavoittuvuuksille. Opiskelija osaa päivittää tietojaan itsenäisesti seuraamalla erilaisia ​​uutisia ja tutkimusta.

Arviointikriteeri, hyväksytty/hylätty

0: Opiskelija ei täytä arvosanalle 1 asetettuja kriteerejä.

Esitietovaatimukset

Kurssi edellyttää vankkaa ohjelmoinnin ymmärrystä ja aikaisempaa kokemusta web-tekniikoista. Opiskelijan tulee osata käyttää komentorivityökaluja.