HN user

notaddicted

1,235 karma

jhl805atgmail.com

Posts1
Comments372
View on HN

I think this is of endgame for network security, I don't see a way out -- the Sony Rootkit[1] should have been the point where I realized but it is just sinking in for me now since the Snowden NSA leak.

Any network connected computer will be running an OS+Applications which are typically a gigabyte or more. This is produced by companies which are beholden to a nation state, and the companies can be coerced[2] or compelled[3] to use the software against the user. The software is also constantly being probed for vulnerabilities, which can also be exploited by law-enforcement / military [4][5].

So, if you turn on auto-update you have to trust the software maker is not being coerced by someone, or being compelled by a secret court to trojan you. If you don't turn on auto-update you can still get trojaned by any vulnerability. Lose-Lose.

[1] Sony Rootkit: http://en.wikipedia.org/wiki/Sony_BMG_copy_protection_rootki...

[2] Qwest CEO Nacchio's claims: http://www.washingtonpost.com/blogs/the-switch/wp/2013/09/30...

[3] FISA court

[4] German Govt. Trojan from 2011: http://www.spiegel.de/international/germany/the-world-from-b...

[5] FBI's TOR trojan injection: http://www.wired.com/threatlevel/2013/09/freedom-hosting-fbi...

I haven't been following cracking development, is anyone aware of a back of the envelope analysis of how much using a preconceived mnemonic reduces entropy versus random letters? I would expect the math has been done, I think all you need are the 1gram counts for the first letter position[1].

[1] https://www.google.com/fusiontables/DataSource?docid=1DlRnW1...

EDIT: Based on a quick spreadsheet calculation, I think uniform A-Z each letter is 4.7 bits, and a phrase constructed of random english words each letter is 4.1 bits, so maybe not all that bad. https://docs.google.com/spreadsheet/pub?key=0Ar03cGpoaUJ3dHp...

Hilarious quote of Marco Arment from 4 years ago:

When a similar idea circulated back in 2009, Tumblr’s then–lead developer, Marco Arment, summed up the party line in a scornful blog post: “I hope they let me work on some of the many exciting projects at Yahoo … I want to move to California and get stuck in traffic every day on the way to my midlevel engineering job where I sit in a cubicle all day and can’t make any product decisions while working on something nobody will ever see to manage regional ad clickthrough stats tracking.” Thanks, but no thanks.

For the passage in the wikipedia diagram, both of the two paths after the first bifurcation (moving westward) pass through channels less than 24 nautical miles wide. Canada would need to build observation towers but it could be defended with "cannons" e.g. the M777.

I've got no direct knowledge of this in particular but I've heard that the mouse movement is one of the highest level interrupts in the OS and won't be preempted -- so the number is probably very small but the response by the application when you click may be longer. Also, this is why sometimes you'll see the entire computer locked up except for the mouse movement.

Carrying a burner is itself also suspicious -- the safest course it to be as normal as possible which means having a regular computer/phone with some stuff on it, or nothing. Also, it isn't sufficient to focus the the border policies for re-entry to your own country, you also have to consider every country you would travel to, all of which have their own laws, all of which can change at any moment, even while you are in transit. Carrying around "sensitive" data, along with the password (which is in your brain, thus you are carrying it) is just overall a really bad idea.

[dead] 13 years ago

Same. Chrome url box search isn't working. I just used bing unsarcastically.

EDIT: canada as well.... Aaaaand it's back.

As a matter of general principle, I strenuously object to any computer I own sending out information about my behavior without my intent or permission. The only egregious offence of the read receipt is that I don't control it.

As long as we're bashing, it could easily be written loopless like so:

    basename -s .jpg -a *jpg | 
      xargs -I{} convert "{}.jpg" \
       -resize "900x" -unsharp 2x0.5+0.5+0 -quality 98 "{}_s.jpg"
EDIT: weird line breaking is to prevent sidescroll box

Yup. For command line work I usually don't mind but for text editing I find any perceptible latency incredibly grating. SSHFS is another solution that doesn't need anything special installed on the remote end. It's a pity Plan9 didn't take off, I think it hides this kind of pointless drudgery.

I'm not a grandmaster by any means, but these are things that I focus on:

1. Aggressively avoid techniques and abstractions that have produced bugs in the past. The "backwards conditional" is an example of this, in languages like C that will accept x = 0 as a conditional, it is safer to do 0 == x in an if statement in case you mistype. Mutability trips me up sometimes, so I try to never re-assign a variable. I keep links to the source code of key libraries in my bookmarks bar so I never have the guess how something actually works. Static analysis tools, and bug prediction tools [1] are two steps I haven't taken.

2. Seek out code written by experts and inspect it [2]. If I'm considering using a new language or library one of the first things I do is to search for large scale OSS projects. For a new language looking at some of the popular 3rd party libraries can be really illuminating. Especially if you're already familiar with the problem space.

3. two words: learn to fuckin' type.

4. Get familiar with what the history researchers call the Primary Sources. Not just the actual source code but the proposals, the specifications, and the research reports that are written by the people who conceived the tools that you are using.

[1] http://google-engtools.blogspot.ca/2011/12/bug-prediction-at...

[2] (EDIT) According to Paul Allen, in high school Bill Gates actually went dumpster diving for source code: http://www.businessinsider.com/10-things-you-didnt-know-abou...

I think the aversion is because the way that they line up visually is the opposite of the way that they are matched by the parser. I think everyone needs a dose of LISP to get over any problems they have with any frequency or arrangement of brackets/parens/braces. Anyway, having a function that compares two structs and returns 0 or 1 with a printf out to stderr is just gross in my opinion.

Wget is good if you have the right options (http://psung.blogspot.com/2008/06/using-wget-or-curl-to-down...).

For some audio/video sites there is youtube-dl, there is a list of sites it handles here: http://rg3.github.io/youtube-dl/documentation.html .

EDIT: there is a writeup about that is partially based on wget here: http://www.gwern.net/Archiving%20URLs#local-caching (also includes extracting URL from firefox history)

EDIT2: and if you're really desperate you could always use tcpdump/mitmdump and something like this: http://justniffer.sourceforge.net/#!/justniffer_grab_http_tr...