标签: audit

以前的 IT 工作者可能留下了一些后门。我怎样才能消除它们?

我开始为一家公司工作,该公司解雇了一名前 IT 员工,原因是泄露数据。

我只能说以下几点:

我们使用 Firebird DB 和由另一家公司 Proxmox 编写的应用程序,用于 Windows Server 2008 R2、SQL Server、云核心 Mikrotik 路由器和其他一些 Mikrotik 设备的虚拟化。

我不是 100% 确定,但是有没有一些快速的方法来检查是否还有一些后门,而不会中断内部流程并重新格式化所有内容?

以前的这个人真的很好,用 C++ 和 C# 编写了软件。我也知道他在 ollydbg 中做了一些汇编程序并破解了一些程序。

networking security audit malware exploit

68
推荐指数
6
解决办法
1万
查看次数

Linux:为远程系统管理员设置

我不时收到奇怪的请求,要求在 Linux 系统上提供远程支持、故障排除和/或性能调整。

较大的公司通常已经制定了完善的程序来提供对供应商/供应商的远程访问,我只需要遵守这些程序。(不论结果好坏。)

另一方面,小公司和个人总是求助于我,让他们知道他们需要做什么来建立我。通常,他们的服务器直接连接到互联网,现有的安全措施包括其 Linux 发行版的默认设置。

我几乎总是需要 root 级别的访问权限,而为我设置访问权限的人不是专家系统管理员。我不想要他们的 root 密码,而且我也很确定我的行为不会是恶意的,但是我应该给出什么相当简单的说明:

  • 设置帐户并安全地交换凭据
  • 设置 root (sudo) 访问权限
  • 限制对我帐户的访问
  • 提供审计追踪

(是的,我知道并总是警告那些客户,一旦我拥有管理员访问权限,隐藏任何恶意操作都是微不足道的,但让我们假设我没有什么可隐藏的,并积极参与创建审计跟踪。)

以下步骤可以改进什么?


我目前的指令集:

设置帐户并安全地交换凭据

我提供了一个密码哈希,并要求我的帐户设置了该加密密码,因此我们不需要传输明文密码,我将是唯一知道密码的人,我们不会从可预测的弱密码。

sudo useradd -p '$1$********' hbruijn
Run Code Online (Sandbox Code Playgroud)

我提供了一个公钥 SSH(每个客户端的特定密钥对)并要求他们使用该密钥设置我的帐户:

sudo su - hbruijn
mkdir -p ~/.ssh
chmod 0700 ~/.ssh
echo 'from="10.80.0.0/14,192.168.1.2" ssh-rsa AAAAB3NzaC1y***...***== hbruijn@serverfault' >> ~/.ssh/authorized_keys
chmod 0600 ~/.ssh/authorized_keys 
Run Code Online (Sandbox Code Playgroud)

设置 root (sudo) 访问权限

我要求客户使用sudo sudoedit或使用他们最喜欢的编辑器为我设置 sudo 并附加到/etc/sudoers

hbruijn ALL=(ALL) ALL
Run Code Online (Sandbox Code Playgroud)

限制对我帐户的访问

通常,客户端仍然允许基于密码的登录,我要求他们添加以下两行以/etc/ssh/sshd_config至少将我的帐户限制为仅使用 SSH 密钥:

Match user hbruijn
PasswordAuthentication no
Run Code Online (Sandbox Code Playgroud)

根据客户端的不同,我将通过单个堡垒主机路由我的所有 …

security linux audit root sudo

51
推荐指数
3
解决办法
2580
查看次数

我如何知道我的 Linux 服务器是否被黑客入侵?

Linux 服务器被黑客入侵的迹象有哪些?是否有任何工具可以按计划生成审计报告并通过电子邮件发送?

security linux hacking audit

38
推荐指数
7
解决办法
5万
查看次数

如何列出我的 ssh 服务器支持的 MAC、密码和 KexAlogrithms?

如何确定我的 ssh 服务器支持的 MAC、密码、密钥长度和 KexAlogrithms?

我需要为外部安全审计创建一个列表。我正在寻找类似于openssl s_client -connect example.com:443 -showcerts. 根据我的研究,ssh它使用 中列出的默认密码man sshd_config。但是,我需要一个可以在脚本中使用的解决方案man sshd_config并且没有列出有关密钥长度的信息。我需要在这里更正自己:您可以ServerKeyBitssshd_config.

我想这会ssh -vv localhost &> ssh_connection_specs.out返回我需要的信息,但我不确定列出的密码是客户端还是服务器支持的密码。另外我不确定如何在脚本中运行这个非交互式。

有没有方便的方法来获取SSH连接信息?

linux ssh audit

25
推荐指数
2
解决办法
7万
查看次数

如何跟踪超级用户活动

我想知道在 Linux 环境中跟踪超级用户活动的最佳方法是什么。

具体来说,我正在寻找这些功能:

  • A) 将击键记录到安全的系统日志服务器
  • B) 能够重放 shell 会话(类似于 scriptreplay)
  • C)理想情况下,如果没有对服务器的物理访问,这应该是不可能(或非常困难)规避的。

在需要允许不同系统管理员(甚至第三方)在服务器上执行特权操作的环境中,从安全/审计的角度考虑这一点。

每个管理员都有自己的名义帐户,并且每个交互会话都应该被完整记录,并在必要时可以重播(例如,如果有人使用 mc 删除或更改关键文件,这还不够知道那个人发出了 mc 命令;必须有一种方法可以确切地看到启动 mc 后做了什么)。

附加说明

  1. 正如 womble 所指出的那样,最好的选择可能不是让人们以 root 权限登录以在服务器上执行更改,而是通过配置管理系统来执行此操作。所以让我们假设一种情况,我们没有这样的系统,我们需要通过同一服务器向不同的人授予 root 级别访问权限
  2. 我对偷偷地做这件事一点兴趣都没有:每个以 root 权限登录到服务器的人都会完全知道会话将被记录(例如,呼叫中心操作员知道他们的对话是正在录音)
  3. 没有人会使用通用超级用户帐户(“root”)
  4. 我知道ttyrpld并且它似乎在做我正在寻找的东西。但在这样做之前,我想知道是否可以通过使用未修改的内核来解决这个问题。我想知道是否有任何特别适用于 Debian(或一般的 Linux)的工具可以在不修补 shell 或内核的情况下对超级用户帐户进行全面审计。

security linux audit

21
推荐指数
2
解决办法
6882
查看次数

Cygwin SSHd 自动阻止登录失败

我在 Windows Server 2008 机器上运行带有 SSH 守护进程的 Cygwin。我在查看事件查看器时注意到,在过去一周左右的时间里,来自不同 IP 的每秒多达 5 到 6 次失败的登录尝试(蛮力)。

如何自动阻止这些 IP,而不是手动一个一个地阻止它们?

谢谢,艾哈迈德

automation security windows-server-2008 ssh audit

20
推荐指数
1
解决办法
4万
查看次数

Git提交审计

我有一个通过 ssh 运行的 git 服务器,每个用户在系统上都有一个 unix 帐户。

鉴于两个用户有权访问一个 repo,我如何确定哪个用户执行了哪个提交,因为提交用户名和电子邮件是由 git 客户端提交和控制的。

我担心用户可能会尝试冒充另一个用户,即使他们拥有相同的授权权限。

security audit git

16
推荐指数
3
解决办法
3122
查看次数

将审计日志发送到 SYSLOG 服务器

我正在运行几个基于 RHEL 的系统,它们利用 2.6 内核中的审计功能来跟踪用户活动,我需要将这些日志发送到集中式 SYSLOG 服务器以进行监控和事件关联。有谁知道如何实现这一目标?

linux redhat audit syslog

14
推荐指数
2
解决办法
8万
查看次数

事件 4625 审核失败 NULL SID 网络登录失败

在 3 个独立的系统中,域控制器服务器上多次记录以下事件(每天 30 到 4,000 次,具体取决于系统):

An account failed to log on.

Subject:
    Security ID:        SYSTEM
    Account Name:       %domainControllerHostname%$
    Account Domain:     %NetBIOSDomainName%
    Logon ID:       0x3E7

Logon Type:         3

Account For Which Logon Failed:
    Security ID:        NULL SID
    Account Name:       
    Account Domain:     

Failure Information:
    Failure Reason:     Unknown user name or bad password.
    Status:         0xc000006d
    Sub Status:     0xc0000064

Process Information:
    Caller Process ID:  0x1ec
    Caller Process Name:    C:\Windows\System32\lsass.exe

Network Information:
    Workstation Name:   %domainControllerHostname%
    Source Network Address: -
    Source Port:        -

Detailed …
Run Code Online (Sandbox Code Playgroud)

security audit windows-event-log windows-sbs-2011 windows-server-2012-r2

13
推荐指数
2
解决办法
13万
查看次数

您如何记录/跟踪您的权限

我是一名 Windows 管理员,所以那些与 Windows 集成的人可能会最有帮助。在这一点上,我的主要挑战只是文件共享,但随着 SharePoint 使用的增加,它只会使这变得更加困难。

我已经设置了所有目录,并且允许使用所需的最少访问策略设置许多安全组。我的问题是出于人力资源和合规性原因跟踪这一切。

用户 A 需要对资源 1 的权限。他需要获得资源 1 的经理的批准,然后经理的经理也需要批准此访问权限。一旦所有这些都完成了,我就可以做出改变了。在这一点上,我们只是在纸​​上跟踪它,但它是如此的负担,并且当用户 A 被重新分配并且在其他情况下不再应该有权访问资源 1 时,它很可能不合规。

我知道我要找的东西应该已经存在,但我不知道去哪里找,我正在与社区联系。

编辑:

感谢您的回复。我认为他们涉及技术方面,希望我的问题不是题外话。我应该让自己更清楚自己的目标。您使用什么系统向审计员展示在 X 天用户 A 已添加/删除权限并且它已被经理 Y 批准?我目前有一个基本的票务系统,但我没有看到它以易于理解的格式提供我需要的东西。
在我的脑海中,我正在想象一些关于用户 A 的报告,该报告将显示对其权限所做的所有更改。理想情况下,链接到 Active Directory 的内容是理想的,但此时我希望找到更基本的内容。我希望有一个专门用于此的应用程序。

谢谢!

windows active-directory audit

12
推荐指数
1
解决办法
6477
查看次数