Common Vulnerabilities, Python Programming

Assignment Help:
1 Low Level Exploits
1.1 Savegames
Jimmy is becoming increasingly frustrated at the computer game hes playing.
He has a save right before the levels boss but he needs either more health
or more gold in order to win. The game is loaded from a normal file on disk
but the health and gold are encrypted in some complicated fashion. The
1
characters name is not, however.
1. Set the characters gold or health to a number greater than 9000 by
utilising a buffer overflow. How did you achieve this? Explain using
reference to bytes and ASCII as to what the exact value was that you
achieved. [4 marks]
2. How could this exploit be prevented? [2 marks]
3. Could this exploit be useful for more than just the game? Could it be
used to gain access to a system? If not, why not? If so, where might it
be used? [4 marks]
1.2 General Questions [11 marks]
1. Why is it necessary for us to provide the flag -fno-stack-protector to
GCC? What is a canary in terms of a buffer overflow and how can a
canary prevent a buffer overflow exploit? [4 marks]
2. If the game above was written in Java instead of C, would the savegame
still be exploitable? [2 marks]
3. Imagine you were exploiting a program that was running with escalated
privileges (i.e. could read sensitive files, modify other users settings and
so on) is it possible to obtain a BASH shell using buffer overflows? Be
sure to explain what shellcode is and how the shellcode is executed1
.
[5 marks]
2 SQL Exploits (10 marks)
1. Show how it is possible to log in as any user by performing an SQL
injection attack on the username/password login page. [2 marks]
2. The website has been clued in on their major security problem and prevented
the previous attack. Is it possible to use the status query to work
out the password of one of the administrators Bobby2
? [4 marks]
1The traditional introduction to this topic is Smashing The Stack For Fun And Profit:
https://www.phrack.com/issues.html?issue=49&id=14
2SQLite
(the database in use here) doesnt allow multiple SQL statements to be executed
in a single execute query consider using substr and subqueries
2
3. How can these attacks be prevented? Is it a difficult security problem
to fix? Why is it so common? [4 marks]

Related Discussions:- Common Vulnerabilities

Robotics, how to started robotics proggraming in begning

how to started robotics proggraming in begning

Help, When investing money, an important concept to know is compound intere...

When investing money, an important concept to know is compound interest. The equation FV = PV (1+rate)periods . This relates the following four quantities. The present value (

Conditionals- booleans, Booleans   Before we talk about  conditional...

Booleans   Before we talk about  conditionals, we require  to clarify the Boolean  data  type.  It has two values False and True. Typical statement that have Boolean values

Lost, Import the sample code below into the Python IDLE and enhance it, run...

Import the sample code below into the Python IDLE and enhance it, run it and debug it. Add features to make this a more realistic database tool by providing for easy data entry an

Work with functions, inputWithinRange (prompt, lowValue, highValue) This fu...

inputWithinRange (prompt, lowValue, highValue) This function will ask for a number using the prompt parameter. The function will only return a value that is within the inclusive ra

Turtle graphics module in python programming language, Your assignment for ...

Your assignment for the semester will involve the development of a system for drawing trees using the Python programming language and the turtle graphics module (turtle.py). Comple

List comprehensions, List Comprehensions   Python has a very nice b...

List Comprehensions   Python has a very nice built-in  facility for doing  many  iterative methods, known as list comprehensions. The basic template is       [

Prime number, Use the function to compute and print the sum of first n prim...

Use the function to compute and print the sum of first n prime numbers.

program that receives as input from the user, Write an algorithm for a pro...

Write an algorithm for a program that receives, as input from the user, 2 string variables and 2 integer variables; then joins together and displays the combined strings; and final

Example of Procedures as First-class objects, Procedures in Firrst-class ob...

Procedures in Firrst-class objects In Python, unlike  many  other  languages, methods are behave in much  the same way as num­ bers:  they  can be stored as values  of variabl

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd