侵攻の理由を見つけるためには詳細な分析、
まず、隠されたアカウントや脆弱なパスワードを確認します
サーバ・システムとアプリケーションをチェック弱いパスワードの存在を考慮:
説明を確認します。管理者アカウントをチェックし、アカウントデータベース、MySQLアカウント、Tomcatのアカウント、ウェブサイト背景管理者アカウントのパスワードなどの設定が比較的簡単で、簡単なパスワードは簡単にハッカーによって割れています。
解決策:複雑なパスワードを変更し、管理者権限のシステムやアプリケーションの舞台裏でログオンします。
リスク:高。
疑わしいIPがマシンをログに記録があるかどうかを確認するために、最近のアカウントレコード・サーバ・ログを表示するために、最後のコマンドを使用します。
説明を確認してください:攻撃や悪意のあるソフトウェアは、多くの場合、実装するか、他の破壊的な攻撃がシステムに隠されたシステムアカウントを注入する権利を提供します。
ソリューション:userdelの-rユーザー名のユーザーを削除するコマンドを使用してコマンドUSERMODの-Lのユーザー名または無効なユーザーを使用して、見つかった不審なユーザーを確認してください。
リスク:高。
:grepを「受け入れられる」コマンドIPが正常にマシンにログオン疑わしいがあるかどうかを確認するには|以下の/ var /安全な/ログインすることにより、
説明を確認してください:攻撃や悪意のあるソフトウェアは、多くの場合、実装するか、他の破壊的な攻撃がシステムに隠されたシステムアカウントを注入する権利を提供します。
対処方法:ユーザーを削除するユーザ名-rコマンドでuserdelを使用してコマンドusermodの-Lユーザ名または無効なユーザーを使用してください。
リスク:高。
システムは、デフォルトの管理ポートを使用するかどうかを確認します。
デフォルトのポートを管理ポート(SSH、FTP、MySQLの、のRedisなど)によって使用されるシステムをされて確認し、デフォルトのポートは、多くの場合、簡単に成功ブラストツールを自動化されています。
ソリューション:
サーバーのポート22での編集は、/ etc / ssh / sshd_configファイルでは、変更後のsshサービスを再起動する必要があり、デフォルトのポート22を変更します。
/etc/init.d/sshd再起動(CentOSの)または/etc/init.d/ssh再起動(Debianの/ Ubuntuの)を実行することを有効にする設定を再起動するコマンドです。
デフォルトのリスニングポートが他のポートのためにFTP、MySQLの、Redisのおよび他のプログラムの設定ファイル21,3306,6379を変更します。
IPを制限するために、リモートログインIP、編集/etc/hosts.denyをは、/ etc / hosts.allowの2つのファイルを制限します。
リスク:高。
不正なアカウントのログインがあるかどうかを確認するために、/ etc / passwdファイルをチェックしてください:
説明を確認してください:攻撃や悪意のあるソフトウェアは、多くの場合、実装するか、他の破壊的な攻撃がシステムに隠されたシステムアカウントを注入する権利を提供します。
対処方法:ユーザーを削除するユーザ名-rコマンドでuserdelを使用してコマンドusermodの-Lユーザ名または無効なユーザーを使用してください。
リスク:中。
第二に、悪意のあるプロセスや違法なポートを確認します
、不正のポートがリッスンしている、対応するビューPIDがある場合は、サーバーを表示-antlp netstatコマンドを実行します。
悪質なプロセスのためのサーバをチェックし、悪意のあるプロセスがポートをリスニング開く傾向があり、外部制御機器へのアクセス。
ソリューション:
LS -lの/ proc / $ PID / EXEまたはファイルの/ proc / $ PID / EXE(対応する数のための$ PIDをPID)を実行して、不正なプロセスがある場合、PIDファイルのパスを対応する処理を表示します。
悪質なプロセスの場合、対応するファイルの削除の下で。
リスク:高。
異常なプロセスがあるかどうかを確認するには、ps -efとtopコマンドを使用します
説明を確認してください:CPUやメモリリソースの多くを使用し、不正なシステムの名前変更処理を有することが判明したときに、上記のコマンドを実行し、それが悪意のあるプログラムであってもよいです。
ソリューション:殺す使用-9プロセス名コマンドをプロセスを終了、またはファイアウォールの制限のアウトリーチ・プロセスを使用するように、プロセスは悪質なプロセスであることを確認してください。
リスク:高。
第三に、悪意あるプログラムや不審なスタートアップの項目を確認してください
珍しいスタートアップサービスのエントリがあるかどうかをチェックするためのchkconfig --listと猫/etc/rc.localの起動コマンドを使用します。
チェック説明:悪意のあるプログラムは、システム内のスタートアップ項目を追加し、シャットダウン、再起動、ユーザーの後に再実行する傾向があります。
ソリューション:悪質なプロセスがある場合、あなたがサービスをシャットダウンするchkconfigの名前オフのコマンドを使用することができ、および任意のコメント出た場合、/etc/rc.localの中に異常な項目をチェックします。
リスク:高。
cronは違法なタイミングタスクのスクリプトがあるかどうかを確認するためのディレクトリにファイルを。
説明を確認してください:ビューは、不審なスクリプトやプログラムのために/etc/crontab,/etc/cron.d,/etc/cron.daily,cron.hourly/,cron.monthly,cron.weekly/。
解決法:スケジュールされたタスクがある場合には分かりませんが、スクリプトはサービススクリプトかどうかを確認して適切に配置することができるが、非正規のビジネススクリプト場合は、直接タスクをコメントアウトするか、スクリプトの内容を削除します。
リスク:高。
第四に、サードパーティ製のソフトウェアの脆弱性をチェックします
あなたは、Web、データベース、サーバー内の他のアプリケーションサービスを実行している場合は、ファイルシステムにアプリケーションアカウントの書き込み権限を制限し、root以外のアカウントを実行してみてください。
説明を確認してください:アプリケーションの後に実行するためにroot以外のアカウントを使用すると、攻撃者はすぐに損失の攻撃を軽減、リモートコントロールサーバを侵害しないことを保証することができます
ソリューション:
Webのルートディレクトリサービスまたはデータベースの設定ディレクトリに移動します。
运行chown -R apache:apache /var/www/xxxx、chmod -R 750 file1.txt命令配置网站访问权限。
风险性:中。
参考示例
升级修复应用程序漏洞
检查说明:机器被入侵,部分原因是系统使用的应用程序软件版本较老,存在较多的漏洞而没有修复,导致可以被入侵利用。
解决方法:比较典型的漏洞例如 ImageMagick、openssl、glibc 等,用户可以根据腾讯云已发布安全通告指导通过 apt-get/yum 等方式进行直接升级修复。
风险性:高。
网站目录文件权限的参考示例如下:
场景:
我们假设 HTTP 服务器运行的用户和用户组是 www,网站用户为 centos,网站根目录是/home/centos/web。
方法/步骤:
我们首先设定网站目录和文件的所有者和所有组为 centos,www,如下命令:
chown -R centos:www /home/centos/web
设置网站目录权限为750,750是 centos 用户对目录拥有读写执行的权限,设置后,centos 用户可以在任何目录下创建文件,用户组有有读执行权限,这样才能进入目录,其它用户没有任何权限。
find -type d -exec chmod 750 {} \;
设置网站文件权限为640,640指只有 centos 用户对网站文件有更改的权限,HTTP 服务器只有读取文件的权限,无法更改文件,其它用户无任何权限。
find -not -type d -exec chmod 640 {} \;
针对个别目录设置可写权限。例如,网站的一些缓存目录就需要给 HTTP 服务有写入权限、discuz x2 的/data/目录就必须要写入权限。
find data -type d -exec chmod 770 {} \;
被入侵后的安全优化建议
尽量使用 SSH 密钥进行登录,减少暴力破解的风险。
在服务器内编辑/etc/ssh/sshd_config文件中的 Port 22,将 22 修改为其他非默认端口,修改之后重启 SSH 服务。可使用命令重启
/etc/init.d/sshd restart(CentOS)或 /etc/init.d/ssh restart(Debian/Ubuntu)
如果必须使用 SSH 密码进行管理,选择一个好密码。
无论应用程序管理后台(网站、中间件、tomcat 等)、远程 SSH、远程桌面、数据库,都建议设置复杂且不一样的密码。
下面是一些好密码的实例(可以使用空格):
1qtwo-threeMiles3c45jia
caser, lanqiu streets
下面是一些弱口令的示例,可能是您在公开的工作中常用的词或者是您生活中常用的词:
公司名+日期(coca-cola2016xxxx)
常用口语(Iamagoodboy)
使用以下命令检查主机有哪些端口开放,关闭非业务端口。
netstat -anltp
通过腾讯云-安全组防火墙限制仅允许制定 IP 访问管理或通过编辑/etc/hosts.deny、/etc/hosts.allow两个文件来限制 IP。
应用程序尽量不使用 root 权限。
例如 Apache、Redis、MySQL、Nginx 等程序,尽量不要以 root 权限的方式运行。
修复系统提权漏洞与运行在 root 权限下的程序漏洞,以免恶意软件通过漏洞提权获得 root 权限传播后门。
及时更新系统或所用应用程序的版本,如 Struts2、Nginx,ImageMagick、Java 等。
关闭应用程序的远程管理功能,如 Redis、NTP 等,如果无远程管理需要,可关闭对外监听端口或配置。
定期备份云服务器业务数据。
对重要的业务数据进行异地备份或云备份,避免主机被入侵后无法恢复。
除了您的 home,root 目录外,您还应当备份 /etc 和可用于取证的 /var/log 目录。
安装腾讯云主机安全(云镜) Agent,在发生攻击后,可以了解自身风险情况。