Tag Info

Hot answers tagged

11

If you're looking for non-language/framework specific stuff, you could start with a pair of books on security engineering Security Engineering by Ross Anderson Engineering Security by Peter Gutmann Usefully both are available for free online. If you're looking for more platform specific stuff, if you haven't already I'd recommend looking through ...


11

ARM processors are a 32-bit architecture, and are relatively inefficient at doing 64-bit arithmetic operations: when they must compute a 64-bit addition, they must do so with two 32-bit additions and some carry propagation. This is somehow equivalent to x86 used in 32-bit mode (except that recent enough x86 have access to SSE2 opcodes, which offer ...


9

Most of these operations are "trivial": they replace combinations of two or three existing opcodes. For instance, the BLSR type of instruction is, as specified in the page you link to, equivalent to a subtraction followed by a bitwise AND. This could already be done. Extra operations don't harm, and compilers will benefit from them, and, undoubtly, some ...


8

The biggest risk in any language is to have developers who do not master the said language. Secure development requires thinking of all "corner cases" and it does not work unless the developer knows what he does at all points. A competent C programmer who does not know Java will do more secure code in C than in Java (and vice versa). A case can be made that ...


5

If you know what you're doing, using WCF isn't difficult. If you know what you're doing, using WCF with an STS isn't terribly difficult. If you don't know what you're doing it's all terribly difficult. Who am I kidding, it's WCF, so it's all difficult. :) Generally speaking your architecture falls into the federated trust category, as you're using the STS ...


5

To some extent, all the Web/Cloud hype is about a new model (or, maybe, an old model with a new layer of paint). With "apps", applications are quite contained and isolated from each other. With the "apps" model as is employed on iOS / Android system, a further twist is applied in that only "allowed" apps can be installed. The user can still choose which apps ...


4

A few things from a Secure OS: https://en.wikipedia.org/wiki/OpenBSD_security_features Exploit Mitigation Techniques: an Update After 10 Years: http://www.openbsd.org/papers/ru13-deraadt/ http://tech.yandex.com/events/ruBSD/2013/talks/103/ http://www.openbsd.org/papers/ or: on Youtube: "passwords^12"


4

My gut feeling is that the MVC model, or, for that matter, any cleanly defined model, tends to decrease security risks. Although things are not that clear. From a very general point of view, security issues are a special kind of bug, on the implementation or on the structure (possibly the specification). Knowledge dilution is a huge risk factor: bugs happen ...


4

You might want to read this http://www.x86-64.org/documentation/abi.pdf Essentially x86 and x64 are different in the way that they work. The new ABI describes the new ways in which it does with Leaf and Non Leaf calls, exception handling and unwinding. Since the purpose is to essentially overflow - you need to understand the new ABI how its working and ...


3

The greatest problems of today's desktop PC environment: allowing arbitrary applications access to all the data that a user has; giving applications unlimited access to the Internet and sensitive hardware (mike, the camera, GPS chip, Bluetooth etc.); proliferation of idiot users; emergence of a business culture where stealing and selling users' personal ...


3

First, there is something weird with your example. Current processors which implement the amd64 mode (aka x86_64 aka x64 aka a bunch of other names) don't use the full 64 bits of address registers. They use 48-bit addresses, and make it mandatory that bits 48 to 63 are identical (as if it was "sign extension"). Thus, an address like 7fffffff_ff480a90 will ...


3

What I have done in the past when porting something between languages or working on something that will need to work really closely with a different language is to look up specific language issues on the OWASP website. C / C++ is: https://www.owasp.org/index.php/Category:C Java is: https://www.owasp.org/index.php/Category:Java Hopefully that helps as a ...


2

On first glance, it appears to be ingenious and a double layer of security. On further thought, it is quite similar to tokenization of credit cards, with 1 pro and 1 con as opposed to tokenization: pro - there are two layers of encryption in two separate systems con - full credit card numbers, although encrypted, are still stored in the business system ...


2

Since your DMZ host is basically a firewall, the design you described does not make sense, you are completely right. This is no better than one-interface firewall (which is the weakest possible architecture). When using a 2-interface firewall, the two interfaces have be on different networks - e.g. "internet" and the DMZ or the DMZ and the intranet. At the ...


2

Let's look at them in turn. Remote Access. Secure enough if you do it properly, usually not considered because it is the most expensive option and it really has no advantages over other options if you aren't doing anything fancy. Native client with secure networking built in. Secure enough if you do it properly, but it requires you to write security ...


2

In slightly different words to Thomas: You do potentially increase the attack surface any time you increase the number of devices, layers, roles, developers purely as you have more variables. That said, you do at least have a framework which should ensure that security issues, including those brought by a more complex structure, are identified and ...


2

If you're looking for more specific application security architecture guidance, I'd be inclined to look at OWASP materials as they're more focused in this area. Project like the OWASP Developer Guide, OWASP Application Security Verification Standard or OWASP Software Assurance Maturity Model could be of use in this context


2

Ideally the security of the system shouldn't be dependent on not knowing the entire layout of the system, however, it does make things more difficult. Certainly, anything like honeypots should be removed or altered on the diagrams and you should remove key details wherever possible so long as you can still get across the necessary information. Exactly what ...


2

This is going to vary depending on your specific situation, policies you are trying to enforce, and regulatory compliance requirements. Generally, a web-app has a front-end and a back end. The front-end is responsible for handling user traffic, display/presentation of data, and authentication. The back-end is usually a database of some sort that handles ...


1

As the other answer says, a complete system re-installation gets rid of common malware that's located in boot sectors or on-disk file systems. It is possible to install malware in device firmware, so that it will reinfect the OS even after re-installation. You would need to restore the original firmware or remove/replace the device (and re-install the OS) ...


1

WAN or LAN? would exposing just 80 or 443 still compromise the security? Yes it would - there could be numerous vulnerabilities in the web app that an attacker could use to gain control of it. Can a hacker push bots or take control of the server and in turn reach the internal network? Yes, once they have control of the web server they might be ...


1

You're actually best off using an existing product. There's plenty of risk in rolling your own crypto storage system. So many ways to make an error in security or data integrity it's not funny. One commercial product off the top of my head is StorageSecure by Safenet. They specialize in this stuff. There are also quite a few academic and open source projects ...


1

In addition to the other answers here, I would have a look at the following. Open Security Architecture CSA CCSK Study


1

The best book for learning how to protect web apps is the Web Application Hackers Handbook. For a general PC based point of view, Hacking: The Art of Exploitation is the best.


1

I am having a hard time understanding your question, but let me attempt an answer. It sounds like you have two groups of users: Internal Web App Users External API users It also sounds like these users need different levels of access to the same database. If the above is true then I would suggest the following structure: Web server hosting the web ...


1

For a web application, an acceptable solution for secure communication is HTTPS (tranport level). It is only acceptable if it provides adequate security for the application. It might be the case if you're talking about a control channel but it might be insufficient if you're exchanging messages (these are just examples, there are many other possible ...


1

I think the new MULX instruction will help a bit, since it offers 3 operands. This might eliminate some MOVs and speed up tight loops. The next Intel processor Broadwell will offer ADCX and ADOX to enable two independent ADD loops. This has been designed specifically with crypto in mind, see ...


1

Sounds over complicated and brittle - maintaining this is going to be a pain. How about this for a potential hole: "the key server is called via https and requests a key" If the https request to the key server is protected using a weak (e.g. self signed) certificate, the key exchange connection might be spoofed (e.g. by a MITM attack that returns a ...


1

The two-interface (aka two-tiered firewall) architecture is all about defense in depth for your internal network. The dirty and clean scenario makes traffic go through 2 different sets of firewalls. The internet-facing firewalls protect your DMZ against external threats, while your internal firewalls protect your internal network from potentially compromised ...


1

Exploit counting is not helpful here, because the numbers are skewed by non-targetted attacks. If a bad guy doesn't care what machines she gets control of, then she will target Windows on x86, because there's a billion more of those out there than BeOS on PDP-11. Since you are primarily defending against targeted attacks, your focus should be on hardening ...



Only top voted, non community-wiki answers of a minimum length are eligible