यह क्या आदेश: () {: |: &} ?: करता है? [डुप्लिकेट]


3

इस सवाल का पहले से ही यहाँ एक जवाब है:

यह शेल कमांड लिनक्स में क्या करता है

:(){ :|: & };:

इसे डेनियल ऑफ सर्विस हमलों में कैसे इस्तेमाल किया जा सकता है?


जवाबों:


5

यह फोर्क बम है। मैंने वास्तव में अपने व्हाइटबोर्ड पर लिखा है (एक मजाक के रूप में) जैसा कि मैं बोलता हूं। इसे न चलाएं।

:()         # define a function named :, () defines a function in bash
{           
    : | :;  # the pipe needs two instances of this function, which forks two shells
}
;           # end function definition
:           # run it

तो, पहला रन 2 उप-वर्ग बनाता है, जो तब प्रत्येक 2 और उप-भाग चलाता है ...

: बाश में निर्मित एक कमांड है। यह एक "अशक्त" नो-ऑप कमांड की तरह है। यह टिप्पणी चरित्र हुआ करता था, इससे पहले कि यह एक टिप्पणी चरित्र था। अब, इसे नो-ऑप के रूप में एक छोटा सा उपयोग मिल गया है, लेकिन वास्तव में यहाँ उपयोग किया जाता है क्योंकि यह अधिक गूढ़ है, आप इसे देखें :() और लगता है कि WTH है?


: एक ऑपरेटर नहीं है, यह एक अंतर्निहित कमांड है जो कुछ भी नहीं करता है। यह परिभाषा नामक फ़ंक्शन को परिभाषित करती है :, जो अंतर्निहित कमांड को छुपाता है। यहाँ एक स्पष्ट और समकक्ष संस्करण है इस रानी को पूरा मत करो bomb() { bomb | bomb & ) ; bomb
Keith Thompson

क्यों हर कोई इसे नहीं चलाने के लिए कह रहा है? या तो मैक ओएस एक्स बहुत चालाक है या किसी भी नुकसान का कारण बनने के लिए टूट गया है। का एक गुच्छा -bash: fork: Resource temporarily unavailable, तो शीघ्र वापस एक या दूसरे के भीतर है।
Daniel Beck

@DanielBeck I (जानबूझकर) यह सोलारिस पर कई साल पहले चला था, एक लॉगआउट के लिए मजबूर करने की जरूरत थी, हालांकि मुझे वास्तव में सिर्फ रिबूट किया गया था (मेरा डेस्कटॉप स्पार्क)।
Rich Homolka

फोर्किंग घातीय उपयोगकर्ता ने मेमोरी लीक बनाया। ओएस, प्रफुल्लितता या आपदा के आधार पर निर्भर करता है। मैक जानता है कि उपयोगकर्ता इसके बावजूद कुछ भी करेंगे? ulimit ने इसे काम करने से रोकने के लिए सेट किया?
Fiasco Labs
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.