Articles of 审计

在linux中进行审计

我正在尝试在我的centos 6.x盒子上设置一个强大的审计机制。 我尝试和testing了各种审计工具 进程auditd 助手 psacct 但是没有一个能满足我的要求。 我的要求很简单,我知道一个审计系统不会全部服务,我可能必须一起使用不同的审计系统。 我要 监视用户运行的所有命令 psacct是完美的,但它只告诉用户运行的命令,而不是传递给命令的参数。 即如果用户运行vim /erc/passwd ,那么lastcomm <username>只会告诉vim命令已经运行,但是不会告诉哪个文件实际被编辑了。 并且auditd告诉例如vim命令已经运行,并且一个特定的文件被编辑了,但是不知道谁编辑了这个文件。 假设我以sudo用户的身份运行一个命令,那么如果有10个sudo用户作为gid和uid将是超级用户输出命令,那么它不会告诉我哪个用户编辑了特定的文件: time->Sat Jun 20 15:52:45 2015 type=PATH msg=audit(1434795765.057:54685): item=4 name="/etc/passwd" inode=152790 dev=fd:00 mode=0100644 ouid=0 ogid=0 rdev=00:00 nametype=CREATE type=PATH msg=audit(1434795765.057:54685): item=3 name="/etc/passwd" inode=152786 dev=fd:00 mode=0100644 ouid=0 ogid=0 rdev=00:00 nametype=DELETE type=PATH msg=audit(1434795765.057:54685): item=2 name="/etc/passwd+" inode=152790 dev=fd:00 mode=0100644 ouid=0 ogid=0 rdev=00:00 nametype=DELETE […]

如何logging在Linux上运行的所有命令,包括它们的参数(参数)?

我如何logging在Linux上执行的所有命令,包括它们的命令行参数(参数)? 所以,例如,如果有人跑: rm -rf /tmp/foo 我会看到类似这样的日志条目: 2016-01-01 18:00:00 user=bob command='rm -rf /tmp/foo' 而不只是这个: 2016-01-01 18:00:00 user=bob command='rm' 我只能find不logging命令行参数(参数)的auditd用法。 有没有办法正确configurationauditd来logging这个? 看起来FreeBSD有一种设置argv策略的方式 ,但是这似乎并不存在于Debian衍生产品中。

默认审计日志是什么(即没有定义规则的时候)

我在我的Debian Jessie机器上安装了auditd和audispd-plugins ,并没有触及任何configuration。 我看到事件正在写入/var/log/audit/audit.log ,例如: type=LOGIN msg=audit(1462384141.770:838): pid=3662 uid=0 old-auid=4294967295 auid=0 old-ses=4294967295 ses=21 res=1 type=USER_START msg=audit(1462384141.770:839): pid=3662 uid=0 auid=0 ses=21 msg='op=PAM:session_open acct="root" exe="/usr/sbin/cron" hostname=? addr=? terminal=cron res=success' type=CRED_DISP msg=audit(1462384141.778:840): pid=3662 uid=0 auid=0 ses=21 msg='op=PAM:setcred acct="root" exe="/usr/sbin/cron" hostname=? addr=? terminal=cron res=success' type=USER_END msg=audit(1462384141.778:841): pid=3662 uid=0 auid=0 ses=21 msg='op=PAM:session_close acct="root" exe="/usr/sbin/cron" hostname=? addr=? terminal=cron res=success' type=USER_ACCT msg=audit(1462384201.780:842): […]

你如何审计云服务器?

所以我们有一个适合Rackspace(众多)帐户的云服务器。 我正在寻找一个解决scheme – 这是什么服务器上? 那台服务器在哪里? 我如何到达那台服务器? 我知道我可以抽出一个很好的电子表格(IP地址,密码,正在运行的站点/应用程序,主机提供商,操作系统等),但是我想知道是否有SaaS或OSS工具可以插拔在我的用户凭据,并用它来审计/pipe理我的系统。 想想RightScale或者Zenoss吧。 我testing了Rightscale,不认为这是解决scheme。 不知道Zenoss。 你们如何pipe理和审计你的多个系统/账户/信息?

更改pam.d / system_auth?

我正在尝试更改pam.d / system_auth以帮助validation所需的密码复杂性。 我不熟悉PAM,但system_auth文件说 该文件是自动生成的用户更改将在下次运行authconfig时被销毁。 有没有适当的方法来编辑永久更改到system_auth,而不是简单的编辑,或者我误解了警告? 我需要做的只是添加一些简单的理货和小人,dcredit,ocredit等。

你如何检查服务器/个人电脑没有感染

简单的问题。 开发人员的电脑必须有自由访问networking,包括服务器等,并且必须有pipe理权限才能有效地执行工作。 不过开发者也使用了很多非微软的工具,这些工具有GPL,LGPL,MIT,free-for-all等等。 其中任何一个都可以包含有害的代码。 甚至有人可能用来parsingXML的LGPL库。 而且我们都知道,在UAC提示符点击“是”的那一刻,或者是“sudo”,PC /服务器可能会受到攻击。 受损的服务器可以做很多不好的事情,包括信息泄漏,数据丢失等等。 系统pipe理员如何对付这些问题? 你相信杀毒软件,其他工具?

如何检查pipe理员是否查看了安全审核日志?

一位同事和我一直在讨论Windows上的IS审计演示。 我们希望覆盖的一点是,pipe理/高权限用户应该在发生故障事件的X小时内查看安全日志。 如下所示 读取失败事件的ID 由受限于失败事件/安全事件日志ID的admin / privy用户对特权使用filter应用 基本上我想知道是否有可能validation安全日志上次查看的时间和人数。 可以这样做吗?

logging时限制超过

是否有一个日志文件logging在/etc/security/limits.conf中设置的值超过时的信息? 如果上述文件中的值太紧,则使用托pipe在服务器上的网站的客户端会看到错误,例如[FATAL] failed to allocate memory 。 但是我不会被吓倒。 那么是否有日志? 如果没有,是否有一种方法来logging超过值的日志?

如何找出从文件夹中读取哪些文件

我有一个非常大的Windows程序的安装,我想知道哪些文件实际上是在我安装程序的时候读取的。 有没有一种方法来监控这个并获得读取的文件列表? 我查看了Process Monitor ,并且可以在要监视的目录上放置一个filter,但是我没有find一个简单的方法来获取在该目录中打开的文件列表。

如何使用Powershell对TrustedInstaller拥有的文件设置审核控制?

我正在尝试使用以下Powershell脚本在位于\%Windows%\System32 (例如, aaclient.dll )中的许多文件(列在ACLsWin.txt )上设置审核控制: $FileList = Get-Content ".\ACLsWin.txt" $ACL = New-Object System.Security.AccessControl.FileSecurity $AccessRule = New-Object System.Security.AccessControl.FileSystemAuditRule("Everyone", "Delete", "Failure") $ACL.AddAuditRule($AccessRule) foreach($File in $FileList) { Write-Host "Changing audit on $File" $ACL | Set-Acl $File } 每当我运行脚本,我得到错误PermissionDenied [Set-Acl] UnauthorizedAccessException 。 这似乎来自于这些文件的所有者是TrustedInstaller 。 我以pipe理员身份运行这些脚本(即使我在内置的pipe理员帐户中),但仍然失败。 我可以使用“安全”选项卡手动设置这些审计控制,但至less有200个手动执行的文件可能会导致人为错误。 如何绕过TrustedInstaller并使用Powershell设置这些审核控件?