HP-UX Host Intrusion Detection System Version 4.3 administrator guide
Table Of Contents
- HP-UX Host Intrusion Detection System Version 4.3 administrator guide
- Table of Contents
- About This Document
- 1 Introduction
- 2 Configuring HP-UX HIDS
- 3 Getting Started with HP-UX HIDS
- 4 Using the System Manager Screen
- Starting the HP-UX HIDS System Manager
- Stopping the HP-UX HIDS System Manager
- System Manager Components
- Starting HP-UX HIDS Agents
- Getting the Status of Agent Hosts
- Resynchronizing Agent Hosts
- Activating Schedules on Agent Hosts
- Stopping Schedules on Agent Hosts
- Halting HP-UX HIDS Agents
- Accessing Other Screens
- 5 Using the Schedule Manager Screen
- The Schedule Manager
- Configuring Surveillance Schedules
- Configuring Surveillance Groups
- Configuring Detection Templates
- Setting Surveillance Schedule Timetables
- Configuring Alert Aggregation
- Configuring Monitor Failed Attempts
- Configuring Duplicate Alert Suppression
- Viewing Surveillance Schedule Details
- Predefined Surveillance Schedules and Groups
- 6 Using the Host Manager Screen
- 7 Using the Network Node Screen
- 8 Using the Preferences Screen
- A Templates and Alerts
- Alert Summary
- UNIX Regular Expressions
- Limitations
- Template Property Types
- Buffer Overflow Template
- Race Condition Template
- Modification of files/directories Template
- Changes to Log File Template
- Creation and Modification of setuid/setgid File Template
- Creation of World-Writable File Template
- Modification of Another User’s File Template
- Login/Logout Template
- Repeated Failed Logins Template
- Repeated Failed su Commands Template
- Log File Monitoring Template
- B Automated Response for Alerts
- C Tuning Schedules and Generating Alert Reports
- D The Agent Configuration File
- E The Surveillance Schedule Text File
- F Error Messages
- G Troubleshooting
- Troubleshooting
- Agent and System Manager cannot communicate with each other
- Agent complains that idds has not been enabled, yet lsdev shows /dev/idds is present
- Agent does not start on system boot
- Agent halts abnormally, leaving ids_* files and message queues
- Agent host appears to hang and/or you see message disk full
- Agent needs further troubleshooting
- Agent does not start after installation
- Agents appear to be stuck in polling status
- Agent displays error if hostname to IP mapping is not registered in name service
- Aggregated alerts targets or details field are truncated and the same aggregated alert has several entries logged in the IDS_ALERTFILE
- Alert date/time sort seems inconsistent
- Alerts are not being displayed in the alert browser
- Buffer overflow triggers false positives
- Duplicate alerts appear in System Manager
- Getting several aggregated alerts for the same process
- GUI runs out of memory after receiving around 19,000 alerts
- The idsadmin Command needs installed agent certificates
- The idsadmin Command notifies of bad certificate when pinging a remote agent
- IDS_checkInstall fails with a kmtune error
- IDS_genAdminKeys or IDS_genAgentCerts does not complete successfully
- IDS_genAdminKeys or idsgui quits early
- Large files in /var/opt/ids
- Log files are filling up
- No Agent Available
- Normal operation of an application generates heavy volume of alerts
- Reflection X rlogin produces multiple login and logout alerts
- Schedule Manager timetable screen appears to hang
- SSH does not perform a clean exit after idsagent is started
- System Manager appears to hang
- System Manager does not let you save files to specific directories
- System Manager does not start after idsgui is started
- System Manager starts with no borders or title bar in X client programs on Windows
- System Manager times out on agent functions such as Activate and Status Poll
- UNKNOWN program and arguments in certain alert messages
- Using HP-UX HIDS with IPFilter and SecureShell
- Unable to Generate Administrator Keys and Agent Certificates on PA–RISC 1.1 Systems
- Troubleshooting
- H HP Software License

Perl References
Use the following references to help write Perl scripts for HP-UX HIDS:
• perlsec( 1) in /opt/perl/man.
• http://www.perldoc.com/perl5.6/pod/perlsec.html the web version of the
manpage
• http://security-archive.merton.ox.ac.uk/bugtraq-200002/0114.html, an
email archive thread
Writing Privileged Response Programs
This section describes how to write privileged and unprivileged C response programs.
• Solution A
Write the response program as a single, unprivileged C executable program, or as a single,
unprivileged shell script that processes the alert string and invokes one or more privileged
setuid C executables to perform operations that require privileges. For more information,
see “Solution A” (page 168).
The unprivileged C executable program or shell script must sanitize and set up the
environment before invoking privileged programs. This ensures that no dangerous data is
being passed into the privileged programs that can adversely affect the behavior of the
privileged programs. This solution enforces a clear separation of privilege by processing
the text of the alert string with no privileges, and calling out to privileged programs to
perform privileged operations.
• Solution B
Write the entire response program as a single, privileged setuid C executable program
that both processes the alert string and performs privileged operations.
This program must run with only a privileged effective uid when performing an operation
that requires privileges, and must run with the nonprivileged ids uid as the effective uid
at all other times. This method is called privilege bracketing. For instructions on toggling
the effective uid, see setresuid(2).
• Solution C
Write a single, privileged setuid C executable program that forks and executes an
unprivileged shell script that both processes the alert string and performs privileged
operations. For more information, see “Solution C” (page 170).
The privileged C program must hard code the full pathname of the unprivileged script. It
must not execute the path name of a program specified through one of its program arguments,
as this enables the execution of an arbitrary program with privileges.
Solution A is the most secure solution because it implements clear separation of privileges.
Solution B is as secure as Solution A if the privilege bracketing is done correctly. Although not
as secure as Solutions A and B, Solution C is the easiest to implement and is not subject to the
vulnerability of privileged setuid shell scripts.
WARNING! The privileged setuid programs of all these solutions are vulnerable to attack if
the user ids account is enabled for login and the ids password is compromised. Either the user
ids account must not be enabled for login (the default when HIDS is installed) or a strong
password for user ids must be chosen and safeguarded.
Code Examples
The following code examples for solutions A, B, and C demonstrate how to terminate a process
that you do not own.
Programming Guidelines 167