dissect.target.plugins.os.unix.bsd.citrix._os

Module Contents

Classes

CitrixPlugin

Citrix Netscaler OS plugin.

Attributes

dissect.target.plugins.os.unix.bsd.citrix._os.HAS_EXECUTABLE = True
dissect.target.plugins.os.unix.bsd.citrix._os.RE_CONFIG_IP
dissect.target.plugins.os.unix.bsd.citrix._os.RE_CONFIG_HOSTNAME
dissect.target.plugins.os.unix.bsd.citrix._os.RE_CONFIG_USER
dissect.target.plugins.os.unix.bsd.citrix._os.RE_LOADER_CONFIG_KERNEL_VERSION
class dissect.target.plugins.os.unix.bsd.citrix._os.CitrixPlugin(target: dissect.target.target.Target)

Bases: dissect.target.plugins.os.unix.bsd._os.BsdPlugin

Citrix Netscaler OS plugin.

classmethod detect(target: dissect.target.target.Target) dissect.target.filesystem.Filesystem | None

Provide detection of this OSPlugin on a given filesystem.

Parameters:

fsFilesystem to detect the OS on.

Returns:

The root filesystem / sysvol when found.

classmethod create(target: dissect.target.target.Target, sysvol: dissect.target.filesystem.Filesystem) Self

Map filesystems as the Citrix Netscaler bootloader would.

An image of a Citrix Netscaler generally contains two partitions, that after boot are mounted to /var``and ``/flash. The rest of the filesystem is recreated at runtime into a ‘ramdisk’. This ramdisk is generally stored read-only in the kernel ELF binary located in /flash/ns-*.gz.

This implementation supports mapping a live ramdisk which is already mounted at / and also supports extracting the read-only kernel FFS filesystem from /flash/ns-*.gz and mounting at /.

hostname() str | None

Return the target’s hostname.

Returns:

The hostname as string.

version() str | None

Return the target’s OS version.

Returns:

The OS version as string.

ips() list[str]

Return the IP addresses configured in the target.

Returns:

The IPs as list.

users() collections.abc.Iterator[dissect.target.helpers.record.UnixUserRecord]

Yield unix user records from passwd files or syslog session logins.

References

os() str

Return a slug of the target’s OS name.

Returns:

A slug of the OS name, e.g. ‘windows’ or ‘linux’.