Patents Assigned to RAM Laboratories, Inc.
-
Patent number: 11775414Abstract: A device includes one or more processors configured to: receive source code including a section of source code associated with at least one bug or vulnerability; generate a formatted code section based at least partly on the section of source code associated with at least one bug or vulnerability; identify a matching patch model based on the formatted code section; provide the formatted code section to the matching patch model; receive a remedied code section from the matching patch model; and apply the remedied code section to the section of source code associated with at least one bug or vulnerability. Generating the formatted code section based at least partly on the section of source code associated with at least one bug or vulnerability includes: dividing the section of source code into sub-elements; associating type information to the sub-elements to generate tokens; and mapping each token to a unique identifier.Type: GrantFiled: September 15, 2021Date of Patent: October 3, 2023Assignee: RAM Laboratories, Inc.Inventors: John Darragh Geddes, Robert Michael McGraw
-
Publication number: 20220335135Abstract: An embedded software analyzer (ESA) detects vulnerabilities in software, such as embedded software items (e.g., software that is pre-loaded onto a device or component). Vulnerabilities may include flaws, glitches, weaknesses, and/or other elements that may prevent correct operation or allow an attacker to access or exploit the software (and/or associated devices, components, systems, etc.) The ESA may utilize techniques such as fuzzing and symbolic execution to identify vulnerabilities. The ESA may predict vulnerabilities and prioritize analysis based on the prediction. The ESA may use smart seeding to optimize fuzzing or other analysis. Such smart seeding may include generating optimized inputs for a particular software item. The ESA may apply machine learning to perform, optimize, and/or otherwise implement such analysis techniques.Type: ApplicationFiled: November 30, 2021Publication date: October 20, 2022Applicant: RAM Laboratories, Inc.Inventors: Robert Michael McGraw, John Darragh Geddes
-
Publication number: 20220083450Abstract: A device includes one or more processors configured to: receive source code including a section of source code associated with at least one bug or vulnerability; generate a formatted code section based at least partly on the section of source code associated with at least one bug or vulnerability; identify a matching patch model based on the formatted code section; provide the formatted code section to the matching patch model; receive a remedied code section from the matching patch model; and apply the remedied code section to the section of source code associated with at least one bug or vulnerability. Generating the formatted code section based at least partly on the section of source code associated with at least one bug or vulnerability includes: dividing the section of source code into sub-elements; associating type information to the sub-elements to generate tokens; and mapping each token to a unique identifier.Type: ApplicationFiled: September 15, 2021Publication date: March 17, 2022Applicant: RAM Laboratories, Inc.Inventors: John Darragh Geddes, Robert Michael McGraw
-
Patent number: 11074339Abstract: A method of software article protection and transformation includes: retrieving a software article; identifying control flow addressing associated with the software article; removing at least a portion of the control flow addressing; and saving the at least a portion of the control flow addressing from the software article, wherein removing the at least a portion of the control flow addressing comprises replacing call and return functions with protected execution instructions, wherein the protected execution instructions replace call functions by: identifying, in a lookup table, an entry associated with a current instruction; and pushing a return address associated with the current instruction to a secure return stack; and wherein the protected execution instructions replace return functions by: popping the return address from the secure return stack; encrypting the at least a portion of the control flow addressing; and saving the at least a portion of the control flow addressing to a separate software articlType: GrantFiled: June 27, 2018Date of Patent: July 27, 2021Assignee: Ram Laboratories, Inc.Inventors: Brooke Wallace, Dean C. Mumme, Robert McGraw
-
Patent number: 10764077Abstract: An automated method that generates crowd-sourced event notifications includes: retrieving sensor data from mobile devices; detecting events based on the retrieved sensor data; and generating a set of summary nodes based on the events, where each summary node is associated with multiple events. A system that generates crowd-sourced event notifications includes: multiple mobile devices, each having at least one sensor, each mobile device identifies events using calculations based on sensor data and generates a notification for each identified event; and an analytics server that generates a set of summary nodes based on the identified events, each summary node associated with multiple events. An automated method that generates event notifications includes: retrieving sensor data; calculating a set of statistical values based on the sensor data; comparing the statistical values to at least one threshold; and generating an event notification when the threshold is exceeded by any of the statistical values.Type: GrantFiled: July 24, 2017Date of Patent: September 1, 2020Assignee: RAM Laboratories, Inc.Inventors: Dean C. Mumme, Robert M. McGraw, Richard A. MacDonald