Bug 1005202

Summary: running "ausearch -m avc,user_avc -ts today" over ssh gets stuck
Product: Red Hat Enterprise Linux 6 Reporter: Martin Pavlik <mpavlik>
Component: auditAssignee: Steve Grubb <sgrubb>
Status: CLOSED NOTABUG QA Contact: BaseOS QE Security Team <qe-baseos-security>
Severity: high Docs Contact:
Priority: unspecified    
Version: 6.5CC: bmr, fweimer, sbonazzo
Target Milestone: rc   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-11-21 11:13:16 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1010472, 1032706    
Attachments:
Description Flags
strace
none
strace_ausearch none

Description Martin Pavlik 2013-09-06 12:38:36 UTC
Description of problem:

running on RHEL 6.4/6.5
ssh 10.34.63.19 ausearch -m avc,user_avc -ts today
gets stuck


while running the command on the node returns result immediately

ausearch -m avc,user_avc -ts today
<no matches>


Version-Release number of selected component (if applicable):
rpm -qa audit
audit-2.2-2.el6.x86_64


How reproducible:
100%

Steps to Reproduce:
1. run ssh $IP ausearch -m avc,user_avc -ts today

Actual results:
command gets stuck

Expected results:
command returns valid response

Additional info:

this BZ was raised based on bug 1005066 , there is some more information which might be useful

Comment 1 Steve Grubb 2013-09-06 17:26:01 UTC
I have no idea why it would get stuck. It uses printf to write out the findings. Maybe strace would help locate the problem?

Comment 2 Martin Pavlik 2013-09-09 07:12:06 UTC
Created attachment 795507 [details]
strace

Comment 3 Steve Grubb 2013-09-14 14:31:07 UTC
Thanks for the strace. It shows the client end waiting for something. What I am curious about is what ausearch is doing. If this is still reproducable, could you get an strace of ausearch? Thanks.

Comment 4 Martin Pavlik 2013-09-16 06:31:42 UTC
Created attachment 798111 [details]
strace_ausearch

Comment 5 Sandro Bonazzola 2013-09-23 06:23:50 UTC
If it may help, ssh -t seems to solve the issue.
In https://bugzilla.redhat.com/show_bug.cgi?id=1010472
Derrick Ornelas says:
The issue appears to be that the ausearch command requires a controlling TTY(pty), and hangs indefinitely without access to one.

Comment 6 RHEL Program Management 2013-10-13 23:11:57 UTC
This request was evaluated by Red Hat Product Management for
inclusion in the current release of Red Hat Enterprise Linux.
Because the affected component is not scheduled to be updated
in the current release, Red Hat is unable to address this
request at this time.

Red Hat invites you to ask your support representative to
propose this request, if appropriate, in the next release of
Red Hat Enterprise Linux.

Comment 7 Bryn M. Reeves 2013-11-21 11:13:16 UTC
Florian pointed out in bug 1032706 that this is actually expected behaviour when stdin is a pipe:

> ausearch doesn't need a TTY, it alters behavior if the input is a pipe.
> This is documented behavior, mentioned in the manpage:
>
>   --input-logs
>       Use  the log file location from auditd.conf as input for search‐
>       ing. This is needed if you are using ausearch from a cron job.

And reading the log from stdin is mentioned in the opening paragraph of the man pages for ausearch and aureport (which has the same logic):

    "The ausearch utility can also take input from stdin as long as the input
     is the raw log data."

Seems this is NOTABUG.