<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Cossack Labs</title>
    <description>The latest articles on DEV Community by Cossack Labs (@cossacklabs).</description>
    <link>https://dev.to/cossacklabs</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F385564%2Fd114ce77-af44-4c00-a124-abd013f916ff.jpg</url>
      <title>DEV Community: Cossack Labs</title>
      <link>https://dev.to/cossacklabs</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/cossacklabs"/>
    <language>en</language>
    <item>
      <title>AWS security audit guide</title>
      <dc:creator>Cossack Labs</dc:creator>
      <pubDate>Mon, 06 Nov 2023 11:46:20 +0000</pubDate>
      <link>https://dev.to/cossacklabs/aws-security-audit-guide-22c6</link>
      <guid>https://dev.to/cossacklabs/aws-security-audit-guide-22c6</guid>
      <description>&lt;p&gt;&lt;em&gt;by &lt;a href="https://www.linkedin.com/in/iskanderov/"&gt;Elmir Iskanderov&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Auditing AWS security configuration is essential for timely identifying and addressing security vulnerabilities in your cloud infrastructure and services. Sounds simple, though there are milestones to cover and security pitfalls to avoid on the way to a secure cloud environment. This is actually what we are going to briefly discuss in this post.  &lt;/p&gt;

&lt;p&gt;Cloud customers are responsible for the configurations of security controls, access management, security of their applications, and data. Read more about &lt;a href="https://www.cossacklabs.com/blog/cloud-security-gaps-in-a-shared-responsibility-model/"&gt;Gaps in the Shared Responsibility Model&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;When conducting an audit of AWS resources, ensuring proper access is vital, as access levels vary depending on the infrastructure being assessed.&lt;/p&gt;

&lt;p&gt;Key policies to consider: &lt;a href="https://docs.aws.amazon.com/aws-managed-policy/latest/reference/SecurityAudit.html"&gt;SecurityAudit&lt;/a&gt; and &lt;a href="https://docs.aws.amazon.com/aws-managed-policy/latest/reference/ReadOnlyAccess.html"&gt;ReadOnlyAccess&lt;/a&gt;, each offering different permissions for services and metadata. The ReadOnlyAccess policy is essential when utilising automated audit tools. Attach the ReadOnlyAccess and SecurityAudit policies to the user, group, or role involved in the audit. If you run into a "403 Access Denied" when trying to use an API, it means that you don't have permission. So contact your administrator to get it. &lt;/p&gt;

&lt;p&gt;Pay close attention to the following cloud testing components. These are important for AWS security assessments to identify vulnerabilities and risks and ensure compliance.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Identity and Access Management:&lt;/strong&gt; Verifying that users are assigned the appropriate roles and permissions. &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Compute and Container Security:&lt;/strong&gt; Potential risks to container components, including infrastructure, applications, and other elements, are identified and assessed.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Data Protection in Transit and at Rest:&lt;/strong&gt; Data security is evaluated when it is transmitted between systems or stored.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Secure Remote and Administrative Access:&lt;/strong&gt; Ensuring that resource access systems are secure and effectively guard against unauthorised access.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Audit Log and Real-time Security Monitoring:&lt;/strong&gt; During this phase, it is verified that security events are being recorded and tracked, the Ops team has access to the logs, and monitoring systems are operating effectively.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Attack Detection and Response Mechanisms:&lt;/strong&gt; Checking if there are effective systems for detecting potential attacks and responding to them.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Security Backups and Disaster Recovery Plan:&lt;/strong&gt; Ensuring that backups are created and stored securely, disaster recovery plans are adequate and ready for use.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Compliance with Regulatory Requirements:&lt;/strong&gt; Checking regulatory compliance for confidentiality and other regulatory demands.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;CIS Benchmarks&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;💡 CIS Benchmarks, created by the Center for Internet Security — globally recognized best practices for cybersecurity. CIS Benchmarks meet NIST, HIPAA, PCI CSS, and CIS standards, with three levels of protection: Basic, higher security for sensitive data, and specifically for US government requirements. &lt;/p&gt;

&lt;p&gt;CIS Benchmarks consist of four documents for auditing AWS security:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Amazon Web Services Foundations;&lt;/li&gt;
&lt;li&gt;Amazon Web Services Three-tier Web; &lt;/li&gt;
&lt;li&gt;AWS End User Compute Services;&lt;/li&gt;
&lt;li&gt;AWS Compute Services.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Each of the documents listed above has audit checklists → &lt;a href="https://www.cisecurity.org/benchmark/amazon_web_services"&gt;CIS Benchmark AWS&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cloud Conformity Knowledge Base&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;To ensure the security of your AWS services, follow the best practices at &lt;a href="https://www.trendmicro.com/cloudoneconformity/knowledge-base/aws/"&gt;Cloud Conformity Knowledge Base&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The Cloud Conformity Knowledge Base for AWS contains curated rules and recommendations for optimising AWS security, reliability, performance, compliance, and cost-efficiency. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Tools&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;To save your time and perform the check effectively, use the following tools to automate the process:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;a href="https://github.com/zer1t0/awsenum"&gt;Awsenum&lt;/a&gt; / &lt;a href="https://github.com/joshlarsen/aws-recon"&gt;aws_recon&lt;/a&gt;: Tools for reconnaissance/inventory of AWS services and resources.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/RhinoSecurityLabs/pacu"&gt;Pacu&lt;/a&gt;: An AWS exploitation framework for offensive security testing in cloud environments. &lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/aquasecurity/cloudsploit"&gt;Cloudsploit&lt;/a&gt;: An automated tool for monitoring and auditing AWS configuration security. &lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/prowler-cloud/prowler"&gt;Prowler&lt;/a&gt;: A security auditing tool for AWS used to check existing configurations against security standards such as the CIS Amazon Web Services Foundations Benchmark. &lt;/li&gt;
&lt;li&gt;
&lt;a href="https://github.com/nccgroup/ScoutSuite"&gt;Scoutsuite&lt;/a&gt;: A security auditing tool that provides visual reports on the security state of your AWS environment, identifying incorrect configurations and potential risks.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;AWS security is about ensuring that users can safely take full advantage of the cloud and that their data is protected from unauthorised access, loss, and theft. “Reliability” and “security” are the keywords here. A comprehensive audit of your AWS infrastructure, as well as timely identification of potential vulnerabilities, are vital to creating a secure cloud environment and protecting sensitive data. &lt;/p&gt;

</description>
      <category>devops</category>
      <category>security</category>
      <category>productivity</category>
      <category>aws</category>
    </item>
    <item>
      <title>Building security for digital wallets and financial applications</title>
      <dc:creator>Cossack Labs</dc:creator>
      <pubDate>Thu, 14 Sep 2023 15:15:32 +0000</pubDate>
      <link>https://dev.to/cossacklabs/building-security-for-digital-wallets-and-financial-applications-1c1i</link>
      <guid>https://dev.to/cossacklabs/building-security-for-digital-wallets-and-financial-applications-1c1i</guid>
      <description>&lt;p&gt;The financial market requires secure, compliant, and scalable solutions. How would you define “security”? Oftentimes it is perceived as a checklist of features to be implemented or a distraction. Others see security as a technical debt that could be taken care of “someday” when the product is already launched. But no one wants to see their product compromised and customers go. Is there a way to build a secure architecture that will serve as a shield to users’ assets and company’s name?&lt;/p&gt;

&lt;p&gt;In this read, we’ll put on a security engineer’s shoes and walk a mile to see security from their perspective. Diving into this world will equip you with new ideas on how to build a reliable product by choosing a security-first approach. &lt;/p&gt;

&lt;p&gt;A life-saving tip: Huge security incidents once were little weaknesses that were not timely taken care of. Thus let’s address the issues in 4+ steps:&lt;/p&gt;

&lt;p&gt;✅ &lt;strong&gt;Define your unique risks and threat profile:&lt;/strong&gt; Identify specific risks, analyse your architecture for risks that can possibly turn into threats. The next step is to develop a targeted security strategy, design and build security controls. You also need to build your incident response capability and invest in winning user trust. &lt;/p&gt;

&lt;p&gt;✅ &lt;strong&gt;Fight typical risks&lt;/strong&gt; with typical mitigations like focusing on data protection via a layered approach to security:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Platform security&lt;/strong&gt; - the foundation of mobile / web security measures- requires special attention. &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Mobile wallet&lt;/strong&gt; security starts with OWASP MASVS and MASTG recommendations, like secure data storage, proper cryptography, local authentication, and device trust. &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Web &amp;amp; web extension wallets&lt;/strong&gt; are to use encrypted data storage, minimise the memory footprint of private keys and mnemonics. In the case of &lt;strong&gt;desktop wallets&lt;/strong&gt;, stored private keys could be available for superusers and malicious apps. &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Backend security&lt;/strong&gt; should include secure user authentication, session handling, user enumeration, data harvesting, network settings, security headers, transaction integrity, and protection against replay attacks.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Supply chain security&lt;/strong&gt; requires pre-selected and monitored 3rd party services. &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Monitoring and incident response:&lt;/strong&gt; Monitor transactions to timely detect anomalies and prevent potential incidents.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;✅ &lt;strong&gt;Treat problems systematically&lt;/strong&gt; to reduce the number of risks and vulnerabilities.&lt;/p&gt;

&lt;p&gt;✅ &lt;strong&gt;Target the specific financial risks to your product&lt;/strong&gt; and shoot back with effective tech solutions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Key leakage and transaction fraud&lt;/li&gt;
&lt;li&gt;User deanonymisation&lt;/li&gt;
&lt;li&gt;Know Your Customer and Anti Money Laundering&lt;/li&gt;
&lt;li&gt;Financial Anti Fraud Systems&lt;/li&gt;
&lt;li&gt;Regulations and compliance&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Follow the &lt;a href="https://www.cossacklabs.com/blog/digital-wallet-security-architecture-guide/#6-targeting-specific-risks-relevant-to-digital-wallets"&gt;white rabbit&lt;/a&gt; for more juicy tips.&lt;/p&gt;

&lt;p&gt;Building security into the development process is your key to success! Engage security engineers with product and financial expertise. Allow professionals to audit your digital wallet so that you can see the real picture and timely mitigate the risks.&lt;/p&gt;

&lt;p&gt;When you make security the cornerstone of your product — you invest into your reputation, user retention and help your digital wallet stay competitive. As you implement smart security solutions throughout the product development process, you keep the end-user’s wants and fears in mind, doing your best to make their digital life a little easier. This is your road to success!&lt;/p&gt;

&lt;p&gt;Read the full guide on &lt;a href="https://www.cossacklabs.com/blog/digital-wallet-security-architecture-guide/"&gt;digital wallets security&lt;/a&gt;. &lt;/p&gt;

</description>
      <category>security</category>
      <category>mobile</category>
      <category>web</category>
      <category>appsec</category>
    </item>
    <item>
      <title>7 Steps to Building Anti-Fraud System for Digital Wallets</title>
      <dc:creator>Cossack Labs</dc:creator>
      <pubDate>Wed, 02 Aug 2023 10:01:06 +0000</pubDate>
      <link>https://dev.to/cossacklabs/7-steps-to-building-anti-fraud-system-for-digital-wallets-58i2</link>
      <guid>https://dev.to/cossacklabs/7-steps-to-building-anti-fraud-system-for-digital-wallets-58i2</guid>
      <description>&lt;p&gt;The popularity of digital wallets makes them an attractive target for malicious actors. Can we develop a secure e-wallet that never pops up on the list of compromised products? According to Nelson Mandela, “It always seems impossible until it’s done”. Let’s give it a try!&lt;/p&gt;

&lt;p&gt;The game is won by those who know the rules and how to use those to their advantage. You know what your opponent is after and what they target: The system and the user. All you need is data and proactive measures to build a strong anti-fraud system.&lt;/p&gt;

&lt;p&gt;Use mobile apps and server-side as valuable sources of data to identify patterns, detect anomalies, and cope with vulnerabilities. Refer to proactive measures, device attestation, authentication, integrating KYC &amp;amp; AML, and user education to build an effective anti-fraud system. Let’s have a quick look at each of these 7 steps.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step #1&lt;/strong&gt; &lt;a href="https://www.cossacklabs.com/blog/how-to-prevent-digital-wallet-fraud/#preventing-fraud-proactively"&gt;Proactive anti-fraud measures&lt;/a&gt; help to manage the uncontrollable – human factor, differentiating between “normal” and “abnormal” user behaviour. We can identify suspicious/malicious users and define “stop factors” via collecting data and calculating risk scores. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step #2&lt;/strong&gt; &lt;a href="https://www.cossacklabs.com/blog/how-to-prevent-digital-wallet-fraud/#educating-users"&gt;User education&lt;/a&gt;: allows them to protect their assets better if they know about risks and are asked for additional authentication before a transaction can be completed.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step #3&lt;/strong&gt; &lt;a href="https://www.cossacklabs.com/blog/how-to-prevent-digital-wallet-fraud/#authenticating-and-re-authenticating"&gt;Authenticating and re-authenticating&lt;/a&gt;: Choosing the appropriate user identity verification method is paramount and will depend on the specific use case.  &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step #4&lt;/strong&gt; &lt;a href="https://www.cossacklabs.com/blog/how-to-prevent-digital-wallet-fraud/#integrating-kyc-and-aml"&gt;Integrating KYC (Know Your Customer) and AML (Anti-Money Laundering)&lt;/a&gt; are crucial for identity verification and fraud prevention.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step #5&lt;/strong&gt; &lt;a href="https://www.cossacklabs.com/blog/how-to-prevent-digital-wallet-fraud/#enabling-remote-device-attestation"&gt;Enabling remote device attestation&lt;/a&gt; helps to differentiate between a legitimate and a compromised one. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step #6&lt;/strong&gt; &lt;a href="https://www.cossacklabs.com/blog/how-to-prevent-digital-wallet-fraud/#understanding-trade-offs-for-anti-fraud-measures"&gt;Smart balancing between usability and security&lt;/a&gt; allows to win users’ hearts and protect their assets at the same time. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step #7&lt;/strong&gt; &lt;a href="https://www.cossacklabs.com/blog/how-to-prevent-digital-wallet-fraud/#working-with-security-researchers"&gt;Working with security researchers&lt;/a&gt; is a promising collaboration for mitigating vulnerabilities.&lt;/p&gt;

&lt;p&gt;For more information on building an anti-fraud system, see our informative &lt;a href="https://www.cossacklabs.com/blog/how-to-prevent-digital-wallet-fraud/"&gt;engineering post&lt;/a&gt;.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Breaking and building encryption in NFC digital wallets 📳</title>
      <dc:creator>Cossack Labs</dc:creator>
      <pubDate>Tue, 28 Mar 2023 21:00:56 +0000</pubDate>
      <link>https://dev.to/cossacklabs/breaking-and-building-encryption-in-nfc-digital-wallets-39c4</link>
      <guid>https://dev.to/cossacklabs/breaking-and-building-encryption-in-nfc-digital-wallets-39c4</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;NFC technology is now just a part of everyday life. One day, you can meet it as a developer building new firmware for an NFC device that serves as a digital wallet. Get prepared for the security challenges when using NFC. &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Tap-and-go operations are used so widely and the assembly of an NFC intercepting device is so simple and inexpensive, that &lt;strong&gt;NFC exploits are common “in the wild”&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;Crypto wallets, unmanned vehicles, access control devices, FIDO2 tokens, NFC tags, or contactless payments—NFC devices are everywhere and are often used for critical actions! &lt;strong&gt;And in each case, there must be proper security measures based on a threat model, as the risks may vary.&lt;/strong&gt; But as a security-aware developer, you can reduce the chances of exploits. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;We’ve seen many security problems in NFC key vaults, some of them literally migrate from project to project. &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;⚠️ For example, developers tend to use “encrypt-then-CRC” (Cyclic Redundancy Check) or “CRC-then-encrypt”, but both those options are unsuitable because the CRC is not designed for cryptographic integrity. The CRC is computed without secret and can be easily changed.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# CRC-then-encrypt example
# NEVER USE IT
def encrypt(key, message):
    iv = b'\x00' * 16
    tag = crc16(message)
    plaintext = tag + message
    ciphertext = aes_cbc_encrypt(key, plaintext, iv)
    return ciphertext
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;⚠️ Instead of crafting your own integrity checks, prefer AEAD encryption (like AES-GCM), and use a proper MAC, like HMAC, GMAC, or Poly1305. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;And this is not a rare thing. Just check other problems NFC devices can bring: &lt;a href="https://www.cossacklabs.com/blog/exploring-security-vulnerabilities-in-nfc-digital-wallets/#replay-attacks-with-nfc-cards-active-mitm"&gt;replay&lt;/a&gt;, &lt;a href="https://www.cossacklabs.com/blog/exploring-security-vulnerabilities-in-nfc-digital-wallets/#passive-mitm-attacks-in-nfc"&gt;passive MITM&lt;/a&gt;, &lt;a href="https://www.cossacklabs.com/blog/exploring-security-vulnerabilities-in-nfc-digital-wallets/#timing-attacks"&gt;timing attacks&lt;/a&gt;, &lt;a href="https://www.cossacklabs.com/blog/exploring-security-vulnerabilities-in-nfc-digital-wallets/#nfc-encryption-flaws"&gt;encryption flaws&lt;/a&gt;, &lt;a href="https://www.cossacklabs.com/blog/exploring-security-vulnerabilities-in-nfc-digital-wallets/#more-wild-exploits-of-nfc-devices"&gt;buffer overflow&lt;/a&gt;, etc.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;💡 Well, so &lt;a href="https://www.cossacklabs.com/blog/exploring-security-vulnerabilities-in-nfc-digital-wallets/#mitigating-nfc-security-risks"&gt;how to mitigate the NFC security risks?&lt;/a&gt; First, consider proper threat modelling and suitable secure architecture. Then implement proper security controls. Talk to cryptographers if your system involves encryption (as it should!). And, for sure, do not ignore testing, auditing, and reacting on incident stages. &lt;/p&gt;

&lt;p&gt;Click on the image to read in-depth:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.cossacklabs.com/blog/exploring-security-vulnerabilities-in-nfc-digital-wallets/"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--X79xaDhY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bkk3awhkrayjggicpcq3.png" alt="Exploring security vulnerabilities in NFC digital wallets" width="880" height="462"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Follow us on &lt;a href="https://twitter.com/cossacklabs"&gt;Twitter&lt;/a&gt; for more.&lt;/p&gt;

</description>
      <category>encryption</category>
      <category>cryptography</category>
      <category>security</category>
      <category>appsec</category>
    </item>
    <item>
      <title>Smart contracts: audit ‘em all like a security engineer</title>
      <dc:creator>Cossack Labs</dc:creator>
      <pubDate>Wed, 14 Dec 2022 18:51:40 +0000</pubDate>
      <link>https://dev.to/cossacklabs/smart-contracts-audit-em-all-like-a-security-engineer-46b5</link>
      <guid>https://dev.to/cossacklabs/smart-contracts-audit-em-all-like-a-security-engineer-46b5</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;Don’t let reentrancy and front-running attacks, signature replay, gas issues, sensitive data leakage, deadlocks, and various kinds of vulnerabilities in smart contracts pfaff you around. &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;⚠️ Blockchain systems are often taken as safe and secure by default. But oops they are not until someone takes proper care of their security. 🤌 Do you know that &lt;strong&gt;smart contracts, which are code stored on a blockchain, can be abused and misused just like other software&lt;/strong&gt;? &lt;/p&gt;

&lt;p&gt;In our new engineering blog post 👉 &lt;a href="https://www.cossacklabs.com/blog/smart-contract-security-audit-tips-tricks/"&gt;Smart contract security audit: tips &amp;amp; tricks&lt;/a&gt; 👈, we’ve gathered tips &amp;amp; tricks that will help you eliminate risks and threats and happily survive in this wild wild west. &lt;/p&gt;

&lt;p&gt;🎯 The first step is a security audit. &lt;/p&gt;

&lt;p&gt;💡 &lt;strong&gt;Security audit of smart contracts differs from auditing "traditional software".&lt;/strong&gt; We’ve spent years building, auditing, and improving security / cryptography within cryptocurrency fundamental protocols, nodes, wallets (must check 👉 &lt;a href="https://www.cossacklabs.com/blog/crypto-wallets-security/"&gt;Crypto wallets security as seen by security engineers&lt;/a&gt; 👈), and bridges, so we have lots to tell about it ;)&lt;/p&gt;

&lt;p&gt;To cover what you need to &lt;strong&gt;secure the smart contract’s code, infrastructure, and data flow&lt;/strong&gt;, we’ve focused on the Tezos network and 👉 &lt;a href="https://www.cossacklabs.com/case-studies/smart-contract-security-audit-for-allbridge-cross-chain-bridge-with-tezos/"&gt;freshly-baked audit of the Tezos Project in Allbridge Classic&lt;/a&gt; 👈.🐬 Dive in!&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Smart contracts have a lot in common with distributed applications but differ in details. They are generally small and easier to review. They have unique threat vectors, like malicious bakers or gas exhaust. They don’t store any private data but they still operate with sensitive information: signatures, administrator addresses, user balances, etc. Check them out!&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://www.cossacklabs.com/blog/crypto-wallets-security/"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--KJvvFWPb--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4ch5shapuinm0yz7bqit.png" alt="Smart contract security audit: tips &amp;amp; tricks" width="880" height="467"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>blockchain</category>
      <category>security</category>
      <category>audit</category>
      <category>cryptography</category>
    </item>
    <item>
      <title>How to encrypt data easily when your apps and databases are already running</title>
      <dc:creator>Cossack Labs</dc:creator>
      <pubDate>Tue, 20 Sep 2022 18:11:57 +0000</pubDate>
      <link>https://dev.to/cossacklabs/how-to-encrypt-data-easily-when-your-apps-and-databases-are-already-running-5ced</link>
      <guid>https://dev.to/cossacklabs/how-to-encrypt-data-easily-when-your-apps-and-databases-are-already-running-5ced</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;What if you’ve built your app and now think about &lt;strong&gt;encrypting sensitive fields&lt;/strong&gt; that it sends to the database and back? 🤔 Should you just enable the “at rest encryption” checkbox, use TLS, or add an extra encryption layer into your application code? &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The first and second options make sense, the third one is not for everyone. ✨ Consider implementing &lt;strong&gt;transparent database encryption&lt;/strong&gt;.✨ &lt;/p&gt;




&lt;p&gt;Database encryption works for transforming readable data into a ciphertext, aiming to protect it from unauthorized parties. &lt;/p&gt;

&lt;p&gt;💡 When speaking about &lt;strong&gt;transparent&lt;/strong&gt; data encryption, which is implemented, for example, in the &lt;a href="https://www.cossacklabs.com/acra/" rel="noopener noreferrer"&gt;Acra database security suite&lt;/a&gt;, we mean that &lt;strong&gt;encryption happens neither in the database nor in the app it speaks to&lt;/strong&gt;. But where?—In Acra proxy! &lt;/p&gt;

&lt;p&gt;Acra works as a SQL database proxy—so, your application communicates with the database via Acra which encrypts/decrypts sensitive fields. You can customize which fields to consider sensitive (PII, financial or regulatory-specific data), as well as what actions Acra should do (&lt;a href="https://dev.to/cossacklabs/application-level-encryption-4n32"&gt;encrypt&lt;/a&gt;, &lt;a href="https://dev.to/cossacklabs/searchable-encryption-4gjl"&gt;searchable encrypt&lt;/a&gt;, &lt;a href="https://dev.to/cossacklabs/acra-features-data-masking-3ng7"&gt;mask&lt;/a&gt;, &lt;a href="https://dev.to/cossacklabs/acra-features-tokenization-57fn"&gt;tokenize&lt;/a&gt;, etc.). &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;In such a way, the &lt;strong&gt;database never gets access to the plaintext data or encryption keys&lt;/strong&gt;. That saves a lot of resources on development and requires minimum effort for protecting data.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;You have encrypted data, using modern strong encryption, but you don’t deal with cryptographic code. Win-win. 😊&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.cossacklabs.com/blog/acra-transparent-data-encryption-for-sql-databases/" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fo7izf3gcd0u78uab66pv.png" alt="Acra Server works as database proxy and encrypts/decrypts sensitive data fields transparently."&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We designed Acra just like that. It doesn’t require any change in your app code. &lt;strong&gt;That is extremely useful&lt;/strong&gt; when you have your infrastructure (apps, databases) already built.&lt;/p&gt;




&lt;p&gt;💡 Acra is available for free on GitHub, suitable for small apps:&lt;br&gt;
&lt;a href="https://github.com/cossacklabs/acra" rel="noopener noreferrer"&gt;https://github.com/cossacklabs/acra&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;💡 And as a paid Enterprise license for security-sensitive products:&lt;br&gt;
&lt;a href="https://cossacklabs.com/acra" rel="noopener noreferrer"&gt;https://cossacklabs.com/acra&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  But how transparent database encryption works?
&lt;/h3&gt;

&lt;p&gt;If you want to get deep into detail and learn more about database wire protocols, check out our new engineering blog post 👉 &lt;a href="https://www.cossacklabs.com/blog/acra-transparent-data-encryption-for-sql-databases/" rel="noopener noreferrer"&gt;Transparent data encryption for SQL databases with Acra 0.93&lt;/a&gt; 👈&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.cossacklabs.com/blog/acra-transparent-data-encryption-for-sql-databases/" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1h578gj29fut9ixce3bm.png" alt="Transparent data encryption for SQL databases with Acra 0.93"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>security</category>
      <category>cryptography</category>
      <category>encryption</category>
      <category>database</category>
    </item>
    <item>
      <title>Subscribe to a new newsletter for security-aware developers!</title>
      <dc:creator>Cossack Labs</dc:creator>
      <pubDate>Mon, 22 Aug 2022 17:42:19 +0000</pubDate>
      <link>https://dev.to/cossacklabs/subscribe-to-a-new-newsletter-for-security-aware-developers-2n8e</link>
      <guid>https://dev.to/cossacklabs/subscribe-to-a-new-newsletter-for-security-aware-developers-2n8e</guid>
      <description>&lt;p&gt;Hi, I’m Felix from Cossack Labs.&lt;/p&gt;

&lt;p&gt;You might know me as a mascot of these cool data security &amp;amp; cryptography guys. But time flies. Code is everywhere, and nummy bugs are everywhere too. &lt;/p&gt;

&lt;p&gt;So, meet me in a new role—as a junior security researcher bringing you a &lt;a href="https://shift-security-left.curated.co/" rel="noopener noreferrer"&gt;🐝-weekly newsletter Shift Security Left&lt;/a&gt;, teaching how to design, build, and test secure software. 😎🤟🏻&lt;/p&gt;

&lt;p&gt;Every two weeks, on Saturdays, I’ll drop into your inbox an email with a few links to &lt;strong&gt;great &amp;amp; awful security news, practical articles, papers, tools, and other security stuff&lt;/strong&gt; to make your apps more secure.&lt;/p&gt;

&lt;p&gt;The first issue is already available!&lt;/p&gt;

&lt;p&gt;Subscribe here: &lt;a href="https://shift-security-left.curated.co/" rel="noopener noreferrer"&gt;Shift Security Left&lt;/a&gt;—and share with friends!&lt;br&gt;
Follow me on Twitter: &lt;a href="https://twitter.com/ssl_newsletter" rel="noopener noreferrer"&gt;@ssl_newsletter&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="https://shift-security-left.curated.co/" rel="noopener noreferrer"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj3gxk4jibj5j0uifiv6l.PNG" alt="Subscribe to the developer-aware security newsletter: Shift Security Left"&gt;&lt;/a&gt; &lt;/p&gt;

</description>
      <category>security</category>
      <category>cryptography</category>
      <category>devsecops</category>
      <category>appsec</category>
    </item>
    <item>
      <title>🚨 Robotic devices can be hijacked through cryptographic failures in encryption</title>
      <dc:creator>Cossack Labs</dc:creator>
      <pubDate>Thu, 30 Jun 2022 08:03:30 +0000</pubDate>
      <link>https://dev.to/cossacklabs/robotic-devices-can-be-hijacked-through-cryptographic-failures-in-encryption-23ce</link>
      <guid>https://dev.to/cossacklabs/robotic-devices-can-be-hijacked-through-cryptographic-failures-in-encryption-23ce</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;You can often hear security engineers saying “&lt;strong&gt;do not design your cryptosystems, especially if you don’t know anything about them&lt;/strong&gt;”.  Nah, ignore it. What can really go wrong?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Imagine you have a radio-controlled ​🚗​💨​ toy car.&lt;/p&gt;

&lt;p&gt;It’s very popular and has an open-source firmware with a large community around. Your car uses secure protocol to communicate with remote control and can drive on a long distance. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Is it protected from the hijackers now?&lt;/strong&gt; Well, we doubt a lot 🤔, as crypto bugs can sit in the code invisibly until it’s too late to notice them.&lt;/p&gt;

&lt;h2&gt;
  
  
  What can happen?
&lt;/h2&gt;

&lt;p&gt;🔘 &lt;a href="https://www.cossacklabs.com/blog/cryptographic-failures-in-rf-encryption/#predictable-iv-in-cbc-mode"&gt;Static IV in CBC fails to achieve probabilistic encryption&lt;/a&gt;&lt;br&gt;
🔘 &lt;a href="https://www.cossacklabs.com/blog/cryptographic-failures-in-rf-encryption/#exploiting-aes-cbc-padding-oracle-attack"&gt;AES-CBC Padding Oracle attack&lt;/a&gt;&lt;br&gt;
🔘 &lt;a href="https://www.cossacklabs.com/blog/cryptographic-failures-in-rf-encryption/#breaking-aes-ctr-with-fixed-nonce"&gt;AES-CTR is broken using fixed nonce&lt;/a&gt;&lt;br&gt;
🔘 &lt;a href="https://www.cossacklabs.com/blog/cryptographic-failures-in-rf-encryption/#non-existing-integrity-protection-for-cbc-and-ctr"&gt;Encrypted messages integrity is not protected&lt;/a&gt;&lt;br&gt;
🔘 Side channels and &lt;a href="https://www.cossacklabs.com/blog/cryptographic-failures-in-rf-encryption/#replay-attacks"&gt;replay attacks&lt;/a&gt;&lt;br&gt;
🙀 and that’s still not all folks.&lt;/p&gt;

&lt;p&gt;Read our new article 👉 &lt;a href="https://www.cossacklabs.com/blog/cryptographic-failures-in-rf-encryption/"&gt;Cryptographic failures in RF encryption allow stealing robotic devices&lt;/a&gt; 👈 and play interactive demo games to learn how your robotic devices can be stolen from you by someone with a radio antenna.&lt;/p&gt;

</description>
      <category>opensource</category>
      <category>security</category>
      <category>cryptography</category>
      <category>encryption</category>
    </item>
    <item>
      <title>Improving security &amp; cryptography in popular cryptocurrency wallets</title>
      <dc:creator>Cossack Labs</dc:creator>
      <pubDate>Wed, 08 Jun 2022 10:10:37 +0000</pubDate>
      <link>https://dev.to/cossacklabs/improving-security-cryptography-in-popular-cryptocurrency-wallets-3li7</link>
      <guid>https://dev.to/cossacklabs/improving-security-cryptography-in-popular-cryptocurrency-wallets-3li7</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;Lots of people apply the idea that “blockchain is secure” by default to every project that has “blockchain” in its description. But in tech, you know it’s not so simple. &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;From a security perspective, we often see weak points requiring &lt;strong&gt;special attention in cryptocurrency ecosystems and their wallets&lt;/strong&gt; (read our blog post &lt;a href="https://www.cossacklabs.com/blog/crypto-wallets-security/"&gt;Crypto wallets security as seen by security engineers&lt;/a&gt; to 🐬 deep dive into the topic). When working with large blockchain foundations, we ensure that their ecosystem (wallets, backends, APIs, protocols) are secure. &lt;/p&gt;




&lt;p&gt;▶️ Have a look at a real-life example.&lt;/p&gt;

&lt;p&gt;Say, there’s a blockchain foundation with a &lt;strong&gt;non-custodial cryptocurrency wallet&lt;/strong&gt; available for millions of users as mobile applications and a web extension. &lt;/p&gt;

&lt;p&gt;The users, regulators, investors, etc. expect that the cryptocurrency wallet gives &lt;strong&gt;the same level of security guarantees as modern financial or banking apps.&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;💡 Since this is a non-custodial cryptocurrency wallet, special attention should be paid to protecting data on the client side and its communication with a blockchain.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This comes with the requests for: &lt;br&gt;
✔️ advanced level of protection, &lt;br&gt;
✔️ encryption for data at rest (non-custodial wallets store private keys and mnemonics), &lt;br&gt;
✔️ platform-specific security controls for all the supported platforms,&lt;br&gt;
✔️ building app security into UX.&lt;/p&gt;

&lt;p&gt;▶️ Now this looks like a job for us.&lt;/p&gt;

&lt;p&gt;So, we roll up our sleeves and, using the superpower :) of our mobile apps security, &lt;a href="https://www.cossacklabs.com/solutions/security-engineering-architecture/"&gt;security&lt;/a&gt; and &lt;a href="https://www.cossacklabs.com/solutions/cryptography-engineering/"&gt;cryptography engineering&lt;/a&gt; services, and a cryptographic library &lt;a href="https://cossacklabs.com/themis"&gt;Themis&lt;/a&gt;, we:&lt;/p&gt;

&lt;p&gt;🎯 assess risks and do threat modelling for the apps and backend ecosystem.&lt;br&gt;
🎯 conduct a deep cryptography audit of the wallet: web extension (Chrome, Firefox, Chromium) and mobile apps (iOS, Android).&lt;br&gt;
🎯 provide cryptographic enhancements and dozens of &lt;a href="https://dev.to/cossacklabs/what-do-appsec-and-fire-extinguishers-have-in-common-5efe"&gt;application security&lt;/a&gt; improvements aligned with the “defense in depth” approach.&lt;br&gt;
🎯 analyze the development process and advise &lt;a href="https://www.cossacklabs.com/solutions/product-security-ssdlc/"&gt;SSDLC&lt;/a&gt; improvements (from further automation in CI/CD pipeline to formalizing a security roadmap).&lt;/p&gt;

&lt;p&gt;Read the detail behind every stage in our case study &lt;a href="https://www.cossacklabs.com/case-studies/cryptocurrency-wallets/"&gt;Filling cryptography and security gaps in cryptocurrency wallets&lt;/a&gt;🐬 to learn how these efforts resulted in web extension and mobile apps synced in their security guarantees and providing &lt;strong&gt;defence in depth protection for the users’ data.&lt;/strong&gt; 🔐&lt;/p&gt;




&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--566lAguM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev.to/assets/github-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/cossacklabs"&gt;
        cossacklabs
      &lt;/a&gt; / &lt;a href="https://github.com/cossacklabs/themis"&gt;
        themis
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      Easy to use cryptographic framework for data protection: secure messaging with forward secrecy and secure data storage. Has unified APIs across 14 platforms.
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;h3&gt;
  &lt;a href="https://www.cossacklabs.com/themis/" rel="nofollow"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Vg3xAV0Y--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/cossacklabs/themis/wiki/images/logo.png" alt="Themis provides strong, usable cryptography for busy people" width="420"&gt;&lt;/a&gt;
  &lt;br&gt;
  &lt;br&gt;
  Themis provides strong, usable cryptography for busy people
  &lt;br&gt;
  &lt;br&gt;
&lt;/h3&gt;

&lt;p&gt;
  &lt;a href="https://github.com/cossacklabs/themis/releases"&gt;&lt;img src="https://camo.githubusercontent.com/20472129610ef1b54f0cfe42113f1511e71049937c5beb1271d82afde97a7278/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f72656c656173652f636f737361636b6c6162732f7468656d69732e737667" alt="GitHub release"&gt;&lt;/a&gt;
  &lt;a href="https://github.com/cossacklabs/themis/releases/latest"&gt;&lt;img src="https://camo.githubusercontent.com/0eae8c3a751a43bb4f06da2442657442fa2ea4ff25b5f8d3fbf189d7e35208fa/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f706c6174666f726d2d416e64726f6964253230253743253230694f532532302537432532306d61634f532532302537432532304c696e75782532302537432532304a6176612532302537432532305741534d2d677265656e2e737667" alt="Platforms"&gt;&lt;/a&gt;
  &lt;a href="https://coveralls.io/github/cossacklabs/themis" rel="nofollow"&gt;&lt;img src="https://camo.githubusercontent.com/8440fa1485f1c1931f95be6271f01f6f858c1994c8f5187c0af7dc5ca2b27da0/68747470733a2f2f636f766572616c6c732e696f2f7265706f732f6769746875622f636f737361636b6c6162732f7468656d69732f62616467652e7376673f6272616e63683d6d6173746572" alt="Coverage Status"&gt;&lt;/a&gt;
  &lt;a href="https://goreportcard.com/report/github.com/cossacklabs/themis" rel="nofollow"&gt;&lt;img src="https://camo.githubusercontent.com/26c0ad8f771e7d6190569d7ee6978628d35ff092f122eee7d511f6e765ed29cc/68747470733a2f2f676f7265706f7274636172642e636f6d2f62616467652f6769746875622e636f6d2f636f737361636b6c6162732f7468656d6973"&gt;&lt;/a&gt;
  &lt;br&gt;
  &lt;a href="https://github.com/cossacklabs/themis/actions?query=workflow%3A%22Themis+Core%22"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--UfVq8TBF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/cossacklabs/themis/workflows/Themis%2520Core/badge.svg" alt="Themis Core"&gt;&lt;/a&gt;
  &lt;a href="https://github.com/cossacklabs/themis/actions?query=workflow%3A%22Integration+testing%22"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--qlpgpL5M--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/cossacklabs/themis/workflows/Integration%2520testing/badge.svg" alt="Integration testing"&gt;&lt;/a&gt;
  &lt;a href="https://github.com/cossacklabs/themis/actions?query=workflow%3A%22Code+style%22"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--_S5HuuXB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://github.com/cossacklabs/themis/workflows/Code%2520style/badge.svg" alt="Code style"&gt;&lt;/a&gt;
  &lt;a href="https://circleci.com/gh/cossacklabs/themis" rel="nofollow"&gt;&lt;img src="https://camo.githubusercontent.com/dc6db50c30d20ff93a531ea46681d8d6dc0851d5a5b59763e9c4e74ae7c150b5/68747470733a2f2f636972636c6563692e636f6d2f67682f636f737361636b6c6162732f7468656d69732f747265652f6d61737465722e7376673f7374796c653d736869656c64" alt="Circle CI"&gt;&lt;/a&gt;
  &lt;a href="https://app.bitrise.io/app/69a1d5c9d42fa60f" rel="nofollow"&gt;&lt;img src="https://camo.githubusercontent.com/a3967d22c1ebf55acaa559ae66bd97165e23c5fe13ca91c9e6243458e063ecd2/68747470733a2f2f6170702e626974726973652e696f2f6170702f363961316435633964343266613630662f7374617475732e7376673f746f6b656e3d46705f3036456d613550677a42625a51795179316241266272616e63683d6d6173746572" alt="Bitrise"&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;h4&gt;
General purpose cryptographic library for storage and messaging for iOS (Swift, Obj-C), Android (Java, Kotlin), React Native (iOS, Android), desktop Java, С/С++, Node.js, Python, Ruby, PHP, Go, Rust, WASM.&lt;/h4&gt;
&lt;h4&gt;
Perfect fit for multi-platform apps. Hides cryptographic details. Made by cryptographers for developers 🧡
&lt;/h4&gt;

&lt;h2&gt;
What Themis is&lt;/h2&gt;

&lt;p&gt;Themis is an open-source high-level cryptographic services library for securing data during authentication, storage, messaging, network exchange, etc. Themis solves 90% of typical data protection use cases that are common for most apps.&lt;/p&gt;

&lt;p&gt;Themis helps to build both simple and complex cryptographic features easily, quickly, and securely. Themis allows developers to focus on the main thing: developing their applications.&lt;/p&gt;

&lt;h2&gt;
Use cases that Themis solves&lt;/h2&gt;


&lt;ul&gt;
&lt;li&gt;

&lt;p&gt;&lt;strong&gt;Encrypt stored secrets&lt;/strong&gt; in your apps and backend: API keys, session tokens, files.&lt;/p&gt;


&lt;/li&gt;
&lt;li&gt;

&lt;p&gt;&lt;strong&gt;Encrypt sensitive data fields&lt;/strong&gt; before storing in database (&lt;em&gt;"application-side field-level encryption"&lt;/em&gt;).&lt;/p&gt;


&lt;/li&gt;
&lt;li&gt;

&lt;p&gt;Support &lt;strong&gt;searchable encryption&lt;/strong&gt;, data tokenisation…&lt;/p&gt;


&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;br&gt;
  &lt;/div&gt;
&lt;br&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/cossacklabs/themis"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;br&gt;


</description>
      <category>cryptography</category>
      <category>security</category>
      <category>blockchain</category>
      <category>cryptocurrency</category>
    </item>
    <item>
      <title>RepoMetaScore: evaluate supply chain risks of open-source projects</title>
      <dc:creator>Cossack Labs</dc:creator>
      <pubDate>Wed, 18 May 2022 17:08:27 +0000</pubDate>
      <link>https://dev.to/cossacklabs/repometascore-evaluate-supply-chain-risks-of-open-source-projects-2451</link>
      <guid>https://dev.to/cossacklabs/repometascore-evaluate-supply-chain-risks-of-open-source-projects-2451</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;Open-source software saves time on development but should be taken carefully, as the code is in the hands of maintainers and contributors you know nothing about. &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;🚩The threat of intentionally weaponizing open-source tools by criminals is growing every year.&lt;/strong&gt; Recently, novel risks have emerged: developers living in oppressed countries are being pushed into introducing backdoors involuntarily.&lt;/p&gt;

&lt;p&gt;⚠️ Backdoors and vulnerabilities introduced into OSS can cause &lt;strong&gt;ruinous aftermaths.&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;One of the ways to prevent them is to employ vulnerability scanners for analyzing third-parties libraries your project uses, but, unfortunately, sometimes they alert too late. &lt;/p&gt;

&lt;p&gt;Another option entails identifying and quantifying security risks linked to third-party libraries before adding them to your product.&lt;/p&gt;

&lt;h2&gt;
  
  
  🔎 RepoMetaScore
&lt;/h2&gt;

&lt;p&gt;To help developers avoid risks associated with weaponizing OSS, our security engineers have built a &lt;a href="https://www.cossacklabs.com/blog/introducing-repometascore/"&gt;RepoMetaScore&lt;/a&gt;. It’s a tool that &lt;strong&gt;collects information about the project and its contributors, analyzes it, and calculates risk ratings by several criteria&lt;/strong&gt;: GitHub and Twitter profiles, location, commit history, email domain, etc.  &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;💡 Note, that RepoMetaScore (📥 &lt;a href="https://github.com/cossacklabs/repometascore"&gt;GitHub&lt;/a&gt;) should not be used as the only tool for assessing open-source repositories’ credibility. Use it wisely as an additional tool for mitigating current threats in open source.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  🔨 How RepoMetaScore works
&lt;/h3&gt;

&lt;p&gt;Repometascore uses public information disclosed by contributors themselves. &lt;a href="https://github.com/cossacklabs/repometascore"&gt;RepoMetaScore&lt;/a&gt; collects such info through the APIs and calculates results as a risk rating. It can be &lt;strong&gt;the first tool in a series of security checkup&lt;/strong&gt; developers go through when deciding whether to add a certain project or not. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;💡 To use &lt;a href="https://github.com/cossacklabs/repometascore"&gt;RepoMetaScore&lt;/a&gt;, follow its &lt;a href="https://github.com/cossacklabs/repometascore#readme"&gt;Readme&lt;/a&gt;. It’s a simple python package that should work on any Unix and Mac. &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Provide &lt;a href="https://github.com/cossacklabs/repometascore"&gt;RepoMetaScore&lt;/a&gt; with a link to a repository-in-question—and get the risk rating results and general information about repository contributors. &lt;/p&gt;

</description>
      <category>opensource</category>
      <category>security</category>
      <category>github</category>
      <category>analytics</category>
    </item>
    <item>
      <title>Encryption in ⛅ cloud native apps</title>
      <dc:creator>Cossack Labs</dc:creator>
      <pubDate>Thu, 12 May 2022 17:14:03 +0000</pubDate>
      <link>https://dev.to/cossacklabs/encryption-in-cloud-native-apps-16n5</link>
      <guid>https://dev.to/cossacklabs/encryption-in-cloud-native-apps-16n5</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;Devs are often tempted to leave data security “as is” while building cloud native apps. With all the options cloud providers give, you can have an illusion of everything running securely by default. But…&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;...In reality, the need for data protection and app security does not disappear automagically in a cloud and security requires your efforts and a different approach. &lt;strong&gt;You’re to protect the data whenever it exists.&lt;/strong&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  🌁 But why?
&lt;/h3&gt;

&lt;p&gt;In a cloud environment, you have many security concerns eliminated or cared by the cloud provider. Simultaneously, &lt;strong&gt;you have less control over the perimeter and many things are just checkboxes on the admin panel.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Since infrastructure capacity is no longer a limit in a cloud, you can have multiple complex dataflows – and they require setting out and mapping controls onto them. &lt;/p&gt;

&lt;p&gt;❇️ For example, to prevent other developers and DBAs from accessing sensitive data in production you’ll need &lt;a href="https://dev.to/cossacklabs/what-is-application-level-encryption-and-why-its-not-tls-49hb"&gt;field level encryption&lt;/a&gt;. To stop SQL injections and insiders you’ll have to &lt;a href="https://dev.to/cossacklabs/acra-features-database-request-firewall-4amn"&gt;request firewalls&lt;/a&gt; and &lt;a href="https://dev.to/cossacklabs/acra-features-data-leakage-detection-57aj"&gt;monitoring&lt;/a&gt; tools. To restore the events and find a root cause in case of incidents you’ll need &lt;a href="https://dev.to/cossacklabs/acra-features-logging-audit-logging-and-crypto-signed-audit-logs-5400"&gt;audit logging&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Managing this complexity is challenging.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;💡 Here comes the reality check: &lt;strong&gt;it’s the data owner but not the infrastructure operator who is responsible for a breach&lt;/strong&gt; under GDPR, PCI, CCPA, and most other regulations.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Thus, while some security tasks are handled by your cloud provider, you still have to deal with data security and appsec.&lt;/p&gt;

&lt;h3&gt;
  
  
  🌁 But how?
&lt;/h3&gt;

&lt;p&gt;The process of making security decisions usually comprises such steps as risk assessment and risk mitigation, threat modelling, loss event scenarios, etc. In a cloud environment, you follow the same steps but make them relevant to the cloud. &lt;/p&gt;

&lt;h3&gt;
  
  
  ☀️ 3 main points to focus on for cloud native security are:
&lt;/h3&gt;

&lt;p&gt;✔️ &lt;strong&gt;1.&lt;/strong&gt;  Minimizing the number of products/tools you use for the same security goal. The less tools, configurations, bugs or dependencies you manage, the better.&lt;/p&gt;

&lt;p&gt;✔️ &lt;strong&gt;2.&lt;/strong&gt; Configuring the preventive, detective, and corrective security controls to protect from different threats but to work for the common goal.&lt;/p&gt;

&lt;p&gt;✔️ &lt;strong&gt;3.&lt;/strong&gt; Building a single data security layer with specific controls (like &lt;a href="https://dev.to/cossacklabs/application-level-encryption-4n32"&gt;application level encryption&lt;/a&gt;, &lt;a href="https://dev.to/cossacklabs/acra-features-authentication-2432"&gt;authentication&lt;/a&gt;, &lt;a href="https://dev.to/cossacklabs/acra-features-database-request-firewall-4amn"&gt;firewalling&lt;/a&gt;, &lt;a href="https://dev.to/cossacklabs/acra-features-data-leakage-detection-57aj"&gt;data loss prevention&lt;/a&gt;, &lt;a href="https://dev.to/cossacklabs/acra-features-security-events-automation-1bio"&gt;anomaly detection&lt;/a&gt;, &lt;a href="https://dev.to/cossacklabs/acra-features-data-masking-3ng7"&gt;anonymization&lt;/a&gt;, etc.).&lt;/p&gt;




&lt;p&gt;How exactly to build a data security layer and which tools to use depend on your system design and security requirements.&lt;/p&gt;

&lt;p&gt;💡 For example, you can &lt;strong&gt;put a database encryption proxy between your app and database&lt;/strong&gt; to get transparent encryption/decryption without big changes in your solution. (&lt;a href="https://www.cossacklabs.com/acra/"&gt;Acra database security suite&lt;/a&gt;, available &lt;a href="https://github.com/cossacklabs/acra"&gt;from GitHub&lt;/a&gt;, perfectly fits this task.)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Data Access Object (DAO)&lt;/strong&gt; service can be of help when you have multiple databases (especially a mix of SQL and NoSQL, &lt;a href="https://www.cossacklabs.com/acra/"&gt;Acra&lt;/a&gt; will help here as well).&lt;/p&gt;

&lt;p&gt;And sometimes, the only way to integrate cryptographic code right into your application code is to &lt;strong&gt;use an encryption library or SDK&lt;/strong&gt; (like &lt;a href="https://www.cossacklabs.com/themis/"&gt;Themis cryptographic library&lt;/a&gt;).&lt;/p&gt;




&lt;p&gt;😊 Good thing is that we have already built many different data security layers for various use cases, and know approaches, tools, and typical pitfalls. We’re here to support you in cutting through complexity and protecting your valuable data. &lt;/p&gt;

&lt;p&gt;Drop us a line if you face a challenge. And follow our blogs &lt;a href="https://dev.to/cossacklabs"&gt;on DEV&lt;/a&gt;, &lt;a href="https://www.cossacklabs.com/blog/"&gt;our website&lt;/a&gt;, and &lt;a href="https://twitter.com/cossacklabs"&gt;Twitter&lt;/a&gt; for more security-related updates. 🔐&lt;/p&gt;

</description>
      <category>cloudnative</category>
      <category>encryption</category>
      <category>cryptography</category>
      <category>appsec</category>
    </item>
    <item>
      <title>10 tips for volunteering devs from data security engineers</title>
      <dc:creator>Cossack Labs</dc:creator>
      <pubDate>Tue, 26 Apr 2022 12:47:11 +0000</pubDate>
      <link>https://dev.to/cossacklabs/10-tips-for-volunteering-devs-from-data-security-engineers-102a</link>
      <guid>https://dev.to/cossacklabs/10-tips-for-volunteering-devs-from-data-security-engineers-102a</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;Many developers are involved now in volunteer work. 🔧🌍 Teams create websites and applications to share useful information for refugees, to organize humanitarian and logistic efforts and even to track military machines.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Are you among those who make this globe run better or save lives in 🇺🇦 Ukraine with your 💪 engineering efforts and software? &lt;strong&gt;Let us share with you some observations on how to make this impact even more effective from a security perspective.&lt;/strong&gt;&lt;/p&gt;




&lt;p&gt;▶️ &lt;strong&gt;1. 🎯Focus on your MVP.&lt;/strong&gt; The idea of adding some sophisticated features to your emergency software before it goes public is tempting but releasing early might help more people. Leave additional features for later. Take it for granted that they’re highly volatile based on available capabilities and people's requests.&lt;/p&gt;

&lt;p&gt;▶️ &lt;strong&gt;2. Do software security asap, invite data security engineers early.&lt;/strong&gt; It saves time and lives. Otherwise, if the security flaws come out in the last stage of the development, they might require re-engineering or compromises one wouldn’t like to have. &lt;/p&gt;

&lt;p&gt;▶️ &lt;strong&gt;3. Use risk modeling.&lt;/strong&gt; Ask yourself “what could go wrong?” often. Be context-wise as some risks that you already know can have much worse adverse consequences in urgent/vulnerable situations. F. ex., during warfare, stakes for data leakage or service unavailability could cost not only GDPR fines, but people’s lives.&lt;/p&gt;

&lt;p&gt;▶️ &lt;strong&gt;4. Mind data security.&lt;/strong&gt; Be careful with data. Don’t collect/store sensitive data. But if you have to, then use encryption for data in transfer, storage, and backup. Take care of the encryption keys. &lt;/p&gt;

&lt;p&gt;▶️ &lt;strong&gt;5. Follow OWASP &lt;a href="https://cheatsheetseries.owasp.org/"&gt;Cheat sheets&lt;/a&gt;, &lt;a href="https://github.com/OWASP/owasp-masvs/"&gt;OWASP MASVS/MSTG&lt;/a&gt;, &lt;a href="https://github.com/OWASP/ASVS"&gt;OWASP ASVS/WSTG&lt;/a&gt;.&lt;/strong&gt; Search for free and available data security services, firewalls, encryption libraries (f. ex., check these &lt;a href="https://dev.to/cossacklabs/2-free-data-security-tools-every-dev-should-know-and-use-3d7a"&gt;must-haves&lt;/a&gt;). Move to &lt;strong&gt;#2&lt;/strong&gt; if currently it’s a hard task. &lt;/p&gt;

&lt;p&gt;▶️ &lt;strong&gt;6. Look after physical security:&lt;/strong&gt; &lt;br&gt;
❇️ Include in your reliability plan events of physical damage or sudden unavailability of the servers/connection lines/data centre, etc. &lt;br&gt;
❇️ If your infra is in a cloud, check other devs/super admin access rights and eliminate risks of unauthorised parties getting access to your systems or losing access to them at all. &lt;br&gt;
❇️ Give preference to low-maintenance and automated infra instead of high-maintenance ones (and move to &lt;strong&gt;#1&lt;/strong&gt;). &lt;br&gt;
❇️ Ensure all team members use long passwords and have multi-factor authentication (MFA) enabled.&lt;/p&gt;

&lt;p&gt;▶️ &lt;strong&gt;7. Choose commodity technologies and interoperable solutions&lt;/strong&gt; rather than those that are rare and hard to replace. You’ll move faster, have more possibilities to find qualified specialists to work with and less problems if something goes unexpected.&lt;/p&gt;

&lt;p&gt;▶️ &lt;strong&gt;8. Match your expertise with the projects.&lt;/strong&gt; F. ex., being experienced in AI/ML or hardware design, you’d better search for initiatives in the same fields as you can contribute to their success more than, say, in frontend development where you have to study first.&lt;/p&gt;

&lt;p&gt;▶️ &lt;strong&gt;9. Collaborate and communicate.&lt;/strong&gt; It is likely that some other people work on the same module/task as you and together you can make it faster. Also, if you build a feature which can be used in, say, 10 projects, your impact is 10x fold and you save lots of time and effort for those 10 teams.&lt;/p&gt;

&lt;p&gt;▶️ &lt;strong&gt;10. Match priorities with timing.&lt;/strong&gt; If you are volunteering during an emergency and want to make an immediate impact, make sure the goal/results of a project you’re contributing to can be achieved within a tight time frame, not “several months/years later”. Switch if an initiative has no chance to win/get to production. During an emergency, losing time can be a disaster. 🔐 &lt;/p&gt;

</description>
      <category>security</category>
      <category>ukraine</category>
      <category>sideprojects</category>
      <category>volunteering</category>
    </item>
  </channel>
</rss>
