IP Library Granted Patent US 12,120,138
Granted Patent B1
US 12,120,138 · App. 17/682,262 · Granted Oct 15, 2024

Using a remote procedure call (RPC) service to provide data on neighboring devices

Inventors: Emmett Kelly (Belfast, GB); Ross Kirk (Belfast, GB)
Assignee: Rapid7, Inc.
H04L63/1425G06F9/547H04L63/02H04W64/00
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,120,138
App. No.
17/682,262
Granted
Oct 15, 2024
Kind
B1
Abstract

A software agent executing on a computing device receives a request from a client to provide data associated with neighboring devices to the computing device. The client includes a scan engine to perform a network scan of a network that includes the computing device. The software agent accesses device data in a cache of an operating system command, determines, based on the device data, an identifier associated with each device that is neighboring the computing device, converts the device data into a standardized format to create neighboring device data, and sends the neighboring device data to the client.

Claims (60)

1. A method comprising:

receiving, by a software agent executing on a computing device, a request from a client to provide data associated with neighboring devices, the client including a scan engine to perform a network scan of a network that includes the computing device;

accessing, by the software agent, device data in a cache of an operating system command, wherein the operating system command is specific to an operating system of the computing device;

determining, by the software agent and based on the device data, at least one identifier associated with each device that is neighboring the computing device;

converting, by the software agent, the device data into a standardized format to create neighboring device data, wherein the standardized format is a same format for a plurality of different operating systems; and

sending, by the software agent, the neighboring device data to the client.

2. The method of claim 1 , wherein the operating system command comprises:

a Neighbor Discovery Protocol (NDP) command.

3. The method of claim 1 , wherein the operating system command comprises:

an Address Resolution Protocol (ARP) command.

4. The method of claim 1 , wherein the at least one identifier comprises:

a media access control (MAC) address.

5. The method of claim 1 , wherein the at least one identifier comprises:

an internet protocol (IP) address.

6. The method of claim 1 , wherein the request from the client to provide the data associated with the neighboring devices is received at an application programming interface (API) endpoint.

7. The method of claim 1 , wherein:

at least one device that is neighboring the computing device includes a device firewall that is configured to not respond to the network scan;

an intermediary firewall prevents the network scan from reaching the at least one device that is neighboring the computing device;

the network scan is not configured to scan an address associated with the at least one device that is neighboring the computing device; or

any combination thereof.

8. A computing device comprising:

one or more processors; and

one or more non-transitory computer readable media storing instructions executable by the one or more processors to perform operations comprising:

receiving a request from a client to provide data associated with neighboring devices, the client including a scan engine to perform a network scan of a network that includes the computing device;

accessing device data in a cache of an operating system command, wherein the operating system command is specific to an operating system of the computing device;

determining, based on the device data, at least one identifier associated with each device that is neighboring the computing device;

converting the device data into a standardized format to create neighboring device data, wherein the standardized format is a same format for a plurality of different operating systems; and

sending the neighboring device data to the client.

9. The computing device of claim 8 , wherein the operating system command comprises:

a Neighbor Discovery Protocol (NDP) command.

10. The computing device of claim 8 , wherein the operating system command comprises:

an Address Resolution Protocol (ARP) command.

11. The computing device of claim 8 , wherein the at least one identifier comprises:

a media access control (MAC) address.

12. The computing device of claim 8 , wherein the at least one identifier comprises: an internet protocol (IP) address.

13. The computing device of claim 8 , wherein:

at least one device that is neighboring the computing device includes a device firewall that is configured to not respond to the network scan;

an intermediary firewall prevents the network scan from reaching the at least one device that is neighboring the computing device;

the network scan is not configured to scan an address associated with the at least one device that is neighboring the computing device; or

any combination thereof.

14. One or more non-transitory computer readable media storing instructions executable by one or more processors of a computing device to perform operations comprising:

receiving a request from a client to provide data associated with neighboring devices, the client including a scan engine to perform a network scan of a network that includes the computing device;

accessing device data in a cache of an operating system command, wherein the operating system command is specific to an operating system of the computing device;

determining, based on the device data, at least one identifier associated with each device that is neighboring the computing device;

converting the device data into a standardized format to create neighboring device data, wherein the standardized format is a same format for a plurality of different operating systems; and

sending the neighboring device data to the client.

15. The one or more non-transitory computer readable media of claim 14 , wherein the operating system command comprises:

a Neighbor Discovery Protocol (NDP) command.

16. The one or more non-transitory computer readable media of claim 14 , wherein the operating system command comprises:

an Address Resolution Protocol (ARP) command.

17. The one or more non-transitory computer readable media of claim 14 , wherein the at least one identifier comprises:

a media access control (MAC) address.

18. The one or more non-transitory computer readable media of claim 14 , wherein the at least one identifier comprises:

an internet protocol (IP) address.

19. The one or more non-transitory computer readable media of claim 14 , wherein the request from the client to provide the data associated with the neighboring devices is received at an application programming interface (API) endpoint.

20. The one or more non-transitory computer readable media of claim 14 , wherein:

at least one device that is neighboring the computing device includes a device firewall that is configured to not respond to the network scan;

an intermediary firewall prevents the network scan from reaching the at least one device that is neighboring the computing device;

the network scan is not configured to scan an address associated with the at least one device that is neighboring the computing device; or

any combination thereof.

Assignments (2)
SECURITY INTEREST Recorded Jun 26, 2025
From: RAPID7, INC.; RAPID7 LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 071743/0537 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 28, 2022
From: KIRK, ROSS; KELLY, EMMETT
To: RAPID7, INC.
Reel/Frame 059117/0622 →