Quick access to articles on this page:
- - December 2014 - This blog now has a rss feed
- - December 2014 - OneRNG
- - December 2014 - Awesome nmap cheatsheet
- - December 2014 - Git client vulnerability
- - December 2014 - Last exam of my life
- - December 2014 - [facebook bug bounty] Reading local files from facebook
- - December 2014 - Bruce Schneier
- - December 2014 - What might have been going on at Mtgox
more on the next page...
OneRNG posted December 2014
I like how people make an extreme effort to create "sure" source of random numbers.
OneRNG has released a new usb source. Everything is opensource (open hardware, open software), you can even create your own by following instructions on their websites.
OneRNG collects entropy from an avalanche diode circuit, and from a channel-hopping RF receiver. It even has a “tinfoil hat” to prevent RF interference — you can remove the hat in order to visually verify the components being used.
Now I'm wondering who is using that and for whatcomment on this story
Awesome nmap cheatsheet posted December 2014
High on Coffee has released a cheatsheet on nmap. Full of examples and tips. You can find it here
EDIT: There are also Linux Commands for Penetration Testers there. The blog seems pretty new and it already has really good content :)comment on this story
Git client vulnerability posted December 2014
A new vulnerability has been discovered on the git client. See Github's announcement
Repositories hosted on github.com cannot contain any of the malicious trees that trigger the vulnerability because we now verify and block these trees on push.
The official announcement and the updated and fixed version of git is here.
We used to allow committing a path ".Git/config" with Git that is running on a case sensitive filesystem, but an attempt to check out such a path with Git that runs on a case insensitive filesystem would have clobbered ".git/config", which is definitely not what the user would have expected. Git now prevents you from tracking a path with ".Git" (in any case combination) as a path component.
More information about the vulnerability here
comment on this story
Git maintains various meta-information for its repository in files in .git/ directory located at the root of the working tree. The system does not allow a file in that directory (e.g. .git/config) to be committed in the history of the project, or checked out to the working tree from the project. Otherwise, an unsuspecting user can run git pull from an innocuous-looking-but-malicious repository and have the meta-information in her repository overwritten, or executable hooks installed by the owner of that repository she pulled from (i.e. an attacker).
Last exam of my life posted December 2014
And I just passed the last exam of this semester, which should be the last exam of my life =) Now is time to take a few days to relax and eat nice food because it will soon be christmas ^^ (or holidays, as I heard some american say to avoid saying christmas).
A few interesting things I had to do during my exams these last few days:
- Simple Power Analysis (SPA). Guess what algorithm is used from smartcards' traces and calculate the exponent if it's a binary exponentiation
In the picture you can see two patterns, "1" is represented by two operations in the algorithm, and one of them is squaring which happens also when you have a "0" in your exponent's binary representation. So following the computations revealed by the power trace you can guess the binary representation of the exponent.
I had to read this article explaining two malloc implementations and their vulnerabilities. GNU Lib C (used in Linux) and System V AT&T (used in Solaris, IRIX). I knew the double chained list system but System V uses a different approach: binary tree and also a
realfree function that completes the
[facebook bug bounty] Reading local files from facebook posted December 2014
Josip Franjković found a vulnerability in one of the file uploader of facebook.
basically he uploaded a zipped file of a symbolic link to
ln -s /etc/passwd link zip --symlinks test.zip link
And since uploaders are always a mess to secure. Facebook just replied displaying the content of what he thought was the unzipped resume.comment on this story
Bruce Schneier posted December 2014
Schneier just gave a talk on security at Qcon in San Francisco. It was recorded and you can watch that here.
It's a high level talk that brings a lot of interesting points, like how much do we trust our devices, how companies are often doing very bad things in term of security, ...
comment on this story
Prospect theory is a behavioral economic theory that describes the way people choose between probabilistic alternatives that involve risk, where the probabilities of outcomes are known. The theory states that people make decisions based on the potential value of losses and gains rather than the final outcome, and that people evaluate these losses and gains using certain heuristics.
What might have been going on at Mtgox posted December 2014
I ran into an old post from nullc (Greg Maxwell one of the core Bitcoin developer) and it's interesting how small details might have been the fall of Mtgox.
First. You can't spend bitcoins you just mined.
Freshly generated Bitcoins (from mining) can not be spend until they are at least 100 blocks deep in the blockchain. This prevents the funds from vanishing forever if the chain reorgs.
see chain reorganization.
The term "blockchain reorganization" is used to refer to the situation where a client discovers a new difficultywise-longest well-formed blockchain which excludes one or more blocks that the client previously thought were part of the difficultywise-longest well-formed blockchain. These excluded blocks become orphans.
Chain reorganization is a client-local phenomenon; the entire bitcoin network doesn't "reorganize" simultaneously.
see orphan block.
An orphan block is a well-formed block which is no longer part of the difficultywise-longest well-formed blockchain.
The block reward in an orphaned block is no longer spendable on the difficultywise-longest well-formed blockchain; therefore whoever mined that block does not actually get the reward (or the transaction fees). This phenomenon must be taken into account by mining pools that use any payout strategy other than "proportional".
And here is a misunderstand of the padding of ECDSA (Elliptic Curve version of the Signature Scheme DSA) that might have be the problem:
comment on this story
This issue arises from several sources, one of them being OpenSSL's willingness to accept and make sense of signatures with invalid encodings. A normal ECDSA signature encodes two large integers, the encoding isn't constant length— if there are leading zeros you are supposed to drop them.
It's easy to write software that assumes the signature will be a constant length and then leave extra leading zeros in them.