From 0d47952611198ef6b1163f366dc03922d20b1475 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Wed, 17 Apr 2024 09:42:04 +0200 Subject: Adding upstream version 7.94+git20230807.3be01efb1+dfsg. Signed-off-by: Daniel Baumann --- scripts/bjnp-discover.nse | 50 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 scripts/bjnp-discover.nse (limited to 'scripts/bjnp-discover.nse') diff --git a/scripts/bjnp-discover.nse b/scripts/bjnp-discover.nse new file mode 100644 index 0000000..2547fa0 --- /dev/null +++ b/scripts/bjnp-discover.nse @@ -0,0 +1,50 @@ +description = [[ +Retrieves printer or scanner information from a remote device supporting the +BJNP protocol. The protocol is known to be supported by network based Canon +devices. +]] + +--- +-- @usage +-- sudo nmap -sU -p 8611,8612 --script bjnp-discover +-- +-- @output +-- PORT STATE SERVICE +-- 8611/udp open canon-bjnp1 +-- | bjnp-discover: +-- | Manufacturer: Canon +-- | Model: MG5200 series +-- | Description: Canon MG5200 series +-- | Firmware version: 1.050 +-- |_ Command: BJL,BJRaster3,BSCCe,NCCe,IVEC,IVECPLI +-- 8612/udp open canon-bjnp2 +-- | bjnp-discover: +-- | Manufacturer: Canon +-- | Model: MG5200 series +-- | Description: Canon MG5200 series +-- |_ Command: MultiPass 2.1,IVEC +-- + +categories = {"safe", "discovery"} +author = "Patrik Karlsson" + +local bjnp = require("bjnp") +local shortport = require("shortport") +local stdnse = require("stdnse") + +portrule = shortport.portnumber({8611, 8612}, "udp") + +action = function(host, port) + local helper = bjnp.Helper:new(host, port) + if ( not(helper:connect()) ) then + return stdnse.format_output(false, "Failed to connect to server") + end + local status, attrs + if ( port.number == 8611 ) then + status, attrs = helper:getPrinterIdentity() + else + status, attrs = helper:getScannerIdentity() + end + helper:close() + return stdnse.format_output(true, attrs) +end -- cgit v1.2.3