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

Python implementation of a solver for the desert crossing, Assume you have ...

Assume you have a truck which has to travel across a desert from the base camp at position 0 (left) to the target camp at position 4 (right). The intermediate positions 1,2, and 3

Random Geometric Graphs, Displaying random geometric graphs in an uniform s...

Displaying random geometric graphs in an uniform square, unit disk, dense rim unit disk, and uniform sphere

Programming embedded systems- interact with the environment, Interacting wi...

Interacting with the environment Computer systems have  to communicate with  the world around them,  getting information about  the external world, and  taking  actions  to cha

Small Viruses, I need how to write small kind of viruses...

I need how to write small kind of viruses...

Angle between 2 moving line , how to calculate angle between 2 moving line ...

how to calculate angle between 2 moving line in 2d space

Perimeter of a polygon, Perimeter of a polygon Now, let's consider the...

Perimeter of a polygon Now, let's consider the problem of computing the length  of the perimeter of a polygon. The input is a structure of vertices,  encoded as a list of list

Question, Data array A has data series from 1,000,000 to 1 with step size 1...

Data array A has data series from 1,000,000 to 1 with step size 1, which is in perfect decreasing order. Data array B has data series from 1 to 1,000,000, which is in random order.

Program to calculate area function, Rewrite the area.py program (shown bel...

Rewrite the area.py program (shown below, or in the Creating Functions section of the tutorial) so that it has separate functions for the perimeter and area of a square, a rectangl

Programs and data , Programs and Data Object-oriented programming is a...

Programs and Data Object-oriented programming is a popular way  of managing programs, which  groups together data  with  the procedures that  works on them,  thus  facilitatin

While loop, You should use for whenever you can, because  it creates  the s...

You should use for whenever you can, because  it creates  the structure of your  loops clear. Sometimes, however, you require to do an operation various times, but you don't want t

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