8

It is a little bit of a grey area, as everyone interprets it a little differently, but consistent aspects of Secure by Design include: an architecture which has security built in by default a code design and review process which has sufficient checks developers/designers/architects trained in security automated checking continuous monitoring through ...


4

If you were to start a framework from scratch, you would have to catalog and address a wide range of possible vulnerabilities - from input sanitation to cross-site exploits, from authentication (and hashing, salting, password recovery, possibly data encryption) to resource access control. What I mean is, these are things you would need to do in abstract, ...


3

Overall I would recommend that you use hybrid encryption. It's more performant than using "only asymmetric encryption" (public-private-key). Some problems could even occur when you encrypt very long messages with asymmetric encryption. The server should never know the symmetric keys. It's main task is to guarantee the transmission of the messages. 2-...


3

If Alice signs the PDF before sending to Bob, it will look like this: source If Eve changes anything on the PDF, when Bob opens it, it will show something like this: source The signature contains the certificate of the issuer, and if anyone but Alice signs the document in her place, the signature will not be valid, and the PDF reader will show the ...


2

You don't always put in every single possible mitigation you can think of. There is a cost to this. Security is always a compromise between risk, cost, and usability. If you are currently in a position where you need to assess the risk of a particular threat, I suggest you take a look at OWASP's risk rating methodology . If you follow a rigorous and ...


2

I think you dropped an important word in the homework question. "Applying security and usability best practices simultaneously isn't enough to create a secure and usable system." The concept being explored by the question is the intersection of usability and security. The most usable system is not secure, and the most secure system is not usable. If you ...


2

I'm not sure you've quite understood how DGA implementing malware works. It doesn't actually register the domain names - it just generates them, and attempts to contact a subset of them. The malware author can generate the same list, and pick one or two to register, and then the malware may connect to the registered ones in attempted to update - this ...


2

It depends. Objects are Secret If the data being uploaded with those GUID is considered secret, then you do not want users to share the same GUID. For that reason, you want to include another identifier in your primary key to make sure that each customer has its own set of GUIDs. In other words, as Conor mentioned in his comment, every user would be able ...


2

The reason to prompt for the password factor first instead of the second factor tends to be either to prevent harassment of the user or to reduce costs associated with usage of the 2FA service. For example, with Twitter they send a push notification to the user's device for login verification. If it didn't require the user's password first to authenticate ...


2

There is no need to reinvent the wheel or design your own cryptographic protocol that will likely be flawed due to lack of experience. Message Layer Security (MLS) is a trend in the cryptology academy due to the complexity of implementing end-to-end encryption for large scale chat applications (like WhatsApp/Snapchat/Telegram). There are multiple proposals ...


2

I would agree with @Pascal's comment: my first thought was that secure by design would involve having well specified failures modes. Or, more generally, to avoid any unspecified/unexpected behaviour, and ensure both success and failure follow the appropriate paths. Possibly not entirely on-topic, but checking Microsoft's Secure Development Lifecycle (...


2

Voting to close this as it is not a question about security. It is a question about software engineering and architecture: The best place to handle the exception is as close as possible to where the exception occurs - the separation of functionality is all about abstraction - the remote higher levels are separate because they don't know about what is going ...


1

SQLCipher is an option. You need to use threat modelling to really secure your service as there are many ways apart from classic hacking, such as outlined in OWASP Top 10. Particularly SQL injection or CSRF that could also compromise the PII. Encryption prevents someone from stealing the DBMS either logically or physically, it doesn't stop holes in your ...


1

I'd say this falls under security from obscurity which is never a fool proof method of security. Who are you trying to hide the data from? To an end user it makes no difference. Developers and sysadmins would presumably be able to access all databases. If as you say you serve them from different vms or containers, I am a hacker who gained root on your ...


1

The threat isn't defined clearly enough. You said you want to prevent identification of the users and their data, but you didn't say by whom. Your teammates? Your hosting provider? A random attacker? Somebody interested in your data and willing to try a targeted attack? Basically you admitted there's a bottleneck, which is your application and the server ...


1

The entity being able to combine the data later will probably be your "security" bottleneck. You can of course have a relationship: user / \ A B and hope that an attacker only gains access to A or B or potentially even BOTH but somebody somehow needs to have knowledge about how to piece this together again and that's where ...


1

Assuming the platform works similar to WhatsApp or Signal Private Messenger. Viber should only use your phone number as a unique identifier, and no content (contacts or messages) should be stored on the server side. This seems to be confirmed by Viber such that message backups are done through a cloud service; Google Drive or iCloud. Also, Viber uses end-to-...


1

Analog audio cables do not carry any digital information. While some higher-end audio products may have firmware for equalization, sophisticated noise cancelling, or filtering, the firmware cannot be updated over the audio jack. The connections are entirely analog. They usually connect directly to each speaker's voice coil, although they sometimes pass ...


1

"How do headphones work" is not a security question, and could be answered by doing some online research. "Good old wired jack" headphones are entirely analog. Have you ever taken apart some cheap earbuds before? You'll see the wires connect directly to an electromagnet in each speaker. Any vulnerabilities would be limited to physical security; e.g. ...


1

Your proposed solution is not likely to work on multiple fronts. Is it feasible for ICANN to ask all registrars for integration of OTP (One time Password) for domain registrations. I've been dealing with mitigating a particular threat involving abuse of OTPs for over a year now. You don't seem to realize just how many burner phone services there are out ...


1

IDPS can have multiple sensors located in multiple network locations, depending on the information you would like to use to detect anomalies or stop the attacks. You should take a look at NIST SP 800-94, a guide on this exact topic. Architectures for network IDPS are covered in sections 4.2 and 6.1. Passive sensors should have minimal impact on the ...


1

Not far from a matter of taste... More exactly it really depends on too many factors to allow a definitive answer. Just some hints: the sooner is better if you want to be warned against attacks against the edge server or the firewall itself after the edge can be better if you have very high traffic to avoid a bottleneck at the IDS/IPS after the edge can ...


1

Two main competing DRMs are PlayReady (Microsoft) and Widevine (Google), but you won't find any specification. What you can do, just to start understand how it works. Read HDCP2 specification, it's open to public. It's not DRM, but content protection. Then you'll get some ideas. Also read https://w3c.github.io/encrypted-media/ see a block diagram. It's not ...


1

The key part about technology is that it evolves. Sure you may apply the best practices, such as: Keeping up to date on vulnerabilities Ensuring software and OSes are up to date Checking logs for potential intruders/problems Depending on your environment, you may also want to be proactive. This would include: NIDS and HIDS (Network/Host Intrusion ...


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