Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

As an expert in computer security, you have been approached by an organisation t

ID: 3654783 • Letter: A

Question

As an expert in computer security, you have been approached by an organisation that campaigns for the rights of torture victims and have been asked to help the organisation gain unauthorised access to the computer systems of an American company. This will help them confirm or deny that this company is selling equipment that is used directly in the torture of political prisoners. Discuss the ethical dilemmas that this request raises and how you would react to this request.

Explanation / Answer

this program help us to solve the above problem #include #include #include #include #include #include #include #include #include #include //define server parameters #define WEBIP "172.16.100.2" int main() { //declare variables struct sockaddr_in my_addr,client_addr,server_addr; struct hostent *server_host; int true=1; int client_socket_id,server_socket_id; int client_id;int sin_size; int client_bytes_received; char send_data [1024],recv_data[1024],post_data[1024]; server_host=gethostbyname(WEBIP2); //create a socket to listen to client if ((client_socket_id = socket(AF_INET, SOCK_STREAM, 0)) == -1) { perror("Error Creating Socket"); exit(1); } if (setsockopt(client_socket_id,SOL_SOCKET,SO_REUSEADDR,&true,sizeof(int)) == -1) { perror("Setsockopt"); exit(1); } //create socket to connect to webserver if ((server_socket_id = socket(AF_INET, SOCK_STREAM, 0)) == -1) { perror("Error Creating Webserver Socket"); exit(1); } my_addr.sin_family = AF_INET; my_addr.sin_port = htons(7070); my_addr.sin_addr.s_addr = INADDR_ANY; //bzero(&(my_addr.sin_zero),8); bzero(&(server_addr.sin_zero),8); server_addr.sin_family = AF_INET; server_addr.sin_port = htons(WEBPORT); server_addr.sin_addr = *((struct in_addr *)server_host->h_addr); //bind to a socket if (bind(client_socket_id, (struct sockaddr *)&my_addr, sizeof(struct sockaddr))== -1) { perror("Unable to bind"); exit(1); } //listen to socket if (listen(client_socket_id, 5) == -1) { perror("Error Listening to Socket"); exit(1); } printf(" Waiting for client on port 7070"); fflush(stdout); while(1) { sin_size = sizeof(struct sockaddr_in); client_id = accept(client_socket_id, (struct sockaddr *)&client_addr,&sin_size); printf(" I got a connection from (%s , %d)", inet_ntoa(client_addr.sin_addr),ntohs(client_addr.sin_port)); //connect to remote server if (connect(server_socket_id, (struct sockaddr *)&server_addr,sizeof(struct sockaddr)) == -1) { perror("Error Connecting to Web Server"); exit(1); } while(1){ //send some data to client send(client_id,"Hello, World!",13, 0); //receive some data from client client_bytes_received=recv(client_id,recv_data,1024,0); recv_data[client_bytes_received] = ''; //print received_data int c_length=strlen(recv_data)+11; printf(" Recieved data (%d bytes %d words)= %s " , client_bytes_received,c_length,recv_data); //post dta to webserver fflush(stdout); bzero(&post_data,1024); sprintf(post_data,"POST /environment.php HTTP/1.1 " "Host: 172.16.100.2 " "User-Agent: C Example Client " "Content-Type: application/x-www-form-urlencoded " "Content-Length: %d " "track_data=%s",c_length,recv_data); write(server_socket_id,post_data,strlen(post_data)+1); bzero(&recv_data,1024); while((client_bytes_received=read(server_socket_id,recv_data,1024))>0){ recv_data[client_bytes_received] = ''; if (fputs(recv_data,stdout)==EOF) perror("web server read_error"); } //print received_data printf(" Recieved data from webserver (%d)= %s " , client_bytes_received,recv_data); // bzero(&recv_data,1024); fflush(stdout); } } close(client_id); close(client_socket_id); return 0; }
Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Chat Now And Get Quote