Dienstag, 12. Dezember 2017

TLS-Attacker v2.2 and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 ROBOT attack

We found out that many TLS implementations are still vulnerable to different variations of a 19-year old Bleichenbacher's attack. Since Hanno argued to have an attack name, we called it ROBOT: https://robotattack.org

Given cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 new attack variants, we released a new version of TLS-Attacker 2.2, which covers our vulnerabilities.

Sonntag, 13. August 2017

Gridcoin - The Bad

In this post we will show why Gridcoin is insecure and probably will never achieve better security. Therefore, we are going to explain two critical implementation vulnerabilities and our experience with cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 core developer in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 process of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 responsible disclosure. 

    Gridcoin - The Good

    In this post we will take an in depth look at cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 cryptocurrency Gridcoin, we show how we found two critical design vulnerabilities and how we fixed cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365m.

    In cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 last past years we saw many scientific publications about cryptocurrencies. Some focused on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365oretical parts [Source] and some on practical attacks against specific well-known cryptocurrencies, like Bitcoin [Source]. But in general cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re is a lack of practical research against alternative coins. Or did you know that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re are currently over 830 currencies listed online? So we asked ourselves how secure are cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365se currencies, and if cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y are not just re-branded forks of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Bitcoin source code?

    Background

    Gridcoin is an Altcoin, which is in active development since 2013. It claims to provide a high sustainability, as it has very low energy requirements in comparison to Bitcoin. It rewards users for contributing computation power to scientific projects, published on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 BOINC project platform. Although Gridcoin is not as widespread as Bitcoin, its draft is very appealing as it attempts to eliminate Bitcoin’s core problems. It possesses a market capitalization of $13,719,142 (2017/08/10).

    Berkeley Open Infrastructure for Network Computing

    To solve general scientific meaningful problems, Gridcoin draws on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 well-known Berkeley Open Infrastructure for Network Computing (BOINC). It is a software platform for volunteer computing, initially released in 2002 and developed by cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 University of California, Berkeley. It is an open source software licensed under cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 GNU Lesser General Public License. The platform enables professionals in need for computation power to distribute cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365ir tasks to volunteers. Nowadays it is widely used by researchers with limited resources to solve scientific problems, for example, healing cancer, investigate global warming, finding extraterrestrial intelligence in radio signals and finding larger prime numbers.
    When launching a BOINC project, its maintainer is required to set up his own BOINC server. Project volunteers may cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365n create accounts (by submitting a username, a password and an email address) and work on specific project tasks, called workunits. The volunteers can process cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 project tasks and transfer cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365ir solutions with a BOINC client.

    BOINC architecture

    BOINC uses a client-server architecture to achieve its rich feature set. The server component handles cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 client requests for workunits and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 problem solutions uploaded by cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 clients. The solutions are validated and assimilated by cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 server component. All workunits are created by cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 server component and each workunit represents a chunk of a scientific problem which is encapsulated into an application. This application consists of one or multiple in-/output files, containing binary or ASCII encoded parameters.

    BOINC terminology

    • iCPID
      • The BOINC project server creates cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 internal Cross Project Identifier (iCPID) as a 16 byte long random value during account creation. This value is stored by cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 client and server. From this time on, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 iCPID is included in every request and response between client and server
    • eCPID
      • The external Cross Project Identifier (eCPID) serves cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 purpose of identifying a volunteer across different BOINC projects without revealing cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 corresponding email address. It is computed by applying cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 cryptographic hash function MD5 to (iCPID,email) and thus has a length of 16 byte [Source].
    eCPID = MD5(iCPID||email)
    • Credits
      • BOINC credits are generated whenever a host submits a solution to an assigned task. They are measured in Cobblestone, whereas one Cobblestone is equivalent to 1/200 of CPU time on a reference machine with 1,000 mega floating point operation per seconds [Source]
    • Total Credit
      • Total number of Cubblestones a user invested with his machines for scientific computations
    • Recent Average Credit (RAC)
      • RAC is defined as cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 average number of Cobblestones per day generated recently [Source]. If an entire week passes, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 value is divided by two. Thus old credits are weakly weighted. It is recalculated whenever a host generates credit [Source].

    Gridcoin

    As a fork of Litecoin, Gridcoin-Research is a blockchain based cryptocurrency and shares many concepts with Bitcoin. While Bitcoin’s transaction data structure and concept is used in an unmodified version, Gridcoin-Research utilizes a slightly modified block structure. A Gridcoin-Research block encapsulates a header and body. The header contains needed meta information and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 body encloses transactions. Due to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 hashPrevBlockHeader field, which contains cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 hash of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 previous block-header, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 blocks are linked and form cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 distributed ledger, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 blockchain. Blocks in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 blockchain are created by so called minters. Each block stores a list of recent transactions in its body and furcá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r metadata in its header. To ensure that all transactions are confirmed in a decisive order, each block-header field contains a reference to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 previous one. To regulate cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 rate in which new blocks are appended to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 blockchain and to reward BOINC contribution, Gridcoin-Research implements anocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r concept called Proof-of-Research. Proof-of-Research is a combination of a new overhauled Proof-of-BOINC concept, which was originally designed for Gridcoin-Classic and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 improved Proof-of-Stake concept, inspired by alternative cryptocurrencies.

    Fig. 1: Gridcoin block structure

    Gridcoin terminology

    In order to understand cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 attacks we need to introduce some Gridcoin specific terms.
    • eCPID
      • Identifier value from BOINC used in Gridcoin to identify cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 researcher.
    • CPIDv2
      • contains a checksum to prove that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 minter is cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 owner of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 used eCPID. We fully describe cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 content of this field in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 last attack section.
    • GRCAddress
      • contains cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 payment address of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 minter.
    • ResearchAge
      • is defined as cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 time span between cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 creation time of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 last Proof-of-Research generated block with cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 user’s eCPID and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 time stamp of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 last block in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 chain measured in days.
    • RSAWeight
      • estimates cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 user’s Gridcoin gain for cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 next two weeks, based on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 BOINC contribution of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 past two weeks.

    Proof-of-Stake

    Proof-of-Stake is a Proof-of-Work replacement, which was first utilized by cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 cryptocurrency Peercoin in 2012. This alternative concept was developed to showcase a working Bitcoin related currency with low power consumption. Therefore, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 block generation process has been overhauled. To create a new valid block for cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Gridcoin blockchain cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 following inequality have to be satisfied:

    SHA256(SHA256(kernel)) < Target * UTXO Value + RSAWeight

    The kernel value represents cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 concatenation of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 parameters listed in Table 2. The referenced unspent transaction output (UTXO) must be at least 16 hours old. The so called RSAWeight is an input value to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 kernel computation, it’s indicates cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 average BOINC work, done by a Gridcoin minter.
    In direct comparison to Bitcoin’s Proof-of-Work concept, it is notable that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 hash of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 previous block-header is not part of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 kernel. Consequently, it is cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365oretically possible to create a block at any previous point in time in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 past. To prevent this, Gridcoin-Research creates fixed interval checkpoint blocks. Once a checkpoint block is synchronized with cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 network, blocks with older time stamps became invalid. Considering cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 nature of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 used kernel fields, a client with only one UTXO is able to perform a hash calculation each time nTime is updated. This occurs every second, as nTime is a UNIX time stamp. To be able to change cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 txPrev fields and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365reby increase his hash rate, he needs to gain more UTXO by purchasing coins. Note that high UTXO and RSAWeight values mitigate cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 difficulty of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 cryptographic puzzle, which increase cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 chance of finding a valid kernel. RSAWeight was explained above. Once a sufficient kernel has been found, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 referenced UTXO is spent in a transaction to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 creator of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 block and included in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 generated block. This consumes cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 old UTXO and generates a new one with cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 age of zero.

    The Gridcoin-Research concept does not require much electrical power, because cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 maximum hash rate of an entity is limited by its owned amount of UTXOs with suitable age.

    Proof-of-Research

    Minters relying solely on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Proof-of-Stake rewards are called Investors. In addition to Proof-of-Stake, Gridcoin gives minters a possibility to increase cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365ir income with Proof-of-Research rewards. The Proof-of-Research concept implemented in Gridcoin-Research allows cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 minters to highly increase cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365ir block reward by utilizing cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365ir BOINC Credits. In this case cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 minter is called a Researcher.
    To reward BOINC contribution, relevant BOINC data needs to be stored in each minted block. Therefore, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 software uses cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 BOINCHash data structure, which is encapsulated in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 first transaction of each block. The structure encloses cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 fields listed in Table 6. The minting and verification process is shown in Figure 2 and works as follows:
    1. A minter (Researcher) participates in a BOINC project A and performs computational work for it. In return cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 project server increases cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 users Total Credit value on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 server. The server cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365refore stores cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 minter’s email address, iCPID, eCPID and RAC.
    2. Statistical websites contact project server and down-load cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 statistics for all users from cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 project server (A).
    3. After cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 user earns credits, his RAC increases. Consequently, this eases cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 finding of a solution for cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Proof-of-Stake cryptographic puzzle, and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 user can create (mint) a block and broadcast it to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Gridcoin network.
    4. Anocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r minter (Investor or Researcher) will receive cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 block and validate it. Therefore, he extracts cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 values from cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 BOINCHash data structure inside cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 block.
    5. The minter uses cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 eCPID from cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 BOINCHash to request cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 RAC and ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r needed values from a statistical website and compares cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365m to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 data extracted from cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 BOINCHash structure, in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 event that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y are equal and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 block solves cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 cryptographic puzzle, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 block is accepted.

     Fig. 2: Gridcoin architecture and minting process

    Reward calculation

    The total reward for a solved block is called cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Subsidy and is computed as cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 sum of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Proof-of-Research and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Proof-of-Stake reward.
    If a minter operates as an Investor (without BOINC contribution), cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 eCPID is set to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 string Investor and all ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r fields of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 BOINCHash are zeroed. An Investor receives only a relatively small Proof-of-Stake reward.
    Because cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Proof-of-Research reward is much higher than its Proof-of-Stake counterpart, contributing to BOINC projects is more worth cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 effort.

    Statistic Website

    At cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 beginning of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 blog post, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 core concept behind BOINC was described. One functionality is cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 creation of BOINC Credits for users, who perform computational work for cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 project server. This increases cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 competition between BOINC users and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365refore has a positive effect on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 amount of computational work users commit. Different websites 4 collect credit information of BOINC users from known project servers and present cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365m online. The Gridcoin client compares cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 RAC and total credit values stored in a new minted block with cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 values stored on cpid.gridcoin.us:5000/get_user.php?cpid=eCPID where eCPID is cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 actual value of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 researcher. If cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re are differences, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 client declines cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 block. In short, statistical websites are used as control instance for Gridcoin. It is obvious that gridcoin.us administrators are able to modify values of any user. Thus, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y are able to manipulate cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 amount of Gridcoins a minter gets for his computational work. This is crucial for cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 trust level and undermines cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 general decentralized structure of a cryptocurrency.

    Project Servers

    Gridcoin utilizes BOINC projects to outsource meaningful computation tasks from cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 currency. For many known meaningful problems cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re exist project servers 5 that validate solutions submitted by users, 6 and decide how many credits cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 users receive for cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365ir solutions. Therefore, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 project servers can indirectly control cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 amount of Gridcoins a minter gets for his minted block via cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 total credit value. As a result, a Gridcoin user also needs to trust cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 project administrators. This is very critical since cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re is no transparency in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 credit system of project server. If you want to know why decentralization is not yet an option, see our paper from WOOT'17.

    Attacks

    In addition to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 trust a Gridcoin user needs to put into cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 project server and statistic website administrators, Gridcoin suffers from serious flaws which allows cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 revelation of minter identities or even stealing coins. Our attacks do not rely on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Gridcoin trust issues and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 attacker does not need to be in possession of specific server administrative rights. We assume cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 following two simple attackers with limited capability sets. The first one, is cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 blockchain grabber which can download cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Gridcoin blockchain from an Internet resource and runs a program on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 downloaded data. The second one, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Gridcoin attacker, acts as a normal Gridcoin user, but uses a modified Gridcoin client version, in order to run our attacks.

    Interestingly, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 developer of Gridcoin tried to make cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 source code analysis somewhat harder, by obfuscating cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 source code of relevant functions.
     Fig. 3: Obfuscated source code in Gridcoin [Source]

    Grab Gridcoin user email addresses

    In order to protect cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 email addresses of Gridcoin Researchers, neicá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r BOINC project websites nor statistical websites directly include cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365se privacy critical data. The statistical websites only include eCPID entries, which are used to reward Gridcoin Researchers. However, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 email addresses are hidden inside cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 computation of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 BOINCHash (cf. Table 1). A BOINCHash is created every time a Researcher mints a new block and includes a CPIDv2 value. The CPIDv2 value contains an obfuscated email address with iCPID and a hash over cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 previous blockchain block.
    By collecting cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 blockchain data and reversing cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 obfuscation function (cf. Figure 4 and Figure 7), cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 attacker gets all email addresses and iCPIDs ever used by Gridcoin Researchers. See cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 reversed obfuscation function in Figure 4 and Figure 5.

    Evaluation

    We implemented a deobfuscation function (cf. Figure 7) and executed it on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 blockchain. This way, we were able to retrieve all (2709) BOINC email addresses and iCPIDs used by Gridcoin Researchers. This is a serious privacy issue and we address it with our fix (cf. The Fix).

    Steal Gridcoin users BOINC reward

    The previous attack through deobfuscation allows us to retrieve iCPID values and email addresses. Thus, we have all values needed to create a new legitimate eCPID. This is required because cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 CPIDv2 contains cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 last block hash and requires a re-computation for every new block it should be used in. We use this fact in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 following attack and show how to steal cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 computational work from anocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r legitimate Gridcoin Researcher by mining a new Gridcoin block with forged BOINC information. Throughout this last part of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 post, we assume cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Gridcoin Minter attacker model where cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 attacker has a valid Gridcoin account and can create new blocks. However, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 attacker does not perform any BOINC work.

     Tab. 1: BOINCHash structure as stored and used in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Gridcoin blockchain.
    As stated at cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 beginning of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 blog post, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 pre-image of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 eCPID is stored obfuscated in every Gridcoin block, which contains a Proof-of-Research reward. We gacá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365red one pre-image from cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 minted blocks of our victim and deobfuscated it. Thus, we know cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 values of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 iCPID, and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 email address of our victim. Subsequently, use cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 hash of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 last block created by cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 network and use cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365se three values to create a valid CPIDv2. Afterwards we constructed a new block. In cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 block we also store cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 current BOINC values of our victim, which we can gacá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r from cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 statistics websites. The final block is afterwards sent into cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Gridcoin network. In case all values are computed correctly by cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 attacker, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 network will accept cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 block, and resulting in a higher reward for cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 attacker, consisting of Proof-of-Stake and Proof-of-Research reward.



     Fig. 4: Obfuscation function  Fig. 5: Deobfuscation function

    Evaluation

    In order to verify our attacks practically, we created two virtual machines (R and A), both running Ubuntu 14.04.3 LTS. The virtual machine R contained a legitimate BOINC and Gridcoin instance. It represented cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 setup of a normal Gridcoin Researcher. The second machine A contained a modified Gridcoin-Research client 3.5.6.8 version, which tried to steal cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Proof-of-Research reward of virtual machine R. Thus, we did not steal reward of ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r legitimate users. The victim BOINC client was attached to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 SETI@home project 11 with cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 eCPID 9f502770e61fc03d23d8e51adf7c6291.
    The victim and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 attacker were in possession of Gridcoins, enabling cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365m to stake currency and to create new blocks.
     Fig. 6: CPIDv2 calculation deobfuscated

    Initially both Gridcoin-Research clients retrieved cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 blockchain from ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r Gridcoin nodes in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Gridcoin network.
    The Gridcoin attack client made it possible to specify cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 victim email address, iCPID and target project. All cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365se values can be retrieved from cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 downloaded blockchain and our previous attack via cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 reverseCPIDv2 function as shown in Figure 7. The attack client read cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 iCPID and email address of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 victim from a modified configuration file. All ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r values, for example, RAC or ResearchAge, were pulled from http://cpid.gridcoin.us:5000/get_user.php?cpid=. As soon as all values were received, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 client attempted to create a new valid block.


     Fig. 7: Reverse cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 CPIDv2 calculation to get iCPID and email address

    Once a block had been created and confirmed, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 attacker received cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 increased coin reward with zero BOINC contribution done. The attack could only be detected by its victims because an outside user did not know cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 legitimate Gridcoin addresses a Researcher uses.
    All blocks created with our victim's eCPID are shown in Table 2. Illegitimate blocks are highlighted. We were able to mint multiple illegitimate blocks, and thus stealing Research Age from our victim machine R. All nine blocks created and send by our attacker to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Gridcoin network passed cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Gridcoin block verification, were confirmed multiple times, and are part of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 current Gridcoin blockchain. During our testing timespan of approximately three weeks, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 attacker machine was wrongfully rewarded with 72.4 Proof-of-Research generated Gridcoins, without any BOINC work. The results show that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 attack is not only cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365oretically possible, but also very practical, feasible and effective. The attack results can be reproduced with our Gridcoin-Research-Attack client.

     Tab. 2:Blocks minted with cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 victim's eCPID

    The Fix

    In order to fix cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 security issue, we found one solution which does not require any changes to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 BOINC source code nor cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 infrastructure. It is sufficient to change some parts of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 already existing Gridcoin Beacon system. Thus, our solution is backwards compatible.
    The current Gridcoin client utilizes so called Beacons to register new eCPIDs and stores cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365m as a transaction of 0.0001 Gridcoins in a Superblock which is created every 24 hours. A Beacon encloses cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 user’s personal eCPIDs, a corresponding unused (but irreversible) CPIDv2, and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 wallet’s main Gridcoin payment address. Once cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Superblock is created, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 eCPIDs is bound to one Gridcoin payment address. During cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 block verification process this bond is unfortunately not checked. Furcá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365rmore, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 existing Beacon system does not use any strong asymmetric cryptography to ensure aucá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365nticity and integrity of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 broadcasted data. We propose to extend cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Beacon system with public key cryptography. In detail, we suggest that a user binds his fresh public key PK_1 to a newly generated eCPID, and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365n storing cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365m togecá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r in a Superblock. An initial Beacon would cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365refore contain a hashed (e.g. SHA-256) eCPID, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 public key, a Nonce, and a cryptographic signature created with cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 corresponding secret key SK_1 of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 public key. This allows only cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 owner of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 secret key to create valid signatures over blocks created with his eCPID. Thus, an adversary first needs to forge a cryptographic signature before he can claim Proof-of-Research work of anocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r Gridcoin user. Thus, he is not capable of stealing cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 reward of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 user.

    Beacon to create a eCPID, public/secret key pair bond

    For verification purposes nodes fetch cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 corresponding latest public key from one of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Superblocks. Furcá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365rmore, this Beacon structure allows a user to replace his previous public key associated with his eCPID. This is realized by submitting a new Beacon with a new public key PK_2, signed with his old secret key.

    Beacon to update a eCPID, public/secret key pair bond

    All Beacons in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 chain are verifiable and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 latest public key is always aucá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365ntic. The Nonce provide freshness for cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 signature input, and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365refore prevent replay attacks against cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Beacon system.
    Note that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 eCPID needs to be completely unknown to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 network, when sending cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 initial Beacon, for this concept to work as intended. The hash function ensures, that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Beacon does not reveal cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 fresh eCPID. As a result, an attacker is unable to mint with a eCPID even if he was able to intercept an initial Beacon and replaced cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 public key and signature with his own parameters, beforehand. This solution does not require any changes in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 BOINC source code or cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 project servers.

    Sign a block

    In order to claim cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Proof-of-Research reward for a newly created block, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Gridcoin minter computes a signature over cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 hash of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 blockheader. Afterwards, he stores cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 resulting value at cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 end of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 corresponding block in a new field. The private key used for cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 signature generation must correspond to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 advertised public key by cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 user. It is important to note that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 signature value is not part of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Merkle tree, and thus does not change cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 blockheader. In cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 end, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 signature can cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365n be verified by every ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r Gridcoin user via cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 advertised public key corresponding to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 eCPID of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Gridcoin minter.

    Responsible Disclosure

    The attacks and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 countermeasures were responsibly disclosed to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Gridcoin developer on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 14th of September, 2016. The developer used our proposed countermeasures and started to implement a new version. Since version 3.5.8.8, which is mandatory for all Gridcoin users, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re exists an implementation, which contains countermeasures to our reward stealing attack.
    See our next blog post, why Gridcoin is still insecure and should not be used anymore.

    Furcá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r Reading
    A more detailed description of Gridcoin and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 attacks will be presented at WOOT'17, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 paper is available here.

    Authors

    Tobias Niemann
    Juraj Somorovsky

    Freitag, 28. Juli 2017

    Insecurities of WhatsApp's, Signal's, and Threema's Group Chats

    Recently, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365oretical and practical analysis of secure instant messenger protocols received much attention, but cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 focus of prior evaluations mostly lay in one-to-one communication. In this blog post we want to presents cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 results of our work that focuses on group chat protocols of three major instant messenger applications; namely Signal, WhatsApp, and Threema.

    In this blog post, we aim to focus on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 practical impact and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 found weaknesses identified by our analysis. The interested reader may also look into our paper for more details.

    Dienstag, 4. Juli 2017

    CORS misconfigurations on a large scale

    Inspired by James Kettle's great OWASP AppSec Europe talk on CORS misconfigurations, we decided to fiddle around with CORS security issues a bit. We were curious how many websites out cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re are actually vulnerable because of dynamically generated or misconfigured CORS headers.

    The issue: CORS misconfiguration

    Cross-Origin Resource Sharing (CORS) is a technique to punch holes into cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Same-Origin Policy (SOP) – on purpose. It enables web servers to explicitly allow cross-site access to a certain resource by returning an Access-Control-Allow-Origin (ACAO) header. Sometimes, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 value is even dynamically generated based on user-input such as cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Origin header send by cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 browser. If misconfigured, an unintended website can access cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 resource. Furcá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365rmore, if cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Access-Control-Allow-Credentials (ACAC) server header is set, an attacker can potentially leak sensitive information from a logged in user – which is almost as bad as XSS on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 actual website. Below is a list of CORS misconfigurations which can potentially be exploited. For more technical details on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 issues read cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 this fine blogpost.
    Misconfiguation Description
    Developer backdoorInsecure developer/debug origins like JSFiddler CodePen are allowed to access cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 resource
    Origin reflectionThe origin is simply echoed in ACAO header, any site is allowed to access cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 resource
    Null misconfigurationAny site is allowed access by forcing cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 null origin via a sandboxed iframe
    Pre-domain wildcardnotdomain.com is allowed access, which can simply be registered by cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 attacker
    Post-domain wildcarddomain.com.evil.com is allowed access, can be simply be set up by cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 attacker
    Subdomains allowedsub.domain.com allowed access, exploitable if cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 attacker finds XSS in any subdomain
    Non-SSL sites allowedAn HTTP origin is allowed access to a HTTPS resource, allows MitM to break encryption
    Invalid CORS headerWrong use of wildcard or multiple origins,not a security problem but should be fixed

    Dienstag, 13. Juni 2017

    New printers vulnerable to old languages

    When we published our research on network printer security at cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 beginning of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 year, one major point of criticism was that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 tested printers models had been quite old. This is a legitimate argument. Most of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 evaluated devices had been in use at our university for years and one may raise cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 question if new printers share cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 same weaknesses.

    35 year old bugs features

    The key point here is that we exploited PostScript and PJL interpreters. Both printer languages are ancient, de-facto standards and still supported by almost any laser printer out cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re. And as it seems, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y are not going to disappear anytime soon. Recently, we got cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 chance to test a $2,799 HP PageWide Color Flow MFP 586 brand-new high-end printer. Like its various predecessors, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 device was vulnerable to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 following attacks:

    Montag, 30. Januar 2017

    Printer Security


    Printers belong arguably to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 most common devices we use. They are available in every household, office, company, governmental, medical, or education institution.

    From a security point of view, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365se machines are quite interesting since cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y are located in internal networks and have direct access to sensitive information like confidential reports, contracts or patient recipes.


    TL;DR: In this blog post we give an overview of attack scenarios based on network printers, and show cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 possibilities of an attacker who has access to a vulnerable printer. We present our evaluation of 20 different printer models and show that each of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365se is vulnerable to multiple attacks. We release an open-source tool that supported our analysis: PRinter Exploitation Toolkit (PRET) https://github.com/RUB-NDS/PRET
    Full results are available in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 master cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365sis of Jens Müller and our paper.
    Furcá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365rmore, we have set up a wiki (http://hacking-printers.net/) to share knowledge on printer (in)security.
    The highlights of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 entire survey will be presented by Jens Müller for cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 first time at RuhrSec in Bochum.

    Mittwoch, 25. Januar 2017

    PKCE: What can(not) be protected


    This post is about PKCE [RFC7636], a protection mechanism for OAuth and OpenIDConnect designed for public clients to detect cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 authorization code interception attack.
    At cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 beginning of our research, we wrongly believed that PKCE protects mobile and native apps from cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 so called „App Impersonation“ attacks. Considering our ideas and after a short discussion with cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 authors of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 PKCE specification, we found out that PKCE does not address this issue.
    In ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r words, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 protection of PKCE can be bypassed on public clients (mobile and native apps) by using a maliciously acting app.

    Beliebte Posts