Küsimus:
QEMU ja ruuteri püsivara
user15945
2016-04-29 19:49:10 UTC
view on stackexchange narkive permalink

Püüan ruuteri püsivara (binaarset) käivitada QEMU-s (kui see on võimalik). Kogu võrguühendus on seadistatud, kuna olen seda testinud debian_wheezy_mips_standard.qcow2

  sudo qemu-system-mips -M malta -kernel vmlinux-3.2.0-4-4kc-malta - abil hda MYROUTERBINARY.bin -app "root = / dev / sda1 console = ttyS0" -nograafiline  

QEMU käivitamisel läheb tühjale ekraanile. Ma arvasin, et sellel ei pruugi olla kasutajaliidest, kuna see on ruuter, kuid ma ei saa vastust, kui käivitan nmap-i selle IP-aadressiruumi vastu, kus see peaks olema.

Kas peaksin failisüsteemi importima kasutades:

  sudo qemu-system-mips -M malta -kernel vmlinux-3.2.0-4-4kc-malta -hdadebian_wheezy_mips_standard.qcow2 -append "root = / dev / sda1 konsool = ttyS0 "-nograafiline  

Oletame, et näiteks mul töötab ruuteris netcat. Ma tahan pääseda porti juurde, nii et kas ruuteri püsivara / failisüsteem peab töötama

Kas keegi saaks palun aidata?

Vt [emuleerige juani DVR R7816 Qemus] (http://reverseengineering.stackexchange.com/questions/11083/emulate-juan-dvr-r7816-in-qemu) (eelkõige http://reverseengineering.stackexchange.com/ a / 11091/1562).
Sel juhul kasutab ta siiski QEMU jaoks ehitatud tuuma, seega on see pigem selline nagu http://reverseengineering.stackexchange.com/questions/4480/emulate-tp-link-wr740n-with-qemu?rq=1. See peaks midagi toimima. @user15945, prooviks ehk lisada tuuma käsureale 'earlyprintk'?
"Oletame näiteks, et mul on ruuteris töötav netcat. Ma tahan pääseda porti juurde, nii et kui ruuteri püsivara / failisüsteem peab töötama" seda igast arvutist. Muidu pole teie küsimusel mõtet.
@VitalyOsipov Kuidas ei ole tema küsimus mõttekas, kui ta soovib telnetti emuleeritud ruuterisse saada, kuid ei saa nimetatud emuleeritud ruuterit käivitada?
Selle toimimiseks peab teie QEMU jäljendama ruuteri Ethernet-liidese riistvara, * ja * "ühendama" selle liidese hosti võrguga (!). Ma kuidagi kahtlen, kas ta seda teeb. Ma arvan, et kernel ei käivitu isegi siis, kui see ei leia ruuteri füüsilist riistvara.
@GuntramBlohm Ma arvan, et tema küsimus ei olnud väga selge ja ma ei lähe tavaliselt nende jaoks tähenduse püüdmiseks. Vabandused
Lisaks arvan, et sellel küsimusel pole mõtet.
Kolm vastused:
LawrenceC
2017-03-26 03:12:14 UTC
view on stackexchange narkive permalink

Enamikul MIPS / ARM-põhistel ruuteritel on ROM-i alglaadur, mis töötab seadme sisselülitamisel. Sellele alglaadurile on tavaliselt juurdepääs jadapordi kaudu, kuid mõned platvormid (näiteks AR7) teevad imelikke asju, näiteks FTP-server töötab (selle kaudu saate püsivara vilkuda).

See alglaadur laadib kerneli pildi ja initrd NAND-seadme sektsioonist, seejärel käivitage see.

Fail bin on tõenäoliselt mõeldud kirjutama otse välkmälu partitsioonile, seejärel lahti pakkima / laadima RAM-i. alglaadur. Partitsioone on rohkem kui ainult see, millel on kernel. Teil on üks, mis võib-olla hoiab initrdi või rootf-i, ja teine ​​toimib "NVRAM-i" või seadistustena. Võib isegi käivituslaadurit enda käes hoida.

Kui Linux on käivitatud, toimub püsivara uuendamine, kirjutades seadmesse / dev / mmcbllkpX .

Tõenäoliselt saate seda teha lahendage alglaaduri probleem, selgitades välja, millised seadme flash-partitsioonid on kernel ja initrd, ja kasutage nende laadimiseks QEMU-i valikuid -kernel ja -initrd .

Kuid püsivara ootab tõenäoliselt eeldatavate seadmete osana KÕIK algset välklampi. Siin satute tõsiste probleemidega.

Ma ei tea, kuidas panna QEMU-d NAND-seadet jäljendama või kui see on üldse võimalik (see EI ole sama mis kettaseade). Enamikul ruuteritel on üks NAND-seade "jaotatud" ja Linuxi kernel loob need uuesti kui / dev / mmcblkp0 , / dev / mmcblkp1 jne. seadme jaoks vajate täielikku NANDi, mis on kiibil, nagu see kiibil on.

Samuti on probleem, et kui ruuter pole Linuxi-põhine, võib see töötada ainult konkreetse riistvaraga seadmeid ruuteris.

Lexicon
2016-11-07 09:00:53 UTC
view on stackexchange narkive permalink

Võimalik, et peate esmalt prügikasti faili lahti pakkima (kasutades midagi sellist nagu binwalk). Ma ei usu, et saate viidata .binile lihtsalt hda-le. Tavaliselt antakse pärast .bin-faili lahti pakkimist seadme failisüsteem. teil on mitu erinevat sektsiooni, kuna mõned ruuteri tootjad loovad mitme mudeli vahel jagatud peamised f-d ja loovad seejärel väiksemad moodulid, mis laaditakse mudelispetsiifilistesse seadmetesse. Kui vaadata juurfs-i init, peaksite olema võimeline nägema, kuidas teised .bin'i partitsioonid ümber liiguvad, ja seda matkida. b> ise. Samuti arvan, et teil tekib võrguprobleeme. wheezy_mips hda jäljendamine on lihtne, pidage meeles, et teie .bin on mõeldud laadimiseks keskkonnas, millel on mitu võrguliidest.

-Hea õnne.

Julio Viera
2017-02-21 07:53:26 UTC
view on stackexchange narkive permalink

sudo qemu-system-mips -M malta -kernel vmlinux-3.2.0-4-4kc-malta -hda MYROUTERBINARY.bin -app "root = / dev / sda1 console = ttyS0" -nograafiline

Kas seadmel, mida prügifaili kasutate, on partitsioonid? Lisan lõpliku avaldusena - no-acpi. See peaks seda tegema. Qemu-süsteemide käivitamisel on see osa väga oluline. Või see sümptom, mida te selgitate, on õnnelik



See küsimus ja vastus tõlgiti automaatselt inglise keelest.Algne sisu on saadaval stackexchange-is, mida täname cc by-sa 3.0-litsentsi eest, mille all seda levitatakse.
Loading...