Mobile menu icon
Skip to navigation | Skip to main content | Skip to footer
Mobile menu icon Search iconSearch
Search type

Department of Computer Science

Research projects

As a postgraduate researcher in the Department of Computer Science, you’ll contribute to research that addresses urgent global challenges – from safeguarding digital communications and enabling responsible AI, to foundations and using big data for societal benefit.

Working in a collaborative, interdisciplinary environment, you’ll access advanced facilities and partner with industry leaders to shape the future of technology and its role in society.

We have some of our projects listed below, and you can get in touch directly with our academics if you're interested in any of our specific areas of expertise or browse research themes and find supervisors linked to each theme.

You can also explore the projects available through our Centres for Doctoral Training (CDTs), which facilitate funded programmes on research areas such as graphene, robotics and AI.

Available projects


Combining Concolic Testing with Machine Learning to Find Software Vulnerabilities in the Internet of Things

Project description

Concolic testing is a software verification technique that has been successfully applied to find subtle bugs in embedded software. In particular, it relies on efficient symbolic execution engines to produce program inputs, which can be used to concretely execute the program under analysis with the goal of achieving high code coverage. Machine learning techniques have also merged as an efficient approach to predict properties of the program or to identify regions of the state-space to be explored for some particular property. Given that Internet of Things (IoT) is now present in all technology sections, allowing different systems to connect and exchange data, the identification of software vulnerabilities in IoT devices has become a major concern in large IT organisations. This PhD research is concerned with identifying software vulnerabilities by combining concolic testing with machine learning techniques to prevent unauthorised access to the IoT devices. In particular, the main objectives of this PhD research are: (1) analyse and develop a deeper understanding of software security as a whole to capture main properties of interest to a secure network in IoT; (2) understand all possible cyber threats/attacks that IoT devices can face in order to shield the network from malicious attacks, thus protecting the data flowing through the network; (3) propose an efficient method to identify software vulnerabilities using concolic testing and machine learning techniques, in order to make IoT devices less susceptible to the cyber threats/attacks; (4) apply this verification method to a large number of open source applications that can benefit from a rigorous software security analysis.

Person specification

For information

Essential

Applicants will be required to evidence the following skills and qualifications.

  • You must be capable of performing at a very high level.
  • You must have a self-driven interest in uncovering and solving unknown problems and be able to work hard and creatively without constant supervision.

Desirable

Applicants will be required to evidence the following skills and qualifications.

  • You will have good time management.
  • You will possess determination (which is often more important than qualifications) although you'll need a good amount of both.

General

Applicants will be required to address the following.

  • Comment on your transcript/predicted degree marks, outlining both strong and weak points.
  • Discuss your final year Undergraduate project work - and if appropriate your MSc project work.
  • How well does your previous study prepare you for undertaking Postgraduate Research?
  • Why do you believe you are suitable for doing Postgraduate Research?