Hacker Newsnew | past | comments | ask | show | jobs | submit | florian_s's commentslogin

Seems like there's some issues. https://downdetector.com/status/slack/

No feedback yet on the Slack system status dashboard https://status.slack.com/


It was just updated:

> Users may be experiencing trouble with sending messages in Slack. We’re investigating and will let you know as soon as we know more. We appreciate your patience in the meantime.


Status pages are kinda pointless 2023 thanks corporate bureaucracy issue has to be massive if they acknowledge it.


I've built the website quarantaenehelden.org with some friends. It's a platform to connect people from risk groups or those who are under quarantine with those who want to help out.

It's been a pretty wild ride and we've grown a lot since our launch 7 days ago, but building our infra with react + firebase made it pretty smooth in terms of scaling.

Come check it out at github.com/kenodressel/quarantine-hero


Great Idea! The website looks very good and is easy to use. So far, no one is searching for help in my area.


> What I am releasing today is not a full jailbreak with Cydia, just an exploit. Researchers and developers can use it to dump SecureROM, decrypt keybags with AES engine, and demote the device to enable JTAG. You still need additional hardware and software to use JTAG.

> During iOS 12 betas in summer 2018, Apple patched a critical use-after-free vulnerability in iBoot USB code. This vulnerability can only be triggered over USB and requires physical access. It cannot be exploited remotely. I am sure many researchers have seen that patch.


In particular, it sounds like the same or similar bug also existed in the bootrom. So Apple patched iBoot but can't patch the bootrom.


Here is a tweet by the developer with some explanations

https://twitter.com/axi0mX/status/1177542201670168576?s=20

> What I am releasing today is not a full jailbreak with Cydia, just an exploit. Researchers and developers can use it to dump SecureROM, decrypt keybags with AES engine, and demote the device to enable JTAG. You still need additional hardware and software to use JTAG.

> During iOS 12 betas in summer 2018, Apple patched a critical use-after-free vulnerability in iBoot USB code. This vulnerability can only be triggered over USB and requires physical access. It cannot be exploited remotely. I am sure many researchers have seen that patch.


The source code is actually small enough to be posted here

  navigator.getUserMedia = navigator.getUserMedia || 
  navigator.mozGetUserMedia;
  
    window.onload = () => {
      // Create favicon link element
      const favicon = document.createElement('link');
      favicon.rel = 'shortcut icon';
      favicon.type = 'image/png';
      favicon.href = '../../images/favicon.ico';
      document.getElementsByTagName('head') . [0].appendChild(favicon);
      // Create hidden canvas
      const w = 32;
      const h = 32;
      const canvas = document.createElement('canvas');
      canvas.style = 'display: none';
      canvas.width = w;
      canvas.height = h;
      document.body.appendChild(canvas);
      // Grab canvas context
      const ctx = canvas.getContext('2d');
      // Create hidden video element
      const video = document.createElement('video');
      video.style = 'display: none';
      video.width = canvas.width;
      video.height = canvas.height;
      document.body.appendChild(video);
      // Assign user media to video and start loop
      navigator.getUserMedia({video: true}, stream => {
          video.srcObject = stream;
          video.play();
          loop();
      }, () => {});
      // Loop forever
      const loop = () => {
          // Copy video to canvas
          ctx.drawImage(video, 0, 0, canvas.width, canvas.height);
          // Set canvas to favicon
          favicon.setAttribute('href', canvas.toDataURL());
          // Loop
          setTimeout(loop, 100);
      };
  };
From https://github.com/wybiral/code-art/blob/master/projects/tin...


That explains why it does nothing in Safari. Safari doesn't support `navigator.getUserMedia`, as that's deprecated and no longer part of the standard. The standard way to do this is navigator.mediaDevices.getUserMedia


Is there a reason that he sets a timeout of 100? Since this is all local (because of canvas.toDataURL()), can't it just run every 16ms (60 fps) instead of 100? I noticed in the gif that it was super choppy but I kind of assumed there was a technical reason, but I can't think of a reason that there would be a reason to have such a long delay.


The browser doesn't seem to update the image any faster (at least not Chrome on Linux) than it already does. You can try different framerates though, maybe some platforms allow higher frequency?


I tried:

  let left = () => captureBtnLeftFunc($.Event())
  let right = () => captureBtnRightFunc($.Event())
  () => captureBtnRightFunc($.Event())
    setInterval(() => {
      console.log("Guessing");
      if (Math.random() < 0.5) {
          left()
      } else {
          right()
      }
  }, 1000)


The third line is a mispaste btw. You can delete it. ;)

Running this myself, the guesser is correct 46% of the time after 100 iterations.


What was the result? 50%?


Yes, when running over many iterations


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: