Script vtam-enum

Script types: portrule
Categories: intrusive, brute
Download: https://svn.nmap.org/nmap/scripts/vtam-enum.nse

Script Summary

Many mainframes use VTAM screens to connect to various applications (CICS, IMS, TSO, and many more).

This script attempts to brute force those VTAM application IDs.

This script is based on mainframe_brute by Dominic White (https://github.com/sensepost/mainframe_brute). However, this script doesn't rely on any third party libraries or tools and instead uses the NSE TN3270 library which emulates a TN3270 screen in lua.

Application IDs only allows for 8 byte IDs, that is the only specific rule found for application IDs.

Script Arguments

vtam-enum.path

Folder used to store valid transaction id 'screenshots' Defaults to None and doesn't store anything.

idlist

Path to list of application IDs to test. Defaults to nselib/data/vhosts-default.lst.

vtam-enum.macros

When set to true does not prepend the application ID with 'logon applid()'. Default is false.

vtam-enum.commands

Commands in a semi-colon separated list needed to access VTAM. Defaults to nothing.

brute.credfile, brute.delay, brute.emptypass, brute.firstonly, brute.guesses, brute.mode, brute.passonly, brute.retries, brute.start, brute.threads, brute.unique, brute.useraspass

See the documentation for the brute library.

creds.[service], creds.global

See the documentation for the creds library.

passdb, unpwdb.passlimit, unpwdb.timelimit, unpwdb.userlimit, userdb

See the documentation for the unpwdb library.

Example Usage

nmap --script vtam-enum -p 23 <targets>

nmap --script vtam-enum --script-args idlist=defaults.txt,
vtam-enum.command="exit;logon applid(logos)",vtam-enum.macros=true
vtam-enum.path="/home/dade/screenshots/" -p 23 -sV <targets>

Script Output

PORT   STATE SERVICE VERSION
23/tcp open  tn3270  IBM Telnet TN3270
| vtam-enum:
|   VTAM Application ID:
|     applid:TSO - Valid credentials
|     applid:CICSTS51 - Valid credentials
|_  Statistics: Performed 14 guesses in 5 seconds, average tps: 2

Requires


Author:

  • Philip Young aka Soldier of Fortran

License: Same as Nmap--See https://nmap.org/book/man-legal.html