Software Safety

Developing secure, decentralized applications on blockchain

Modern blockchain platforms enable the creation of distributed fault-tolerant applications (dApps) that are able to accumulate and distribute users’ digital assets according to the rules described in the smart contract. The cornerstone of dApp development is the security of the application as it operates on users’ digital assets and cryptocurrency. This course covers the process of developing a dApp for the Ethereum blockchain platform and Solidity smart contract language, with a focus on reliability and security issues of the developed solution through the use of modern smart contract testing and static analysis tools: Truffle, Mythril, SolTracer.

Mastering the Spring Security development framework

This course will give students an introduction to the Spring Security Framework, a security library for projects developed using the Spring Framework. Students will learn how to use Spring Security to build secure enterprise JavaEE applications. The course contains detailed information on using different security tools: authentication, authorization and using these tools to protect Web applications.

Basic aspects of security of embedded Linux systems

The course covers basic security aspects of embedded Linux systems. Comprehensive information about existing problems in the embedded systems area and methods to solve them is given.

Basic Vulnerabilities in the Security of WEB-Applications

The course introduces students to the most popular current web application vulnerabilities from the OWASP Top-10 2017 list, ways to identify them statically and dynamically, as well as reliable vulnerability mitigation techniques. All the theoretical knowledge studied is supported by a significant number of practical assignments.

Testing the Security of Web Applications

At a time of widespread use of web technologies are relevant issues of security and protection of information. This course gives the opportunity to consider, using real-life examples, the main ways of attacking web applications according to the OWASP project, to study the details of each vulnerability and methods of testing.