Pos Machine Security Testing
Pos Machine Security Testing
POS stands for Point of Sale. POS device process the transaction between customer and merchant
for any service or product purchase.
It is the combination of hardware and software where POS application is used to perform all the
transactions related operations by communicating backend server and management application is
used to manage or configure the POS device including its services.
Will cover the POS device security testing into the following phases.
POS device comes with the default configuration. It’s default configuration settings must be changed
before deploying into the production environment. A default configuration includes device access
management, encryption methods, FTP service configuration, etc.
Review all the default configuration settings and other parameters to make sure that it has been
configured properly while doing secure configuration review of the POS device.
Physical security:
Inspect the surrounding of POS device to make sure that there is no rogue camera and NFC
card reader is placed to capture the card details.
POS skimmer:
POS skimmer is placed over the card swipe mechanism to capture the customer card
details from the magnetic stripe. Check the card swipe mechanism of the POS device to
make sure that no skimmer has been placed.
Cleartext services:
Check for the cleartext services enabled on the device such as FTP service which is used to
download the device firmware from the server for the firmware upgrade. Cleartext services
should be disabled on the device.
Logs:
Check for the device logs.
Missing Patches:
The missing patches address vulnerabilities which may allow unauthenticated remote code
execution, privilege escalation, denial of service, and confidential information disclosure.
Check for the latest updates.
In this section, will cover various application level and logical vulnerabilities:
Cleartext traffic:
Connect your laptop to the POS network segment and ensure that the laptop IP address and
gateway address of the POS device must be the same. You can edit the POS gateway address
under the device settings menu and restart the POS device. Check the cleartext traffic by
initiating the request from the POS device and capture the traffic using Wireshark on the
laptop.
Refund of amount:
Try to refund the amount more than the purchase amount.
Privilege escalation:
Application has 3 different privilege levels like Clerk, Manager, and Superuser. Try to access
the manager functions/data using clerk account.
Data manipulation:
Try to manipulate the data by intercepting the traffic.
Try to perform the offline sale transaction without or wrong approver code.
3. Vulnerability assessment and penetration testing.
Vulnerability assessment and penetration testing is the important activity to identify the network
level vulnerabilities as POS device connects to the backend server in the segregated environment of
the bank for various transaction operations.
Connect your laptop to the POS network by obtaining IP details of the POS device under the device
settings menu and check the network connectivity with the POS device. Perform the full TCP and
UDP ports scan on the POS device using Nmap tool to identify the open ports and the Nessus
vulnerability scan on the POS device to identify the vulnerabilities on the POS device.
There are very limited and other services running on the POS device.
Operating system version: Try to enumerate OS version details and verify for any
vulnerabilities.
FTP service: This service is used to download the updates from the server and upload device
files. Check for the FTP vulnerabilities.
SNMP service: SNMP service is used to manage the POS device centrally. Check for the
SNMP vulnerabilities.
Management portal: Check for the access to the management portal.
POS application: Check for the application version vulnerability.