Computers and Technology
Computers and Technology, 21.09.2019 05:30, greg9207

Identify the security vulnerabilities in all of these code segments and, for each vulnerability, discuss at least one way that it could be improved.
a)
/* file leak */
int main(int argc, char *argv[]){
char *filepath = argv[0];
char *shellpath = argv[1];
file *passwords;
passwords = fopen(filepath, "r");
/* read password and do something with it */
/* . . */
/* execute alternative shell */
execl(shellpath, "shell", null);
}
b)
/*
assume the following function is written for an electronic storefront.
the user will enter the id of the item to be ordered, as well
as the quantity of units that they would like to purchase.
the program will then lookup the price for the price for the
item using a predefined function, and return
the total cost of the order.
*/
int gettotalcost(){
char itemid[9];
int price, unitsordered, cost;
printf(" enter the 9-digit id of desired item: ");
scanf("%s", & itemid);
/* lookup price according to the itemid */
price = getpricebyid(itemid);
printf(" enter the quantity of units to be ordered: ");
scanf("%d", & unitsordered);
cost = price * unitsordered;
return cost;
}
c)
/* the following is intended to return a user's full name
by concatenating the user's first and last name into a single string
and then returning that string. */
char *getfullname(char *firstname, char *lastname, int max_len){
char fullname[max_len];
strcpy(fullname, firstname);
strcat(fullname, " ");
strcat(fullname, lastname);
return fullname;
}
d)
/* the following code snippet runs through the list of cli arguments
entered and displays them to the console. */
int main(int argc, char *argv[]){
int i;
printf("you've entered the following arguments: ");
for(i = 0; i < argc; i++){
printf(argv[i]);
printf("\n");
}
/* */
}

answer
Answers: 1

Other questions on the subject: Computers and Technology

image
Computers and Technology, 22.06.2019 09:30, relic7391
Is a string of code written to hurt others by damaging or destroying
Answers: 1
image
Computers and Technology, 23.06.2019 06:00, sebcbal
When is a chart legend used a. all the time b. whenever you are comparing data that is the same c. whenever you are comparing multiple sets of data d. only for hand-drawn charts
Answers: 2
image
Computers and Technology, 23.06.2019 09:00, 19youngr
Which company provides a crowdsourcing platform for corporate research and development? a: mtruk b: wiki answers c: mediawiki d: innocentive
Answers: 2
image
Computers and Technology, 23.06.2019 10:00, austintules2005
Whats three fourths of 15(this is supposed to be in math but i clicked too fast)
Answers: 1
Do you know the correct answer?
Identify the security vulnerabilities in all of these code segments and, for each vulnerability, dis...

Questions in other subjects:

Konu
Mathematics, 16.03.2020 22:39