Community discussions

MikroTik App
 
minks
just joined
Topic Author
Posts: 13
Joined: Sun Feb 23, 2020 10:05 pm
Contact:

Why last netinstall can't boot any x86 devices (deep dive)

Thu Jun 17, 2021 11:44 pm

Just because it full of typos and errors =)

Let's get some theory of normal boot process
TFTP: /image (FileID: 125, Size: 42097)
TFTP: /ldlinux.c32 (FileID: 142, Size: 115516)
TFTP: /pxelinux.cfg/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx (FileID: 126, Size: 88)
TFTP: /linux (FileID: 120, Size: 1094208)
TFTP: /initrd.rgz (FileID: 121, Size: 163616)
UDP Multicast: disk-drivers.npk (FileID: 150, Size: 1287084)
.
Lets try to boot our VM using netinstall.exe (6.48.3)
0-is-too-big.png
.
Woohoo: NBP is too big...
Ok lets capture network packet by wireshark and looks is it really big
1-incorrect-size.png
.
It report size 2138 (x 512 blocks) i.e. 1094656 bytes
Hm... looks like this size not of NBP which is /image (Size: 42097) but size of /linux (Size: 1094208)
hmm lets look inside the code of netinstall.exe, function sub_40954E
2-where-the-error.png
.
Ahh we see typical typo, must be 125 but exist 120
Ok lets go deeper in assembly
3-where-the-error-detailed.png
.
How to fix?
Easy, just replace 78 on 7D

After that we can boot our VM
4-no-harddrives-found.png
.
But now we face: no hard drive found

Why this happen, easy - because of BUG in disk-drivers.npk (FileID: 150, Size: 1287084)
5-Signature-Forgot.png
.
Simply forgot to put signature in corresponding block

Tomorrow i plan to release full fixed netinstall to public

And by the way dear MikroTik are you have BUG bounty program, did i win? =)
You do not have the required permissions to view the files attached to this post.
 
r00t
Long time Member
Long time Member
Posts: 672
Joined: Tue Nov 28, 2017 2:14 am

Re: Why last netinstall can't boot any x86 devices (deep dive)

Fri Jun 18, 2021 2:01 am

nice analysis, well done
hope they fix this in next version
 
minks
just joined
Topic Author
Posts: 13
Joined: Sun Feb 23, 2020 10:05 pm
Contact:

Re: Why last netinstall can't boot any x86 devices (deep dive)

Fri Jun 18, 2021 4:31 pm

Netinstall with fixes mentioned above: netinstall-6.48.3-fixed.zip
The URL will be available until the official fix is released
 
User avatar
SiB
Forum Guru
Forum Guru
Posts: 1888
Joined: Sun Jan 06, 2013 11:19 pm
Location: Poland

Re: Why last netinstall can't boot any x86 devices (deep dive)

Sun Aug 29, 2021 9:22 pm

BUG bounty program
This will be greate, even if they give a license like on at a MUM.
 
User avatar
Znevna
Forum Guru
Forum Guru
Posts: 1347
Joined: Mon Sep 23, 2019 1:04 pm

Re: Why last netinstall can't boot any x86 devices (deep dive)

Mon Aug 30, 2021 12:41 pm

Imagine the bugs present in RouterOS just because of some typos. But something like this in the most important recovery utility is disappointing.
BUG Bounty program? Yeah.. because everyone has time to analyze closed source programs...
@minks here was just annoyed enough to do that :)
MikroTik already has a big list of bugs to fix.. I only think they lack the man power
 
highlander
just joined
Posts: 3
Joined: Sun Dec 03, 2017 5:36 pm

Re: Why last netinstall can't boot any x86 devices (deep dive)

Mon Feb 07, 2022 5:37 pm

Thaks you !!! You are BOSS. Your fix worked like charm !!! In win11 i set it to win7 compatibility mode, disable firewall and run as admin. Installed on x86 board with xeon.
 
stxx
just joined
Posts: 2
Joined: Tue Nov 08, 2016 12:42 pm

Re: Why last netinstall can't boot any x86 devices (deep dive)

Tue Mar 14, 2023 2:12 pm

minks, thank you it works! Official version 7.8 still have bugs.

Who is online

Users browsing this forum: johnson73, rplant, sted, TeWe and 88 guests