• 1 Post
  • 55 Comments
Joined 1 year ago
cake
Cake day: June 8th, 2023

help-circle






  • … but there is a way, and it has been proven.

    One of the more memorable physics classes I’ve had went into the history of discoveries that led to our understanding of relativity. The relevant story here, starts with how sound travels though air.

    Let’s say you’re standing at the bottom of a building shouting to your friend peeking out a window on the 5th floor. On a calm day, that friend will hear you at pretty much the same time as someone standing the same distance away, but on the street. However, if it’s windy, the wind pushes around the air through which the sound of your voice is traveling, the friend up in the window will have a slight delay in receiving that sound. This can of course be verified with more scientific rigor, like a sound sent in two perpendicular directions activating a light.

    Scientist at the time thought that light, like sound, must travel though some medium, and they called this theoretical medium the Aether. Since this medium is not locked to Earth, they figured they must be capable of detecting movement of this medium, an Aether wind, if you will. If somehow the movement of this medium caused the speed of light in one direction to be faster than another due to the movement of this medium, measuring the speed in two directions perpendicular to each other would reveal that difference. After a series of experiments of increasing distances and measurement sensitivities (think mirrors on mountain tops to measure the time for a laser beam to reflect), no change in the speed of light based on direction was found.

    Please enjoy this wikipedia hole: https://en.m.wikipedia.org/wiki/Michelson–Morley_experiment , and please consider a bit of caution before you refer to things as facts in the future!



  • Not sure what you’re doing, but if we’re talking about a bog standard service backed by a db, I don’t think having automated reverts of that data is the best idea. you might lose something! That said, triggering a snapshot of your db as a step before deployment is a pretty reasonable idea.

    Reverting a service back to a previous version should be straightforward enough, and any dedicated ci/cd tool should have an API to get you information from the last successful deploy, whether that is the actual artifact you’re deploying, or a reference to a registry.

    As you’re probably entirely unsurprised by, there are a ton of ways to skin this cat. you might consider investing in preventative measures, testing your data migration in a lower environment, splitting out db change commits from service logic commits, doing some sort of blue/green or canary deployment.

    I get fairly nerd-sniped when it comes to build pipelines so happy to talk more concretely if you’d like to provide some more details!


  • I do this with my xreal glasses sometimes when washing dishes or whatever. Connected to phone in my pocket with a desktop mode, set a black wallpaper, and drag the video into a corner.

    It’s nice for situations like that, where you’re doing something with your hands and can’t reasonably place a screen in a way where you wouldn’t have to constantly strain your neck to look at it.








  • (obligatory I’m not a network surgeon this is likely not perfectly correct)

    The article mentions network interfaces, DHCP and gateways so real quick: a network interface usually represents a physical connection to a network, like an Ethernet port or a WiFi card. DHCP is a protocol that auto configured network routes and addresses once a physical connection is established, like when you jack in via an ethernet cable, it tells you the IP address you should go by, the range of IP address on the network you’ve connected to, where you can resolve domain names to IP addresses. It also tells you the address of a default gateway to route traffic to, if you’re trying to reach something outside of this network.

    You can have more than one set of this configuration. Your wired network might tell you that your an address is 10.0.0.34, anything that starts with 10.0.0. is local, and to talk to 10.0.0.254 if you’re trying to get to anything else. If at the same time you also connect to a wireless network, that might tell you that your address is 192.168.0.69, 192.168.0.* is your local network, and 192.168.0.254 is your gateway out. Now your computer wants to talk to 4.2.2.2. Should it use the wireless interface and go via 192.168.0.254? or the wired one and use 10.0.0.254? Your os has a routing table that includes both of those routes, and based on the precedence of the entries in it, it’ll pick one.

    VPN software usually works by creating a network interface on your computer, similar to an interface to a WiFi card, but virtual. It then asks the OS to route all network traffic, through the new interface it created. Except of course traffic from the VPN software, because that still needs to get out to the VPN provider (let’s say, at 1.3.3.7) via real Internet.

    So if you’re following along at home, your routing table at this point might look like this:

    • traffic to 1.3.3.7 should go to 10.0.0.254 via the wired interface
    • all traffic should go to the VPN interface
    • traffic to 10.0.0.* should go to the wired interface
    • all traffic should go to 10.0.0.254 via the wired interface
    • traffic to 192.168.0.* should go to the wireless interface
    • all traffic should go to 192.168.0.254 via the wireless interface

    whenever your os wants to send network packets, it’ll go down this list of rules until one applies. With that VPN turned on, most of the time, only those two first rules will ever apply.

    If I’m reading the article correctly, what this attack does, is run a DHCP server, that when handing out routing rules, will send one with a flag that causes, for example, the last two rules to be placed at the top of the list instead of the bottom. Your VPN will still be on, the configuration it’s requested the OS to make would still be in place, and yet all your traffic will be routed out to this insecure wireless network that’s somehow set itself as the priority route over anything else.