بيونس آئرس ۾ ايڪو پارٽي 2017 ڪمپيوٽر سيڪيورٽي ڪانفرنس ۾، ارجنٽائن هيڪر Alfredo Ortega هڪ تمام دلچسپ ترقي ڏيکاري - هڪ مائڪرو فون استعمال ڪرڻ کان سواءِ احاطي جي ڳجهي وائر ٽيپنگ لاءِ هڪ نظام. آواز
HDD خاص طور تي تيز-شدت جي گھٽ فريڪوئنسي آوازن، پيرن جا قدم ۽ ٻين وائبريشنز کي کڻي ٿو. انساني تقرير اڃا تائين تسليم نه ٿي ڪري سگھجي، جيتوڻيڪ سائنسدان
آواز هوا يا ڪنهن ٻئي ميڊيم جو وائبريشن آهي. ھڪڙو ماڻھو انھن کي ڪن جي پردي ذريعي سمجھندو آھي، جيڪو اندرين ڪن ڏانھن وائبريشن منتقل ڪري ٿو. مائڪروفون تقريبن هڪ ڪن وانگر ٺهيل آهي - هتي، پڻ، ٿڌن کي هڪ پتلي جھلي طرفان رڪارڊ ڪيو ويو آهي، جيڪو برقي تسلسل کي وڌائي ٿو. هارڊ ڊرائيو، يقينا، ڀرسان هوا ۾ وهڪري جي ڪري خوردبيني وائبريشن جي تابع آهي. اهو HDDs جي ٽيڪنيڪل خاصيتن کان به سڃاتو وڃي ٿو: ٺاهيندڙن کي عام طور تي وڌ ۾ وڌ اجازت واري وائيبريشن سطح جي نشاندهي ڪن ٿا، ۽ هارڊ ڊرائيو پاڻ اڪثر ڪري ان کي رٻڙ يا ٻي موصلي مواد مان ٺهيل کمپن پروف ڪنٽينر ۾ رکڻ جي ڪوشش ڪندو آهي. ان مان اهو نتيجو ڪڍڻ آسان آهي ته آواز HDD استعمال ڪندي رڪارڊ ڪري سگهجي ٿو. باقي اهو آهي ته اهو معلوم ڪرڻو آهي ته ڪيئن.
Alfredo Ortega هڪ پاسي واري چينل حملي جو هڪ منفرد نسخو پيش ڪيو، يعني هڪ وقت جو حملو. اهو حملو ان مفروضي تي مبني آهي ته مختلف وقتن تي ڊوائيس تي مختلف آپريشن ڪيا ويندا آهن، ڏنل ان پٽ ڊيٽا جي بنياد تي. انهي صورت ۾، "انپٽ ڊيٽا" پڙهڻ واري سر ۽ HDD پليٽ جي کمپن آهي، جيڪو ماحول جي وائيبريشن سان تعلق رکي ٿو، يعني آواز سان. اهڙيء طرح، حساب جي وقت کي ماپڻ ۽ ڊيٽا جي شمارياتي تجزيي کي انجام ڏيڻ سان، سر / پليٽ جي وائبريشنز ۽ ان ڪري وچولي جي وائبريشن کي ماپ ڪري سگهجي ٿو. ڊيٽا پڙهڻ ۾ جيتري دير ٿيندي، اوترو ئي مضبوط HDD وائبريشنز ۽، تنهن ڪري، آواز اوترو وڌيڪ.
هارڊ ڊرائيو وائبريشن کي ڪيئن اندازو ڪجي؟ بلڪل سادو: صرف سسٽم ڪال کي هلائي read ()
- ۽ اهو وقت رڪارڊ ڪريو جيڪو مڪمل ٿيڻ ۾ وٺندو آهي. جديد آپريٽنگ سسٽم توهان کي نانو سيڪنڊ جي درستگي سان سسٽم ڪالن جو وقت پڙهڻ جي اجازت ڏين ٿا.
هڪ شعبي کان معلومات پڙهڻ جي رفتار سر ۽ پليٽ جي پوزيشن تي منحصر آهي، جيڪو HDD ڪيس جي کمپن سان لاڳاپيل آهي. اهو ئي سڀ ڪجهه آهي.
شمارياتي تجزيو هڪ سادي Kscope استعمال ڪندي ڪيو ويندو آهي. جيئن اهي چون ٿا، هر شيء سادي آهي.
Kscope افاديت (stat() syscall)
Kscope هڪ ننڍڙي افاديت آهي نظام ڪال جي عمل جي وقتن ۾ ننڍڙن اختلافن کي ڏسڻ لاءِ. ذريعو
هڪ الڳ مخزن ۾ read ()
.
HDD استعمال ڪندي آواز جي رڪارڊنگ جو مظاهرو، Kscope افاديت جو آپريشن
يقينا، تقرير هن طريقي سان سمجهي نه ٿو سگهجي، پر HDD هڪ وائيريشن سينسر جي طور تي ڪافي مناسب آهي. مثال طور، توهان رجسٽر ڪري سگهو ٿا جيڪڏهن ڪو ماڻهو سخت بوٽ پائڻ يا ننگي پيرن ۾ ڪمپيوٽر سان ڪمري ۾ داخل ٿيو (شايد، جيڪڏهن حملو ڪندڙ نرم سنوڪر پائڻ وارو آهي يا فرش تي ٿلهي قالين آهي، ته HDD وائيبريشن کي رجسٽر ڪرڻ جي قابل نه هوندو - اهو جانچڻ جي لائق آهي). ڪمپيوٽر ٽٽل شيشي يا ٻين واقعن کي مضبوط آواز جي شدت سان رجسٽر ڪرڻ جي قابل آهي. اهو آهي، هارڊ ڊرائيو هڪ قسم جي غير مجاز مداخلت ڳولڻ واري نظام جي طور تي ڪم ڪري سگهي ٿو.
HDD قاتل
رستي ۾، هڪ اهڙي ٽيڪنڪ هارڊ ڊرائيو کي بند ڪرڻ لاء استعمال ڪري سگهجي ٿو. صرف هتي اسان HDD مان oscillations کي ختم نه ڪندا آهيون، پر ان جي برعڪس، اسان oscillations ٺاهيندا آهيون جيڪي HDD کي کارايو ويندو آهي. جيڪڏهن توهان اسپيڪر مان آواز کي فريڪوئنسي تي هلائيندا آهيو جيڪا HDD فریکوئنسي سان گونجندي آهي، سسٽم جلد ئي ڊوائيس کي I/O جي غلطي سان بند ڪري ٿو (لينڪس ڪنيل مڪمل طور تي HDD کي 120 سيڪنڊن کان پوءِ بند ڪري ٿو). هارڊ ڊرائيو پاڻ کي ناقابل واپسي نقصان جو شڪار ٿي سگھي ٿو.
لينڪس ڪرنل هارڊ ڊرائيو کي بند ڪري ڇڏيو 120 سيڪنڊن کان پوءِ آواز پهچائڻ جي هڪ گونج فريڪوئنسي تي ايڊفير r19u USB اسپيڪر جي اسپيڪر ذريعي. اسپيڪر لڳ ڀڳ هڪ چوٿين پاور تي (100 ميگاواٽ کان گهٽ) تي ڦيرايو ويو آهي ۽ HDD کان 20 سينٽي جي فاصلي تي واقع آهي، جنهن جو مقصد ميز تي ويبريشن کي وڌائڻ لاء. فريم کان
اهو دلچسپ آهي ته HDDs تي اهڙا "حملا" ڪڏهن ڪڏهن مڪمل طور تي روزمره جي زندگيء ۾ حادثي سان ٿينديون آهن. مثال طور، سيپٽمبر 2016 ۾، ING بئنڪ ڊيٽا سينٽر کي 10 ڪلاڪن لاءِ آپريشن معطل ڪرڻ تي مجبور ڪيو ويو فائر ڊرل کان پوءِ.
ڊيٽا سينٽر ۾ هارڊ ڊرائيو تي انساني چيخن جو مظاهرو. دير جي ماپ
گونجندڙ آواز پيدا ڪرڻ لاءِ، Alfredo Ortega هڪ Python اسڪرپٽ لکيو
"""PyAudio hdd-killer: Generate sound and interfere with HDD """
"""Alfredo Ortega @ortegaalfredo"""
"""Usage: hdd-killer /dev/sdX"""
"""Where /dev/sdX is a spinning hard-disk drive"""
"""Turn the volume to the max for better results"""
"""Requires: pyaudio. Install with 'sudo pip install pyaudio' or 'sudo apt-get install python-pyaudio'"""
import pyaudio
import time
import sys
import math
import random
RATE=48000
FREQ=50
# validation. If a disk hasn't been specified, exit.
if len(sys.argv) < 2:
print "hdd-killer: Attempt to interfere with a hard disk, using sound.nn" +
"The disk will be opened as read-only.n" +
"Warning: It might cause damage to HDD.n" +
"Usage: %s /dev/sdX" % sys.argv[0]
sys.exit(-1)
# instantiate PyAudio (1)
p = pyaudio.PyAudio()
x1=0
NEWFREQ=FREQ
# define audio synt callback (2)
def callback(in_data, frame_count, time_info, status):
global x1,FREQ,NEWFREQ
data=''
sample=0
for x in xrange(frame_count):
oldsample=sample
sample=chr(int(math.sin(x1*((2*math.pi)/(RATE/FREQ)))*127)+128)
data = data+sample
# continous frequency change
if (NEWFREQ!=FREQ) and (sample==chr(128)) and (oldsample<sample) :
FREQ=NEWFREQ
x1=0
x1+=1
return (data, pyaudio.paContinue)
# open stream using callback (3)
stream = p.open(format=pyaudio.paUInt8,
channels=1,
rate=RATE,
output=True,
stream_callback=callback)
# start the stream (4)
stream.start_stream()
# wait for stream to finish (5)
while stream.is_active():
timeprom=0
c=file(sys.argv[1])
for i in xrange(20):
a=time.clock()
c.seek(random.randint(0,1000000000),1) #attempt to bypass file buffer
c.read(51200)
b=time.clock()
timeprom+=b-a
c.close()
timeprom/=20
print("Frequency: %.2f Hz File Read prom: %f us" % (FREQ,timeprom*1000000))
NEWFREQ+=0.5
# stop stream (6)
stream.stop_stream()
stream.close()
# close PyAudio (7)
p.terminate()
جو ذريعو: www.habr.com