Technical automation of Windows platform testing
Romanov, Mikael (2019)
Romanov, Mikael
2019
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2019100419583
https://urn.fi/URN:NBN:fi:amk-2019100419583
Tiivistelmä
The hype of digitalization, artificial intelligence, and automation has brought with it the need to automate all manual operations that are performed more than once. Cyber security scene has begun to rely on automation to create a variety of tools that make manual work easier by removing the burden of ongoing avalanche of security vulnerabilities. Due to security vulnerabilities, companies purchasing security services have started to rely on ongoing services that actively provide automated vulnerability testing and reporting. Creating unique automation tools allows the possibility to reach a new and interesting customer target group.
The purpose of the study was to investigate various programming languages and automation tools that could be used to improve the flow of the security testing process. The goal of the solutions was to use various tools that can be used in Windows client test. The goal was to build and develop a prototype solution that could generate a comprehensive final report by replacing manual repetitive actions with automation. The goal was to test and produce programs that could perform manual repetitive operations and produce the finished results in a reportable format.
The result was a plethora of different automation programs and tools combined together. Performing tests on the prototype program gave in run-time theoretical results, which were used to evaluate a time window for two separate programs. The final product made client engagements reporting more fluent by creating different type of easy to read and interpret appendixes for the final report.
The goal was achieved; however, the solution requires better optimization and more features to fix errors. Digitalisaation, tekoälyn ja automaation hehkutus on tuonut tullessaan tarpeen automatisoida kaikki manuaaliset toiminnot, jotka suoritetaan useammin kuin yhden kerran. Tietoturvan piirissä on ruvettu tukeutumaan automaatioon luomalla erilaisia työkaluja, jotka helpottavat manuaalista työtä poistamalla jatkuvien tietoturvahaavoittuvuuksien kasvun mukana tulevaa kuormaa. Tietoturvahaavoittuvuuksien vuoksi tietoturvapalveluita ostavat yritykset ovat ruvenneet tukeutumaan jatkuviin palveluihin, jotka aktiivisesti tarjoavat automatisoitua testausta ja raportointia haavoittuvuuksista. Yksilöivien automaatiotyökalujen luominen mahdollistaa uuden ja mielenkiintoisen asiakaskohderyhmän tavoittamisen.
Työn tavoitteena oli tutkia erilaisia ohjelmointikieliä ja automaatiotyökaluja, joita voitaisiin käyttää parantamaan tietoturvatestauksen prosessin kulkua. Ratkaisujen tavoitteena oli käyttää erilaisia työkaluja, joita voidaan käyttää Windows-työasematestauksessa. Tavoitteena oli rakentaa ja kehittää prototyyppinen ratkaisu, jonka avulla voitaisiin mahdollisesti tuottaa kattava loppuraportti korvaamalla manuaaliset toistuvat toiminnot automaatiolla. Tavoitteena oli testata ja tuottaa ohjelmia, jotka pystyvät tekemään manuaaliset toistuvat toiminnot ja tuottamaan valmiita tuloksia raportoitavassa muodossa.
Tuloksena oli lukuisa määrä eri automaatio-ohjelmia/työkaluja, jotka yhdistettiin keskenään yhdeksi kokonaisuudeksi. Ohjelman testisuorittamisesta tuli teoreettisia suoritusaikoja, joiden perusteella pystyttiin arvioimaan aikaikkuna, jonka väliin kaksi erillistä testiä suoriutuu. Lopullinen tuote analysoi lukuisia eri tuloksia ja teki niistä helposti luettavia ja tulkittavia liitteitä asiakkaan loppuraporttiin.
Tavoite saavutettiin, mutta ratkaisu vaatii parempaa optimointia ja lisäominaisuuksia virheiden korjaamiselle.
The purpose of the study was to investigate various programming languages and automation tools that could be used to improve the flow of the security testing process. The goal of the solutions was to use various tools that can be used in Windows client test. The goal was to build and develop a prototype solution that could generate a comprehensive final report by replacing manual repetitive actions with automation. The goal was to test and produce programs that could perform manual repetitive operations and produce the finished results in a reportable format.
The result was a plethora of different automation programs and tools combined together. Performing tests on the prototype program gave in run-time theoretical results, which were used to evaluate a time window for two separate programs. The final product made client engagements reporting more fluent by creating different type of easy to read and interpret appendixes for the final report.
The goal was achieved; however, the solution requires better optimization and more features to fix errors.
Työn tavoitteena oli tutkia erilaisia ohjelmointikieliä ja automaatiotyökaluja, joita voitaisiin käyttää parantamaan tietoturvatestauksen prosessin kulkua. Ratkaisujen tavoitteena oli käyttää erilaisia työkaluja, joita voidaan käyttää Windows-työasematestauksessa. Tavoitteena oli rakentaa ja kehittää prototyyppinen ratkaisu, jonka avulla voitaisiin mahdollisesti tuottaa kattava loppuraportti korvaamalla manuaaliset toistuvat toiminnot automaatiolla. Tavoitteena oli testata ja tuottaa ohjelmia, jotka pystyvät tekemään manuaaliset toistuvat toiminnot ja tuottamaan valmiita tuloksia raportoitavassa muodossa.
Tuloksena oli lukuisa määrä eri automaatio-ohjelmia/työkaluja, jotka yhdistettiin keskenään yhdeksi kokonaisuudeksi. Ohjelman testisuorittamisesta tuli teoreettisia suoritusaikoja, joiden perusteella pystyttiin arvioimaan aikaikkuna, jonka väliin kaksi erillistä testiä suoriutuu. Lopullinen tuote analysoi lukuisia eri tuloksia ja teki niistä helposti luettavia ja tulkittavia liitteitä asiakkaan loppuraporttiin.
Tavoite saavutettiin, mutta ratkaisu vaatii parempaa optimointia ja lisäominaisuuksia virheiden korjaamiselle.