From 76c722066353e875eca932243f44316197aab1e1 Mon Sep 17 00:00:00 2001 From: rupa-rd Date: Mon, 3 Feb 2025 21:19:33 +0530 Subject: [PATCH 1/3] Configuration file is added --- submissions/Rupa-Rd/pmp_configuration.txt | 128 ++++++++++++++++++++++ 1 file changed, 128 insertions(+) create mode 100644 submissions/Rupa-Rd/pmp_configuration.txt diff --git a/submissions/Rupa-Rd/pmp_configuration.txt b/submissions/Rupa-Rd/pmp_configuration.txt new file mode 100644 index 0000000..57affba --- /dev/null +++ b/submissions/Rupa-Rd/pmp_configuration.txt @@ -0,0 +1,128 @@ +0x07 +0x01 +0x03 +0x00 +0x07 +0x01 +0x03 +0x00 +0x07 +0x01 +0x03 +0x00 +0x07 +0x01 +0x03 +0x00 +0x07 +0x01 +0x03 +0x00 +0x07 +0x01 +0x03 +0x00 +0x07 +0x01 +0x03 +0x00 +0x07 +0x01 +0x03 +0x00 +0x07 +0x01 +0x03 +0x00 +0x07 +0x01 +0x03 +0x00 +0x07 +0x01 +0x03 +0x00 +0x07 +0x01 +0x03 +0x00 +0x07 +0x01 +0x03 +0x00 +0x07 +0x01 +0x03 +0x00 +0x07 +0x01 +0x03 +0x00 +0x07 +0x01 +0x03 +0x00 +0x1000 +0x2000 +0x3000 +0x4000 +0x5000 +0x6000 +0x7000 +0x8000 +0x9000 +0x10000 +0x11000 +0x12000 +0x13000 +0x14000 +0x15000 +0x16000 +0x17000 +0x18000 +0x19000 +0x20000 +0x21000 +0x22000 +0x23000 +0x24000 +0x25000 +0x26000 +0x27000 +0x28000 +0x29000 +0x30000 +0x31000 +0x32000 +0x33000 +0x34000 +0x35000 +0x36000 +0x37000 +0x38000 +0x39000 +0x40000 +0x41000 +0x42000 +0x43000 +0x44000 +0x45000 +0x46000 +0x47000 +0x48000 +0x49000 +0x50000 +0x51000 +0x52000 +0x53000 +0x54000 +0x55000 +0x56000 +0x57000 +0x58000 +0x59000 +0x60000 +0x61000 +0x62000 +0x63000 +0x64000 \ No newline at end of file From 3448b6e475ee6ecbfb16b4a41ac4657a75ea9b1f Mon Sep 17 00:00:00 2001 From: rupa-rd Date: Mon, 3 Feb 2025 21:20:43 +0530 Subject: [PATCH 2/3] C++ file is added to check the priviledges --- submissions/Rupa-Rd/pmp_check.cpp | 139 ++++++++++++++++++++++++++++++ 1 file changed, 139 insertions(+) create mode 100644 submissions/Rupa-Rd/pmp_check.cpp diff --git a/submissions/Rupa-Rd/pmp_check.cpp b/submissions/Rupa-Rd/pmp_check.cpp new file mode 100644 index 0000000..4b05316 --- /dev/null +++ b/submissions/Rupa-Rd/pmp_check.cpp @@ -0,0 +1,139 @@ +#include +#include +#include +#include +#include +#include +#include + +const int PMP_ENTRIES = 64; + +struct PMPConfig { + uint8_t R : 1; + uint8_t W : 1; + uint8_t X : 1; + uint8_t A : 2; + uint8_t reserved : 2; + uint8_t L : 1; +}; + +struct PMPEntry { + PMPConfig config; + uint64_t address; +}; + +void parseArguments(int argc, char* argv[], std::string& configFile, uint64_t& address, char& mode, char& operation) { + if (argc != 5) { + throw std::invalid_argument("Usage: program
"); + } + + configFile = argv[1]; + + // Check if address starts with "0x" + std::string addrStr = argv[2]; + if (addrStr.size() < 2 || addrStr.substr(0, 2) != "0x") { + throw std::invalid_argument("Physical address must start with '0x'."); + } + address = std::stoull(addrStr, nullptr, 16); + + mode = argv[3][0]; + operation = argv[4][0]; + + if (mode != 'M' && mode != 'S' && mode != 'U') { + throw std::invalid_argument("Invalid privilege mode. Must be 'M', 'S', or 'U'."); + } + + if (operation != 'R' && operation != 'W' && operation != 'X') { + throw std::invalid_argument("Invalid operation. Must be 'R', 'W', or 'X'."); + } +} + +void readPMPConfig(const std::string& configFile, std::vector& pmpEntries) { + std::ifstream file(configFile); + if (!file.is_open()) { + throw std::runtime_error("Could not open PMP configuration file."); + } + + for (int i = 0; i < PMP_ENTRIES; ++i) { + std::string line; + if (!std::getline(file, line)) { + throw std::runtime_error("Invalid PMP configuration file format."); + } + + uint8_t configValue = std::stoul(line, nullptr, 16); + pmpEntries[i].config = *reinterpret_cast(&configValue); + } + + for (int i = 0; i < PMP_ENTRIES; ++i) { + std::string line; + if (!std::getline(file, line)) { + throw std::runtime_error("Invalid PMP configuration file format."); + } + + pmpEntries[i].address = std::stoull(line, nullptr, 16); + } +} + +bool checkPMPAccess(const std::vector& pmpEntries, uint64_t address, char mode, char operation) { + for (int i = 0; i < PMP_ENTRIES; ++i) { + const PMPEntry& entry = pmpEntries[i]; + + if (entry.config.A == 0) continue; // Skip disabled entries + + uint64_t lowerBound = 0; + uint64_t upperBound = 0; + + if (entry.config.A == 1) { // TOR mode + if (i == 0) { + lowerBound = 0; + } else { + lowerBound = pmpEntries[i - 1].address; + } + upperBound = entry.address; + } else if (entry.config.A == 2) { // NA4 mode + lowerBound = entry.address & ~0x3ULL; + upperBound = lowerBound + 4; + } else if (entry.config.A == 3) { // NAPOT mode + uint64_t mask = ~(entry.address | (entry.address - 1)); + lowerBound = entry.address & mask; + upperBound = lowerBound + (mask + 1); + } + + if (address >= lowerBound && address < upperBound) { + if (mode == 'M' && !entry.config.L) { + return true; // M-mode access succeeds if L bit is clear + } + + if (operation == 'R' && !entry.config.R) return false; + if (operation == 'W' && !entry.config.W) return false; + if (operation == 'X' && !entry.config.X) return false; + + return true; + } + } + + // If no PMP entry matches, M-mode access succeeds, S/U-mode access fails + return mode == 'M'; +} + +int main(int argc, char* argv[]) { + try { + std::string configFile; + uint64_t address; + char mode, operation; + + parseArguments(argc, argv, configFile, address, mode, operation); + + std::vector pmpEntries(PMP_ENTRIES); + readPMPConfig(configFile, pmpEntries); + + bool accessAllowed = checkPMPAccess(pmpEntries, address, mode, operation); + + std::cout << "Access " << (accessAllowed ? "allowed" : "denied") << std::endl; + } catch (const std::exception& e) { + std::cerr << "Error: " << e.what() << std::endl; + return 1; + } + + return 0; +} \ No newline at end of file From 1a6bae9efc5eb06f9942f73aee91c42308be8769 Mon Sep 17 00:00:00 2001 From: rupa-rd Date: Mon, 3 Feb 2025 21:23:28 +0530 Subject: [PATCH 3/3] Compiled file --- submissions/Rupa-Rd/pmp_check.exe | Bin 0 -> 178223 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 submissions/Rupa-Rd/pmp_check.exe diff --git a/submissions/Rupa-Rd/pmp_check.exe b/submissions/Rupa-Rd/pmp_check.exe new file mode 100644 index 0000000000000000000000000000000000000000..4b453f2fd3e416446db57e06f9eee8c124098faa GIT binary patch literal 178223 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 literal 0 HcmV?d00001