10 research outputs found
An Empirical Analysis of Vulnerabilities in Python Packages for Web Applications
This paper examines software vulnerabilities in common Python packages used
particularly for web development. The empirical dataset is based on the PyPI
package repository and the so-called Safety DB used to track vulnerabilities in
selected packages within the repository. The methodological approach builds on
a release-based time series analysis of the conditional probabilities for the
releases of the packages to be vulnerable. According to the results, many of
the Python vulnerabilities observed seem to be only modestly severe; input
validation and cross-site scripting have been the most typical vulnerabilities.
In terms of the time series analysis based on the release histories, only the
recent past is observed to be relevant for statistical predictions; the
classical Markov property holds.Comment: Forthcoming in: Proceedings of the 9th International Workshop on
Empirical Software Engineering in Practice (IWESEP 2018), Nara, IEE
Tietoturvariskit avoimen lähdekoodin JavaScript-kirjastoissa
Avoimen lähdekoodin kirjastojen käyttö web-ohjelmoinnissa on yleinen käytäntö, joka tuo ohjelmoijille paljon etuja esimerkiksi säästämällä aikaa, vaivaa sekä rahaa. Tämä käytäntö vaatii ohjelmoijilta kuitenkin tarkkuutta, sillä kirjastot voivat tuoda hyökkääjille uusia hyökkäysvektoreita tietoturva-aukkojen kautta. Tämän työn tavoite on tutkia minkälaisia riskejä avoimen lähdekoodin JavaScript-kirjastot tuovat web-ohjelmointiin. Lisäksi työssä esitetään konkreettisia toimia joihin kehittäjät voivat ryhtyä minimoidakseen tietoturvariskit.
Tutkielma on toteutettu kirjallisuuskatsauksena. Lähteinä toimivat alan tieteelliset artikkelit sekä konferenssipaperit, verkkojulkaisut ja raportit. Web-ohjelmointi on nopeasti kehittyvä ala, joten lähteiksi on valittu ensisijaisesti julkaisuja viimeisen viiden vuoden ajalta.
Tutkimuksen tulokset osoittavat, että riskejä tuottavat haavoittuvaiset sekä vanhentuneet kirjastot. Haavoittuvaiset kirjastot tarkoittavat kirjastoja, joissa syystä tai toisesta esiintyy haavoittuvaisuus. Usein syynä haavoittuvaisuudelle on kehittäjän tekemä ohjelmointivirhe. Haavoittuvaisen kirjaston tapauksessa olisi tärkeää, että sen ylläpitäjä saisi haavoittuvaisuuden korjattua mahdollisimman pian ja että hän kommunikoisi avoimesti kirjaston käyttäjien kanssa, jotta uusin päivitys tavoittaisi mahdollisimman monet ja että haavoittuvaisen version tuomat uhkat olisivat selvät. Vanhentuneiden kirjastojen tapauksessa haavoittuvaisuus on jo korjattu uusimmassa versiossa, mutta kirjaston käyttäjä ei ole vielä ottanut uusinta versiota käyttöön. Tällaisen tilanteen ehkäisemiseksi myös kirjaston käyttäjän on otettava itselleen vastuuta ja seurattava kirjaston ylläpitäjien viestintää sekä varmistettava ajoittain, että kirjastot ovat ajan tasalla
On the evolution of technical lag in the npm package dependency network
<p>This is the replication package for paper "On the evolution of technical lag in the npm package dependency network" accepted for publication in ICSME 2018.</p