Mastodon Skip to content
  • Home
  • Aktuell
  • Tags
  • Über dieses Forum
Einklappen
Grafik mit zwei überlappenden Sprechblasen, eine grün und eine lila.
Abspeckgeflüster – Forum für Menschen mit Gewicht(ung)

Kostenlos. Werbefrei. Menschlich. Dein Abnehmforum.

  1. Home
  2. Uncategorized
  3. WebUSBWebGPUWebPCIEWebNVMEWebSATAWebATX12V

WebUSBWebGPUWebPCIEWebNVMEWebSATAWebATX12V

Geplant Angeheftet Gesperrt Verschoben Uncategorized
61 Beiträge 30 Kommentatoren 0 Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • manawyrm@chaos.socialM manawyrm@chaos.social

    @littlefox @volpeon
    *sigh*
    OK, you wanted it:

    AMI MegaRAC (the BMC web UI for servers) has this feature where they allow you to select a .iso image for a CD-ROM in the web console (next to the KVM/VNC viewer).

    How did they implement the CD-ROM emulation?
    They open a WebSockets connection to the BMC, emulate a SCSI CD-ROM drive in JavaScript (!) and send raw SCSI packets back&forth via WebSockets, which the BMC then forwards via internal USB to the host system.

    funkylab@mastodon.socialF This user is from outside of this forum
    funkylab@mastodon.socialF This user is from outside of this forum
    funkylab@mastodon.social
    schrieb zuletzt editiert von
    #47

    @manawyrm @littlefox @volpeon not sure I fully understand, doesn't that mean the browser page with the ISO "upload" needs to stay open and active for the whole duration of what you're doing with the bootable image?

    manawyrm@chaos.socialM 1 Antwort Letzte Antwort
    0
    • funkylab@mastodon.socialF funkylab@mastodon.social

      @manawyrm @littlefox @volpeon not sure I fully understand, doesn't that mean the browser page with the ISO "upload" needs to stay open and active for the whole duration of what you're doing with the bootable image?

      manawyrm@chaos.socialM This user is from outside of this forum
      manawyrm@chaos.socialM This user is from outside of this forum
      manawyrm@chaos.social
      schrieb zuletzt editiert von
      #48

      @funkylab @littlefox @volpeon Yes, that‘s right. It‘s being „streamed“ in real time from your browser, which also means that the speed is directly dependent on your latency to the server, because each sector read needs a command -> response interaction.

      There wouldn‘t be any space anywhere for the BMC to store an entire ISO (not enough RAM or flash memory).

      funkylab@mastodon.socialF rmsilva@mamot.frR 2 Antworten Letzte Antwort
      0
      • manawyrm@chaos.socialM manawyrm@chaos.social

        @funkylab @littlefox @volpeon Yes, that‘s right. It‘s being „streamed“ in real time from your browser, which also means that the speed is directly dependent on your latency to the server, because each sector read needs a command -> response interaction.

        There wouldn‘t be any space anywhere for the BMC to store an entire ISO (not enough RAM or flash memory).

        funkylab@mastodon.socialF This user is from outside of this forum
        funkylab@mastodon.socialF This user is from outside of this forum
        funkylab@mastodon.social
        schrieb zuletzt editiert von
        #49

        @manawyrm @littlefox @volpeon yeah I was wondering where images were stored, but assumed there must just be enough flash for that; I was wrong!

        manawyrm@chaos.socialM 1 Antwort Letzte Antwort
        0
        • funkylab@mastodon.socialF funkylab@mastodon.social

          @manawyrm @littlefox @volpeon yeah I was wondering where images were stored, but assumed there must just be enough flash for that; I was wrong!

          manawyrm@chaos.socialM This user is from outside of this forum
          manawyrm@chaos.socialM This user is from outside of this forum
          manawyrm@chaos.social
          schrieb zuletzt editiert von
          #50

          @funkylab @littlefox @volpeon some BMCs can also live stream images from HTTP, but that‘s an even more insane mechanism, where it generates HTTP requests on the fly for each sector (2048bytes) read from the CD.

          Yes, one HTTP request per sector. It‘s a mini DDoS 😄

          funkylab@mastodon.socialF 1 Antwort Letzte Antwort
          0
          • manawyrm@chaos.socialM manawyrm@chaos.social

            @funkylab @littlefox @volpeon some BMCs can also live stream images from HTTP, but that‘s an even more insane mechanism, where it generates HTTP requests on the fly for each sector (2048bytes) read from the CD.

            Yes, one HTTP request per sector. It‘s a mini DDoS 😄

            funkylab@mastodon.socialF This user is from outside of this forum
            funkylab@mastodon.socialF This user is from outside of this forum
            funkylab@mastodon.social
            schrieb zuletzt editiert von
            #51

            @manawyrm @littlefox @volpeon well uefi specifies boot via HTTP https://uefi.org/specs/UEFI/2.11/24_Network_Protocols_SNP_PXE_BIS.html#http-boot ; there's an entirely (nah, let's go with homeopathically) reasonable world where the BMC acts as HTTP server, using as much of its own RAM as read cache as possible,to minimize that latency penalty (physical CD-ROM drives also benefit from locality, because seeking across half a disk is probably slower than awaiting replies from residential V.90 modems)

            manawyrm@chaos.socialM f4grx@chaos.socialF 2 Antworten Letzte Antwort
            0
            • funkylab@mastodon.socialF funkylab@mastodon.social

              @manawyrm @littlefox @volpeon well uefi specifies boot via HTTP https://uefi.org/specs/UEFI/2.11/24_Network_Protocols_SNP_PXE_BIS.html#http-boot ; there's an entirely (nah, let's go with homeopathically) reasonable world where the BMC acts as HTTP server, using as much of its own RAM as read cache as possible,to minimize that latency penalty (physical CD-ROM drives also benefit from locality, because seeking across half a disk is probably slower than awaiting replies from residential V.90 modems)

              manawyrm@chaos.socialM This user is from outside of this forum
              manawyrm@chaos.socialM This user is from outside of this forum
              manawyrm@chaos.social
              schrieb zuletzt editiert von
              #52

              @funkylab @littlefox @volpeon

              hahahahahaha, good joke 🙂

              yeah, uefi http boot (and it’s support in practical devices) is mostly homeopathic. If you even dare think about things like IPv6 or modern webservers (something like nginx instead of a 17 year old Apache) it will just flat out refuse to work 😹

              the practical approach is to use the old PXE TFTP stuff to bootstrap something like iPXE and let it do HTTP from there.

              funkylab@mastodon.socialF 1 Antwort Letzte Antwort
              0
              • manawyrm@chaos.socialM manawyrm@chaos.social

                @funkylab @littlefox @volpeon

                hahahahahaha, good joke 🙂

                yeah, uefi http boot (and it’s support in practical devices) is mostly homeopathic. If you even dare think about things like IPv6 or modern webservers (something like nginx instead of a 17 year old Apache) it will just flat out refuse to work 😹

                the practical approach is to use the old PXE TFTP stuff to bootstrap something like iPXE and let it do HTTP from there.

                funkylab@mastodon.socialF This user is from outside of this forum
                funkylab@mastodon.socialF This user is from outside of this forum
                funkylab@mastodon.social
                schrieb zuletzt editiert von
                #53

                @manawyrm @littlefox @volpeon yeah aware that all HTTP boot projects take that route' was just hoping there was a reason for that part of the uefi spec

                1 Antwort Letzte Antwort
                0
                • manawyrm@chaos.socialM manawyrm@chaos.social

                  @funkylab @littlefox @volpeon Yes, that‘s right. It‘s being „streamed“ in real time from your browser, which also means that the speed is directly dependent on your latency to the server, because each sector read needs a command -> response interaction.

                  There wouldn‘t be any space anywhere for the BMC to store an entire ISO (not enough RAM or flash memory).

                  rmsilva@mamot.frR This user is from outside of this forum
                  rmsilva@mamot.frR This user is from outside of this forum
                  rmsilva@mamot.fr
                  schrieb zuletzt editiert von
                  #54

                  @manawyrm @funkylab @littlefox @volpeon Which works great when you choose the default "Verify the image and install" in some distributions 😁

                  1 Antwort Letzte Antwort
                  0
                  • funkylab@mastodon.socialF funkylab@mastodon.social

                    @manawyrm @littlefox @volpeon well uefi specifies boot via HTTP https://uefi.org/specs/UEFI/2.11/24_Network_Protocols_SNP_PXE_BIS.html#http-boot ; there's an entirely (nah, let's go with homeopathically) reasonable world where the BMC acts as HTTP server, using as much of its own RAM as read cache as possible,to minimize that latency penalty (physical CD-ROM drives also benefit from locality, because seeking across half a disk is probably slower than awaiting replies from residential V.90 modems)

                    f4grx@chaos.socialF This user is from outside of this forum
                    f4grx@chaos.socialF This user is from outside of this forum
                    f4grx@chaos.social
                    schrieb zuletzt editiert von
                    #55

                    @funkylab @manawyrm @littlefox @volpeon the supreme form of curl | sudo bash

                    1 Antwort Letzte Antwort
                    0
                    • manawyrm@chaos.socialM manawyrm@chaos.social

                      @littlefox @volpeon
                      *sigh*
                      OK, you wanted it:

                      AMI MegaRAC (the BMC web UI for servers) has this feature where they allow you to select a .iso image for a CD-ROM in the web console (next to the KVM/VNC viewer).

                      How did they implement the CD-ROM emulation?
                      They open a WebSockets connection to the BMC, emulate a SCSI CD-ROM drive in JavaScript (!) and send raw SCSI packets back&forth via WebSockets, which the BMC then forwards via internal USB to the host system.

                      newline@gts.mechromancer.comN This user is from outside of this forum
                      newline@gts.mechromancer.comN This user is from outside of this forum
                      newline@gts.mechromancer.com
                      schrieb zuletzt editiert von
                      #56

                      @manawyrm @littlefox @volpeon Astonishing, that’s beautiful

                      1 Antwort Letzte Antwort
                      0
                      • manawyrm@chaos.socialM manawyrm@chaos.social

                        @littlefox @volpeon less fortunate: they also fucked up the permissions checks on that websocket in a bunch of BMCs.

                        You can send arbitrary SCSI packets to the host system with this mechanism...
                        Both Linux and Windows really aren't hardened against evil block storage devices.

                        Imagine the rest of the story.

                        lino@chaos.socialL This user is from outside of this forum
                        lino@chaos.socialL This user is from outside of this forum
                        lino@chaos.social
                        schrieb zuletzt editiert von
                        #57

                        @manawyrm @littlefox @volpeon as a former dev implementing drivers for scsi devices, I am loving every aspect of this

                        1 Antwort Letzte Antwort
                        0
                        • manawyrm@chaos.socialM manawyrm@chaos.social

                          @littlefox @volpeon less fortunate: they also fucked up the permissions checks on that websocket in a bunch of BMCs.

                          You can send arbitrary SCSI packets to the host system with this mechanism...
                          Both Linux and Windows really aren't hardened against evil block storage devices.

                          Imagine the rest of the story.

                          1000millimeter@chaos.social1 This user is from outside of this forum
                          1000millimeter@chaos.social1 This user is from outside of this forum
                          1000millimeter@chaos.social
                          schrieb zuletzt editiert von
                          #58

                          @manawyrm @littlefox @volpeon Tell me the rest. I know SCSI only for all kind of storage (HDD, CD, Streamer) and Scanners.

                          littlefox@gotosocial-dev.svc.0x0a.networkL 1 Antwort Letzte Antwort
                          0
                          • 1000millimeter@chaos.social1 1000millimeter@chaos.social

                            @manawyrm @littlefox @volpeon Tell me the rest. I know SCSI only for all kind of storage (HDD, CD, Streamer) and Scanners.

                            littlefox@gotosocial-dev.svc.0x0a.networkL This user is from outside of this forum
                            littlefox@gotosocial-dev.svc.0x0a.networkL This user is from outside of this forum
                            littlefox@gotosocial-dev.svc.0x0a.network
                            schrieb zuletzt editiert von
                            #59

                            @1000millimeter @manawyrm @volpeon sounds like it's rather easy to get buffer overflows and maybe even RCE via crafted malicious SCSI packets and while you usually have a hard time getting them onto an actual SCSI bus, via this websockets thing with broken authentication it's easy

                            manawyrm@chaos.socialM 1 Antwort Letzte Antwort
                            0
                            • littlefox@gotosocial-dev.svc.0x0a.networkL littlefox@gotosocial-dev.svc.0x0a.network

                              @1000millimeter @manawyrm @volpeon sounds like it's rather easy to get buffer overflows and maybe even RCE via crafted malicious SCSI packets and while you usually have a hard time getting them onto an actual SCSI bus, via this websockets thing with broken authentication it's easy

                              manawyrm@chaos.socialM This user is from outside of this forum
                              manawyrm@chaos.socialM This user is from outside of this forum
                              manawyrm@chaos.social
                              schrieb zuletzt editiert von
                              #60

                              @littlefox @1000millimeter @volpeon 💯!

                              littlefox@gotosocial-dev.svc.0x0a.networkL 1 Antwort Letzte Antwort
                              0
                              • manawyrm@chaos.socialM manawyrm@chaos.social

                                @littlefox @1000millimeter @volpeon 💯!

                                littlefox@gotosocial-dev.svc.0x0a.networkL This user is from outside of this forum
                                littlefox@gotosocial-dev.svc.0x0a.networkL This user is from outside of this forum
                                littlefox@gotosocial-dev.svc.0x0a.network
                                schrieb zuletzt editiert von
                                #61

                                @manawyrm @1000millimeter @volpeon I'm clever like a fox x3

                                1 Antwort Letzte Antwort
                                0
                                • skorpy@chaos.socialS skorpy@chaos.social shared this topic
                                Antworten
                                • In einem neuen Thema antworten
                                Anmelden zum Antworten
                                • Älteste zuerst
                                • Neuste zuerst
                                • Meiste Stimmen



                                Copyright (c) 2025 abSpecktrum (@abspecklog@fedimonster.de)

                                Erstellt mit Schlaflosigkeit, Kaffee, Brokkoli & ♥

                                Impressum | Datenschutzerklärung | Nutzungsbedingungen

                                • Anmelden

                                • Du hast noch kein Konto? Registrieren

                                • Anmelden oder registrieren, um zu suchen
                                • Erster Beitrag
                                  Letzter Beitrag
                                0
                                • Home
                                • Aktuell
                                • Tags
                                • Über dieses Forum