📔
eCPPTv2 Notes
  • About
  • 1-System Security
    • Architecture Fundamentals
      • Security Implementations
      • References
    • Assembler Debuggers and Tool Arsenal
      • Compiler
      • NASM
      • Tool Arsenal
      • References
    • Buffer Overflow
      • Finding Buffer Overflows
      • Exploiting Buffer Overflow
      • Security Implementations
      • References
    • Shellcoding
      • Types of Shellcode
      • Encoding of Shellcode
      • Debugging a Shellcode
      • Creating our First Shellcode
      • More Advanced Shellcode
      • Shellcode and Payload Generators
      • References
    • Cryptography and Password Cracking
      • Cryptography Hash Function
      • Public Key Infrastructure
      • Pretty Good Privacy (PGP)
      • Secure Shell (SSH)
      • Cryptographic Attack
      • Security Pitfalls
      • Windows 2000/XP/2k3/Vista/7/8 Passwords
      • References
    • MALWARE
      • Techniques Used by Malware
      • How Malware Spreads
      • Samples
      • References
  • 2-Network Security
    • Information Gathering
      • Search Engines
      • Social Media
      • Infrastructures
      • Tools
      • References
    • Scanning
      • Detect Live Hosts and Ports
      • Service and OS detection
      • Firewall/IDS Evasion
      • References
    • Enumeration
      • NetBIOS
      • SNMP
      • References
    • Sniffing and MitM Attacks
      • What is Sniffing
      • Sniffing in Action
      • Basic of ARP
      • Sniffing Tools
      • Man in the Middle Attacks
      • Attacking Tools
      • Intercepting SSL Traffic
      • References
    • Exploitation
      • Vulnerability Assessment
      • Low Hanging Fruits
      • Exploitation
      • References
    • Post Exploitation
      • Privilege Escalation and Maintaining Access
      • Pillaging / Data Harvesting
      • Mapping the internal network
      • Exploitation through Pivoting
      • References
    • Anonymity
      • Browsing Anonymously
      • Tunneling for Anonymity
      • References
    • Social Engineering
      • Types of Social Engineering
      • Samples of Social Engineering Attacks
      • Pretexting Samples
      • Tools
      • References
  • 3-Powershell for Pentesters
    • Introduction
      • Why PowerShell ?
      • References
    • PowerShell Fundamentals
      • Cmdlets
      • Modules
      • Scripts
      • Objects
      • References
    • Offensive PowerShell
      • Downloading & Execution
      • Obfuscation
      • Information Gathering & Recon
      • Post-Exploitation With Powershell
      • References
Powered by GitBook
On this page

Was this helpful?

  1. 1-System Security
  2. Cryptography and Password Cracking

Security Pitfalls

7. Security Pitfalls

Most of the times, an attacker will not directly attack the cryptographic algorithms and instead attack the implementation. A system made of many secure inner blocks is not automatically a secure system.

7.1. Attack against Implementation

Implementation of cryptographic systems correctly is another difficult goal which is hard to achieve.

Some basic point-outs are:

  • Not destroying plaintext after use

  • Not dealing with decrypted data carefully. A system using temporary files to avoid data loss, might leave plaintext or decrypted data or both in the temporary files

  • System using more than 1 key, should take care of all keys equally, because a single key leak renders the complete system useless

  • Allowing recovery of old keys can also act as a weak point

  • And so on

7.2. Attack against Passwords

Attacks against passwords are very common. Many systems break because they rely on user-generated passwords.

People don't choose strong passwords, it is a fact that software architect should deal with.

If they're forced to use strong passwords, users can't remember them or just write them on a file in cleartext.

Dictionary attacks indeed work really well when dictionary is targeted to the environment, country, age, and language of the target.

Software sometimes makes the problem even worse: limiting the password length, converting everything to lower case, etc.

7.3. Attack against Trust Models

Sometimes attackers do not attack their target directly. They can instead exploit trust-systems or roles that the target assumes to be trusted.

Simple systems use simple trust models because more secure trust models might break usability.

Complex systems, like ecommerce instead employ more complex trust models (like signed certificates).

An email program might use secure crypto algorithms to encrypt messages, but unless the public keys are certifies by a trusted source (and unless that certification can be verified), the system is still vulnerable.

Cryptographic algorithm that rely on the security of the other network protocols make an assumption: that these protocols are secure.

Attacking network protocols to break a system that uses an unbreakable cryptography algorithm is what happens everyday on the internet.

7.4. Attack on the Users

Users can be attacked through social engineering, keylogging, or using a malware.

PreviousCryptographic AttackNextWindows 2000/XP/2k3/Vista/7/8 Passwords

Last updated 4 years ago

Was this helpful?