Slashdot Mirror


Remote Booting Using a Wireless Network Card?

Eboneye asks: "I have been assigned to a project to figure out how to make a diskless portable workstation (laptop) boot through a wireless connection. The idea is to have a stateless client that stores no local data (for security purposes). The only totally network boot stuff I have found uses PXE extensions. I have seen nothing like this in a PCMCIA card, much less a -wireless- PCMCIA card. For the proof of concept, we'll boot from a read only device, but of course during the setup phase use media to create a boot image on a boot server. I am currently looking at a couple different products that will provide a booting service. Ultimately, the goal is a to have a wireless tablet that can use different PCMCIA wireless adapters to connect to different LANs. Because of the specialized concerns of tablet PCs the solution has to be Windows compatible (sorry, Linux). Has anyone seen or worked on remote boot through wireless? Any experiences, gotchas, or suggestions for ways to solve this are welcome."

14 of 28 comments (clear)

  1. Don't bother by duffbeer703 · · Score: 5, Insightful

    You obviously haven't put enough thought into this.

    A scheme like this, where you have to wait for a boot image to traverse a network, kinda defeats the purpose of tablet pcs.

    If you are doing this for security, use applications that utilize strong encyrption. Playing games like this at the OS level is not the appropriate place to do this.

    --
    Conformity is the jailer of freedom and enemy of growth. -JFK
  2. Other read-only options by Ratbert42 · · Score: 2

    There are other read-only options. A boot floppy (not likely today, especially in a tablet), a bootable image on CD-R (hard to create, apparently can't work with NT/2000/XP but can work with 95/98/Me and of course, Linux/BSD), a hard drive rigged to be read-only, or a flash/rom memory disk.

  3. encrypt the drive by linuxbert · · Score: 2

    There are several products out there that will encrypt the contents of the entire hdd, and require authentication to boot and decrypt the device.
    if the unit goes missing, all the person who finds it can do is replace the drive, cause they woint get squat off the secured one.

    I beleive 1 or 2 of these products are fips 140 certified

  4. let me get this straight... by kevin+lyda · · Score: 4, Offtopic

    you want to boot off a wireless card on a windows portable computer for security reasons?

    well, i suppose you didn't say you wanted good/high security. "security reasons" could mean "we want crap, swiss cheese-like insecurity."

    not sure of an answer there, but good luck with that.

    --
    US Citizen living abroad? Register to vote!
    1. Re:let me get this straight... by kevin+lyda · · Score: 3, Funny

      oh come on. it's like he's asking for a lighting solution with an even output over the visible spectrum for his clear glass fountain that uses water with a high concentration of bleach "for color reasons."

      could you honestly call a system secure that contains wireless network nodes running windows? and you have to answer that question without hallucinagenic drugs or resorting to philosophic ponderings on what words/time/reality mean.

      --
      US Citizen living abroad? Register to vote!
  5. Why make it bootable? by sQuEeDeN · · Score: 3, Interesting

    It seems like it would be waaaaay easier to do thin clients, like our friends in Largo, Florida. Remote booting brings a host of problems:

    First: security. Any authentication to get the boot image would, natrually, have to happen before the image was downloaded, so the Client would have to be able to haddle any encryption protocols before anything useful even happened. Unless you have a powerful system operating pre-boot, that is gonna be really insecure, especially over wireless, comprende? Imagine if the boot image was intercepted? I can't think of how that would be good.


    Also, the simple fact that consolidation is typically more economic. One Big Server (could be running linux with crossover[whoring]) is typically easier to maintain than a remo.te, full-fledged laptop. So, read the story on Largo (about the thin clients, rather than the Linux bit) and think about it--decide if you really, really have to make it bootable--be sure you can't or are unwilling to go thin.

    --

    Recursive (adj.): see 'Recursive'
  6. Serious security issues with 802.11b by TheSHAD0W · · Score: 5, Insightful

    I strongly recommend you do NOT attempt this using the 802.11b protocol.

    Let's assume you set up your wireless network PROPERLY; it has a gateway machine which restricts communications within your internal network, with that gateway being the only machine accessible to your wireless network. Your intent would be for your wireless machines to have nothing accessible, except to that gateway. Your remote machines would use an encrypted tunnel to log onto that gateway.

    By remote-booting, you've destroyed that paradigm. A remotely-booting client would have no resources able to establish that encrypted tunnel, so you would not be able to boot through that gateway. Okay, fine, so let's say you put the boot image on the gateway machine outside the tunnel, or on a second server provided just for that purpose.

    Now you have a brand new security hole... First off, an attacker doesn't need any security codes to grab a copy of your boot image; and that boot image, in order to establish your encrypted tunnels, would give the attacker, if not direct access to the gateway, at least valuable information narrowing down your security window. Having individual passwords users have to enter to log on might help things, but doesn't close the hole...

    Since the link the booting PC would by definition be unencrypted, an attacker could spoof the wireless gateway for the period of time during when a wireless machine was booting, substituting a modified copy of the boot image. The result would be an insecure client, in which, if a password is entered, it could be forwarded to the attacker; or that machine might act as its own gateway, from the attacker through the insecure machine onto your network.

    1. Re:Serious security issues with 802.11b by addaon · · Score: 5, Interesting

      Precisely. You need some physical media for the encryption key, unless you're doing this entirely unencrypted, a decidedly bad idea. The way I would do this is to stick a 802.11 card, permanently, in each tablet, and issue people a usbkey storage device (www.usbkeydrive.com, for instance... pricier ones available). You could either give this to each employee, or have them check them out the same way they would have checked out a pc card under your plan. These keys are bootable in most machines (the advantage over using a pc card hard drive, which may or may not be bootable depending on your hardware); what you want to do is put on each a small bootable OS, the information necessary to form your VPN or however you're dealing with security, and nothing else. (At this point, you'll wish you could use linux, as it will require a smaller key, and be cheaper. But you'll survive with windows). Of course, there are still problems with this; you're not truly remote booting, just using a read-only boot disk. But it may be sufficient.

      The next step up in complexity, as well as power, is to again use a usbkey to boot, but boot into linux. Have it boot from the read-only keychain, use the (unique) information on each key to establish the connection, etc, and then start X-Windows and rdesktop (linux remote desktop client), connecting to a remote windows server. It would be quite easy to secure the tablet so that the linux distribution is secure, and again you have a unique key to secure the connection. From the users point of view, they're working on a local windows machine, although from your point of view they're remotely logged on to another box.

      These are just the first two ideas that came to mind. As the parent said, though, you need some kind of local storage for encrypted booting. I highly recommend a usbkey from one brand or another, as they're relatively cheap, absurdly robust, and quite convenient. And once you're allowing even a bit of storage, make it a useful amount, and boot locally off a secured disk, rather than trying to get the hardware to do something it's not supposed to do. Remote booting, keep in mind, just uses some ROM code to boot the computer and then moves control elsewhere. I'm pretty sure you won't find a system ROM or an 802.11 ROM that does what you need; instead, you're going to have to attach a boot ROM of some kind, and a usb key is about as good as it gets.

      Oh, one final point, to make this make sense. Most of the usb keys have a read-only switch that can be latched, which makes them appear as read-only mass storage devices to the OS. Once you write the key, you can physically remove the switch (I've done this to several usb keys) to make it quite inconvenient to write to them again. It is possible to write to them either by opening them up and reconnecting the switch, or by writing a custom driver which ignores that the device is read-only (it turns out that, even in read-only mode, the keys I've worked with do honor writes), but neither of these methods is very convenient. It depends just how much security you need.

      --

      I've had this sig for three days.
    2. Re:Serious security issues with 802.11b by TheSHAD0W · · Score: 2

      You're right, I'm sorry... I should not have said the system was unencrypted, but that the system had unacceptably weak encryption.

      But you say it yourself -- a higher level crypto protocol wouldn't be supported in hardware. It also can't be supported in software, because during boot there IS no software loaded. (Unless your system's BIOS supports such things, which I doubt.) So therefore, at boot time, this operation would be unacceptably insecure.

  7. Consider your security model by Piquan · · Score: 4, Informative
    I have been assigned to a project to figure out how to make a diskless portable workstation (laptop) boot through a wireless connection. The idea is to have a stateless client that stores no local data (for security purposes).

    What's the model here? Does somebody walk into a secure facility, pick one up, use it to do some eyes-only investigation, and return it when they leave? What are you trying to secure against? Tampering, or somebody walking off with the data? The solution often depends on the threat model.

    If your threat model is to prevent against tampering, then you may be better off exploring other options. For example, have you considered read-only media? How about having the tablets re-ghosted when they're returned, before they're re-issued? That can be done in an automated fashion without a whole lot of hassle-- primarily through the PXE extensions you've already investigated, combined with hardware at the docking stations.

    If you're trying to keep people from walking off with data, then diskless isn't going to be the way to go. A lot of data gets left in RAM after power is removed. (See Gutman, P., "Secure Deletion of Data from Magnetic and Solid-State Memory," Proceedings of the Sixth USENIX Security Symposium, July 1996, or do a Google search for "RAM remanence".) You may have seen some computers-- notably the old Macs-- that would power up with their last display still on the screen!

    Also, if you have a totally stateless box driven by a wireless LAN, then some shmuck can easily sit in a van a half-mile away with his laptop and find out everything you're wanting to keep private. Stateless booting means that your encryption has to be bootstrapped! A lot of naive ways of doing this exist, such as sending a root filesystem with encryption keys already on it. Some of these open themselves up to passive attacks. Even more sophisticated techniques, such as DH, still are totally vulnerable to active attacks (like the guy in the van pretending to be one of your tablets asking to be bootstrapped).

    I seriously suggest you rethink your security model. The Windows compatibility is a big problem. It keeps some of the latest crypto filesystems, etc. from becoming part of the solution. Something based on VNC, Citrix, Windows Terminal Server, etc. may be helpful: make sure the computer doesn't know more than it's telling the visitor. Also, these small programs will tend to re-use the same part of memory repeatedly, making RAM remanence slightly less of an issue.

  8. Remote boot & Windows don't mix by _LORAX_ · · Score: 2

    Windows 98 first edition was the last version of Windows that was able to "remote boot" off of a server without a local harddrive and even that was amazingly difficult to setup. The only way you will get "Windows" is through terminal server.

    Good news is that linux does support a vast array of windows applications and "Work alike" alternatives.

  9. You need a CardBus card, not PCCard/PCMCIA by AdamBa · · Score: 4, Informative
    I actually worked on remote install of Windows 2000 when I was at Microsoft. Remote install meant you only booted setup off the network, then installed to a local hard drive. But it's not a huge step from there to remote boot, although Windows 2000 doesn't support that (don't know about XP and future products).

    In terms of PXE hardware, you probably want a CardBus card, not a PCCard (which is what PCMCIA was renamed to). PCCard is 16 bit data path and cards are identified by a 64-character text string or something usly like that...PCCard is 32 bit data path and devices appear like PCI devices and are identified like PCI devices (I forget the details, but it's something like a 16-bit manufacturer ID and a 16-bit ID for that particular type of card).

    Back in early 2000 or so, we had a PXE-compliant CardBus network adapter (not wireless, but that shouldn't matter to the software level) in our lab that would do remote install of Windows 2000. In fact we had to make zero changes to the code, it worked like any PXE-compliant PCI network card. So if you could find a PXE-compliant CardBus wireless network adapter, you should be able to do a remote install of Windows 2000/XP on it today. Of course this requires setting up a Windows server to hand out the images, etc. which there is undoubtedly a Microsoft white paper on somewhere.

    - adam

  10. Try linux bios... by tchuladdiass · · Score: 2

    Assuming your tablet pc's have a supported chipset, you can replace the system bios using the "linux bios" project. This replaces the system bios with a modified linux boot image. It can in turn chain-load either another linux distribution, or load another OS such as win2k. The advantage of this is that you can embed a public key in the bios image that would then be used to authenticate a signed boot image that would be downloaded to ram via a utility under linux. This will fix man-in-the-middle attacks upon bootup. And, you can configure the boot image to do whatever you need.

  11. I have had a Linux tablet PC for two years. by SHEENmaster · · Score: 2

    It works fine; 0 complaints from me.

    Considering how much space winshit takes up, and the innability for specialised projects to modify it you are faced with a serious challenge.

    If I had to do it, I would install Linux on the tablet pc with an svgalib client for VNC or terminal server. It will enforce "on premisis" use. VNC supports SSL if you need security.

    Make sure to use every available security option and see if you can get modified 802.11a cards "shifted" to another frequency. It won't be perfect, but it will be more effective than WEP.

    --
    You can't judge a book by the way it wears its hair.