1. 求助伺服器被挖礦程序入侵,如何排查
新客戶於最近向我們SINE安全公司咨詢,說他的伺服器經常卡的網站無法打開,遠程連接
伺服器的慢的要命,有時候PING值都達到300-500之間,還經常掉包,聽客戶這么一說,一般
會判斷為受到了CC+DDOS混合流量攻擊,再具體一問,說是機房那面沒有受到流量攻擊,這
就有點奇怪了,不是流量攻擊,還導致伺服器卡,網站無法打開,這是什麼攻擊?為了解決客
戶伺服器卡的問題,我們隨即安排安全工程師對他的linux伺服器進行了安全檢測與安全部署。
挖礦木馬還設計了挖礦進程如果被客戶強制停止後,會自動啟動繼續挖礦,達到不間斷的挖礦,
仔細檢查發現是通過設置了每個小時執行任務計劃,遠程下載shell挖礦木馬,然後執行,檢查
當前進程是否存在,不存在就啟動挖礦木馬,進行挖礦。
對客戶的linux伺服器進行詳細了安全檢測發現幸虧沒有加密伺服器的數據,以及感染蠕蟲的病
毒,如果數據被加密那損失大了,客戶是做平台的,裡面的客戶數據很重要,找出挖礦木馬後,
客戶需要知道伺服器到底是如何被攻擊的? 被上傳挖礦木馬的? 防止後期再出現這樣的攻擊
狀況。
通過我們安全工程師的安全檢測與分析,發現該伺服器使用的是apache tomcat環境,平台的開
發架構是JSP+oracle資料庫,apache tomcat使用的是2016年的版本,導致該apache存在嚴重
的遠程執行命令漏洞,入侵者可以通過該漏洞直接入侵伺服器,拿到伺服器的管理員許可權,
SINE安全工程師立即對apache 漏洞進行修復,並清除木馬,至此問題得以解決,客戶伺服器
一切穩定運行,網站打開正常。
2. 如何查看linux伺服器被攻擊是否被攻擊過
最快的就是
直接聯系
你的服務商,查看伺服器有沒有被攻擊,機房那邊可以看到
3. Linux伺服器被黑如何查
linux系統的伺服器被入侵,總結了以下的基本方法,供不大懂linux伺服器網理人員參考考學習。x0dx0a首先先用iptraf查下,如果沒裝的運行yum install iptraf裝下,看裡面是不是UDP包發的很多,如果是,基本都被人裝了後門x0dx0a1. 檢查帳戶x0dx0a# less /etc/passwdx0dx0a# grep :0: /etc/passwd(檢查是否產生了新用戶,和UID、GID是0的用戶)x0dx0a# ls -l /etc/passwd(查看文件修改日期)x0dx0a# awk -F: 『$3= =0 {print $1}』 /etc/passwd(查看是否存在特權用戶)x0dx0a# awk -F: 『length($2)= =0 {print $1}』 /etc/shadow(查看是否存在空口令帳戶)x0dx0a x0dx0a2. 檢查日誌x0dx0a# last(查看正常情況下登錄到本機的所有用戶的歷史記錄)x0dx0a注意」entered promiscuous mode」x0dx0a注意錯誤信息x0dx0a注 意Remote Procere Call (rpc) programs with a log entry that includes a large number (> 20) strange characters(-^PM-^PM-^PM-^PM-^PM-^PM-^PM-^PM)x0dx0a x0dx0a3. 檢查進程x0dx0a# ps -aux(注意UID是0的)x0dx0a# lsof -p pid(察看該進程所打開埠和飢模文件)x0dx0a# cat /etc/inetd.conf | grep -v 「^#」(檢查守護進程)x0dx0a檢查隱藏進程x0dx0a# ps -ef|awk 『{print }』|sort -n|uniq >1x0dx0a# ls /porc |sort -n|uniq >2x0dx0a# diff 1 2x0dx0a x0dx0a4. 檢查文件x0dx0a# find / -uid 0 _perm -4000 _printx0dx0a# find / -size +10000k _printx0dx0a# find / -name 「?」 _printx0dx0a# find / -name 「.. 」 _printx0dx0a# find / -name 「. 」 _printx0dx0a# find / -name 」 」 _printx0dx0a注意SUID文件,可疑大於10M和空格文件x0dx0a# find / -name core -exec ls -l {} ;(檢查系統中的core文件)x0dx0a檢查系統文件完整性x0dx0a# rpm _qf /bin/lsx0dx0a# rpm -qf /爛液緩bin/loginx0dx0a# md5sum _b 文件名x0dx0a# md5sum _t 文件名x0dx0a x0dx0a5. 檢查RPMx0dx0a# rpm _Vax0dx0a輸出格式:x0dx0aS _ File size differsx0dx0aM _ Mode differs (permissions)x0dx0a5 _ MD5 sum differsx0dx0aD _ Device number mismatchx0dx0aL _ readLink path mismatchx0dx0aU _ user ownership differsx0dx0aG _ group ownership differsx0dx0aT _ modification time differsx0dx0a注意相關的 /sbin, /bin, /usr/sbin, and /usr/binx0dx0a x0dx0a6. 檢查埋辯網路x0dx0a# ip link | grep PROMISC(正常網卡不該在promisc模式,可能存在sniffer)x0dx0a# lsof _ix0dx0a# netstat _nap(察看不正常打開的TCP/UDP埠)x0dx0a# arp _ax0dx0a x0dx0a7. 檢查計劃任務x0dx0a注意root和UID是0的schelex0dx0a# crontab _u root _lx0dx0a# cat /etc/crontabx0dx0a# ls /etc/cron.*x0dx0a x0dx0a8. 檢查後門x0dx0a# cat /etc/crontabx0dx0a# ls /var/spool/cron/x0dx0a# cat /etc/rc.d/rc.localx0dx0a# ls /etc/rc.dx0dx0a# ls /etc/rc3.dx0dx0a# find / -type f -perm 4000x0dx0a x0dx0a9. 檢查內核模塊x0dx0a# lsmodx0dx0a x0dx0a10. 檢查系統服務x0dx0a# chkconfigx0dx0a# rpcinfo -p(查看RPC服務)x0dx0a x0dx0a11. 檢查rootkitx0dx0a# rkhunter -cx0dx0a# chkrootkit -q
4. 伺服器被攻擊怎麼辦
1、發現伺服器被入侵,應立即關閉所有網站服務,暫停至少3小時。這時候很多站長朋友可能會想,不行呀,網站關閉幾個小時,那該損失多大啊,可是你想想,是一個可能被黑客修改的釣魚網站對客戶的損失大,還是一個關閉的網站呢?你可以先把網站暫時跳轉到一個單頁面,寫一些網站維護的的公告。
2、下載伺服器日誌,並且對伺服器進行全盤殺毒掃描。這將花費你將近1-2小時的時間,但是這是必須得做的事情,你必須確認黑客沒在伺服器上安裝後門木馬程序,同時分析系統日誌,看黑客是通過哪個網站,哪個漏洞入侵到伺服器來的。找到並確認攻擊源,並將黑客掛馬的網址和被篡改的黑頁面截圖保存下來,還有黑客可能留下的個人IP或者代理IP地址。
3、Windows系統打上最新的補丁,然後就是mysql或者sql資料庫補丁,還有php以及IIS,serv-u就更不用說了,經常出漏洞的東西,還有就是有些IDC們使用的虛擬主機管理軟體。
4、關閉刪除所有可疑的系統帳號,尤其是那些具有高許可權的系統賬戶!重新為所有網站目錄配置許可權,關閉可執行的目錄許可權,對圖片和非腳本目錄做無許可權處理。
5、完成以上步驟後,你需要把管理員賬戶密碼,以及資料庫管理密碼,特別是sql的sa密碼,還有mysql的root密碼,要知道,這些賬戶都是具有特殊許可權的,黑客可以通過他們得到系統許可權!
6、Web伺服器一般都是通過網站漏洞入侵的,你需要對網站程序進行檢查(配合上面的日誌分析),對所有網站可以進行上傳、寫入shell的地方進行嚴格的檢查和處理。如果不能完全確認攻擊者通過哪些攻擊方式進行攻擊,那就重裝系統,徹底清除掉攻擊源。
5. 如何看Linux伺服器是否被攻擊
以下幾種方法檢測linux伺服器是否被攻擊:x0dx0a1、檢查系統密碼文件 x0dx0a首先從明顯的入手,查看一下passwd文件,ls _l /etc/passwd查看文件修改的日期。 x0dx0a2、查看一下進程,看看有沒有奇怪的進程 x0dx0ax0dx0a重點查看進程:ps _aef | grep inetd inetd是UNIX系統的守護進程,正常的inetd的pid都比較靠前,如果看到輸出了一個類似inetd _s x0dx0a/tmp/.xxx之類的進程,著重看inetd x0dx0a_s後面的內容。在正常情況下,LINUX系統中的inetd服務後面是沒有-s參數的,當然也沒有用inetd去啟動某個文件;而solaris系統中x0dx0a也僅僅是inetd x0dx0a_s,同樣沒有用inetd去啟動某個特定的文件;如果使用ps命令看到inetd啟動了某個文件,而自己又沒有用inetd啟動這個文件,那就說明已經有人入侵了系統,並且以root許可權起了一個簡單的後門。x0dx0a3、檢查系統守護進程 x0dx0a檢查/etc/inetd.conf文件,輸入:cat /etc/inetd.conf | grep _v 「^#」,輸出的信息就是這台機器所開啟的遠程服務。 x0dx0a一般入侵者可以通過直接替換in.xxx程序來創建一個後門,比如用/bin/sh 替換掉in.telnetd,然後重新啟動inetd服務,那麼telnet到伺服器上的所有用戶將不用輸入用戶名和密碼而直接獲得一個rootshell。x0dx0a4、檢查網路連接和監聽埠 x0dx0a輸入netstat -an,列出本機所有的連接和監聽的埠,查看有沒有非法連接。 x0dx0a輸入netstat _rn,查看本機的路由、網關設置是否正確。 x0dx0a輸入 ifconfig _a,查看網卡設置。 x0dx0a5、檢查系統日誌 x0dx0a命令last | x0dx0amore查看在正常情況下登錄到本機的所有用戶的歷史記錄。但last命令依賴於syslog進程,這已經成為入侵者攻擊的重要目標。入侵者通常會停止系x0dx0a統的syslog,查看系統syslog進程的情況,判斷syslog上次啟動的時間是否正常,因為syslog是以root身份執行的,如果發現x0dx0asyslog被非法動過,那說明有重大的入侵事件。 x0dx0a在linux下輸入ls _al /var/log x0dx0a檢查wtmp utmp,包括messgae等文件的完整性和修改時間是否正常,這也是手工擦除入侵痕跡的一種方法。 x0dx0a6、檢查系統中的core文件 x0dx0a通過發送畸形請求來攻擊伺服器的某一服務來入侵系統是一種常規的入侵方法,典型的RPC攻擊就是通過這種方式。這種方式有一定的成功率,也就是說並不能x0dx0a100%保證成功入侵系統,而且通常會在伺服器相應目錄下產生core文件,全局查找系統中的core文件,輸入find / -name core x0dx0a_exec ls _l {} \; 依據core所在的目錄、查詢core文件來判斷是否有入侵行為。x0dx0a7、檢查系統文件完整性 x0dx0a檢查文件的完整性有多種方法,通常通過輸入ls _l x0dx0a文件名來查詢和比較文件,這種方法雖然簡單,但還是有一定的實用性。但是如果ls文件都已經被替換了就比較麻煩。在LINUX下可以用rpm _V x0dx0a`rpm _qf 文件名` x0dx0a來查詢,查詢的結果是否正常來判斷文件是否完整。在LINUX下使用rpm來檢查文件的完整性的方法也很多,這里不一一贅述,可以man x0dx0arpm來獲得更多的格式。
6. 如何查看伺服器是否被ddos攻擊
先看下網站能不能打開,然後讓伺服器運營商在埠查看下流量的異常情況。具體加下 口吧,320006167
7. 遭受黑客攻擊後怎樣查詢被攻擊了
安全總是相對的,再安全的伺服器也有可能遭受到攻擊。作為一個安全運維人員,要把握的原則是:盡量做好系統安全防護,修復所有已知的危險行為,同時,在系統遭受攻擊後能夠迅速有效地處理攻擊行為,最大限度地降低攻擊對系統產生的影響。
一、處理伺服器遭受攻擊的一般思路
系統遭受攻擊並不可怕,可怕的是面對攻擊束手無策,下面就詳細介紹下在伺服器遭受攻擊後的一般處理思路。
1.切斷網路
所有的攻擊都來自於網路,因此,在得知系統正遭受黑客的攻擊後,首先要做的就是斷開伺服器的網路連接,這樣除了能切斷攻擊源之外,也能保護伺服器所在網路的其他主機。
2.查找攻擊源
可以通過分析系統日誌或登錄日誌文件,查看可疑信息,同時也要查看系統都打開了哪些埠,運行哪些進程,並通過這些進程分析哪些是可疑的程序。這個過程要根據經驗和綜合判斷能力進行追查和分析。下面的章節會詳細介紹這個過程的處理思路。
3.分析入侵原因和途徑
既然系統遭到入侵,那麼原因是多方面的,可能是系統漏洞,也可能是程序漏洞,一定要查清楚是哪個原因導致的,並且還要查清楚遭到攻擊的途徑,找到攻擊源,因為只有知道了遭受攻擊的原因和途徑,才能刪除攻擊源同時進行漏洞的修復。
4.備份用戶數據
在伺服器遭受攻擊後,需要立刻備份伺服器上的用戶數據,同時也要查看這些數據中是否隱藏著攻擊源。如果攻擊源在用戶數據中,一定要徹底刪除,然後將用戶數據備份到一個安全的地方。
5.重新安裝系統
永遠不要認為自己能徹底清除攻擊源,因為沒有人能比黑客更了解攻擊程序,在伺服器遭到攻擊後,最安全也最簡單的方法就是重新安裝系統,因為大部分攻擊程序都會依附在系統文件或者內核中,所以重新安裝系統才能徹底清除攻擊源。
6.修復程序或系統漏洞
在發現系統漏洞或者應用程序漏洞後,首先要做的就是修復系統漏洞或者更改程序bug,因為只有將程序的漏洞修復完畢才能正式在伺服器上運行。
7.恢復數據和連接網路
將備份的數據重新復制到新安裝的伺服器上,然後開啟服務,最後將伺服器開啟網路連接,對外提供服務。
二、檢查並鎖定可疑用戶
當發現伺服器遭受攻擊後,首先要切斷網路連接,但是在有些情況下,比如無法馬上切斷網路連接時,就必須登錄系統查看是否有可疑用戶,如果有可疑用戶登錄了系統,那麼需要馬上將這個用戶鎖定,然後中斷此用戶的遠程連接。
1.登錄系統查看可疑用戶
通過root用戶登錄,然後執行「w」命令即可列出所有登錄過系統的用戶,如下圖所示。
通過這個輸出可以檢查是否有可疑或者不熟悉的用戶登錄,同時還可以根據用戶名以及用戶登錄的源地址和它們正在運行的進程來判斷他們是否為非法用戶。
2.鎖定可疑用戶
一旦發現可疑用戶,就要馬上將其鎖定,例如上面執行「w」命令後發現nobody用戶應該是個可疑用戶(因為nobody默認情況下是沒有登錄許可權的),於是首先鎖定此用戶,執行如下操作:
[root@server ~]# passwd -l nobody鎖定之後,有可能此用戶還處於登錄狀態,於是還要將此用戶踢下線,根據上面「w」命令的輸出,即可獲得此用戶登錄進行的pid值,操作如下:
[root@server ~]# ps -ef|grep @pts/3 531 6051 6049 0 19:23 ? 00:00:00 sshd: nobody@pts/3 [root@server ~]# kill -9 6051這樣就將可疑用戶nobody從線上踢下去了。如果此用戶再次試圖登錄它已經無法登錄了。
3.通過last命令查看用戶登錄事件
last命令記錄著所有用戶登錄系統的日誌,可以用來查找非授權用戶的登錄事件,而last命令的輸出結果來源於/var/log/wtmp文件,稍有經驗的入侵者都會刪掉/var/log/wtmp以清除自己行蹤,但是還是會露出蛛絲馬跡在此文件中的。
三、查看系統日誌
查看系統日誌是查找攻擊源最好的方法,可查的系統日誌有/var/log/messages、/var/log/secure等,這兩個日誌文件可以記錄軟體的運行狀態以及遠程用戶的登錄狀態,還可以查看每個用戶目錄下的.bash_history文件,特別是/root目錄下的.bash_history文件,這個文件中記錄著用戶執行的所有歷史命令。
四、檢查並關閉系統可疑進程
檢查可疑進程的命令很多,例如ps、top等,但是有時候只知道進程的名稱無法得知路徑
8. 怎麼查看伺服器被入侵
如果伺服器(網站)被入侵了,一般都是伺服器或者網站存在漏洞,被黑客利用並提權入侵的,導致伺服器中木馬,網站被掛黑鏈,被篡改,被掛馬。解決辦法:如果程序不是很大,可以自己比對以前程序的備份文件,然後就是修復,或者換個伺服器,最好是獨立伺服器。也可以通過安全公司來解決,國內也就Sinesafe和綠盟等安全公司 比較專業.
9. 怎麼查看伺服器被入侵
1、入侵者入侵後一般會開伺服器的3389,建立隱藏用戶,然後登錄。我們只要到c:documents
and
settings這個目錄下看看是否有可以的用戶名就可以了,不管是不是隱藏的用戶,都會在這里顯示出來。
2、有些入侵者喜歡留一個有高許可權的sqlserver資料庫用戶,當作後門,我們可以打開登陸sqlserver的查詢分析器,然後依次打開master--系統表--dbo.sysxlogins(sqlserver2000下,sql2005和2008下,小王沒找到如何查看資料庫用戶的方法,如果您知道請指點),在這個窗口的name列中可以看到sqlserver資料庫的用戶,一般情況下會有3個用戶,一個是sa,一個builtinadministrators,還有一個是null,如果還存在其他用戶,就有可能是被人入侵了或者是我上面講的那些情況,就需要注意點了,當然不一定就那三個用戶,小王還見過name下有多個sa和null的,但不知道是怎麼回事,具體問題還需要具體分析。