Vulnerabilities > CVE-2016-6309 - Use After Free vulnerability in Openssl 1.1.0A
Attack vector
NETWORK Attack complexity
LOW Privileges required
NONE Confidentiality impact
HIGH Integrity impact
HIGH Availability impact
HIGH Summary
statem/statem.c in OpenSSL 1.1.0a does not consider memory-block movement after a realloc call, which allows remote attackers to cause a denial of service (use-after-free) or possibly execute arbitrary code via a crafted TLS session.
Vulnerable Configurations
Part | Description | Count |
---|---|---|
Application | 1 |
Common Weakness Enumeration (CWE)
Nessus
NASL family Misc. NASL id ORACLE_E-BUSINESS_CPU_JUL_2017.NASL description The version of Oracle E-Business installed on the remote host is missing the July 2017 Oracle Critical Patch Update (CPU). It is, therefore, affected by the following vulnerabilities : - Multiple integer overflow conditions exist in the OpenSSL component in s3_srvr.c, ssl_sess.c, and t1_lib.c due to improper use of pointer arithmetic for heap-buffer boundary checks. An unauthenticated, remote attacker can exploit this to cause a denial of service. (CVE-2016-2177) - An information disclosure vulnerability exists in the OpenSSL component in the dsa_sign_setup() function in dsa_ossl.c due to a failure to properly ensure the use of constant-time operations. An unauthenticated, remote attacker can exploit this, via a timing side-channel attack, to disclose DSA key information. (CVE-2016-2178) - A denial of service vulnerability exists in the OpennSSL component in the DTLS implementation due to a failure to properly restrict the lifetime of queue entries associated with unused out-of-order messages. An unauthenticated, remote attacker can exploit this, by maintaining multiple crafted DTLS sessions simultaneously, to exhaust memory. (CVE-2016-2179) - An out-of-bounds read error exists in the OpenSSL component in the X.509 Public Key Infrastructure Time-Stamp Protocol (TSP) implementation. An unauthenticated, remote attacker can exploit this, via a crafted time-stamp file that is mishandled by the last seen 2020-06-01 modified 2020-06-02 plugin id 101845 published 2017-07-20 reporter This script is Copyright (C) 2017-2018 Tenable Network Security, Inc. source https://www.tenable.com/plugins/nessus/101845 title Oracle E-Business Multiple Vulnerabilities (July 2017 CPU) (SWEET32) code # # (C) Tenable Network Security, Inc. # include("compat.inc"); if (description) { script_id(101845); script_version("1.5"); script_cvs_date("Date: 2018/11/15 20:50:23"); script_cve_id( "CVE-2016-2177", "CVE-2016-2178", "CVE-2016-2179", "CVE-2016-2180", "CVE-2016-2181", "CVE-2016-2182", "CVE-2016-2183", "CVE-2016-6302", "CVE-2016-6303", "CVE-2016-6304", "CVE-2016-6305", "CVE-2016-6306", "CVE-2016-6307", "CVE-2016-6308", "CVE-2016-6309", "CVE-2016-7052", "CVE-2017-3562", "CVE-2017-10112", "CVE-2017-10113", "CVE-2017-10130", "CVE-2017-10143", "CVE-2017-10144", "CVE-2017-10170", "CVE-2017-10171", "CVE-2017-10174", "CVE-2017-10175", "CVE-2017-10177", "CVE-2017-10179", "CVE-2017-10180", "CVE-2017-10184", "CVE-2017-10185", "CVE-2017-10186", "CVE-2017-10191", "CVE-2017-10192", "CVE-2017-10244", "CVE-2017-10245", "CVE-2017-10246" ); script_bugtraq_id( 91081, 91319, 92117, 92557, 92628, 92630, 92982, 92984, 92987, 93149, 93150, 93151, 93152, 93153, 93171, 93177, 99625, 99630, 99633, 99636, 99639, 99647, 99655, 99658, 99663, 99664, 99672, 99678, 99685, 99690, 99693, 99700, 99702, 99708, 99713, 99715, 99717 ); script_name(english:"Oracle E-Business Multiple Vulnerabilities (July 2017 CPU) (SWEET32)"); script_summary(english:"Checks for the July 2017 CPU."); script_set_attribute(attribute:"synopsis", value: "A web application installed on the remote host is affected by multiple vulnerabilities."); script_set_attribute(attribute:"description", value: "The version of Oracle E-Business installed on the remote host is missing the July 2017 Oracle Critical Patch Update (CPU). It is, therefore, affected by the following vulnerabilities : - Multiple integer overflow conditions exist in the OpenSSL component in s3_srvr.c, ssl_sess.c, and t1_lib.c due to improper use of pointer arithmetic for heap-buffer boundary checks. An unauthenticated, remote attacker can exploit this to cause a denial of service. (CVE-2016-2177) - An information disclosure vulnerability exists in the OpenSSL component in the dsa_sign_setup() function in dsa_ossl.c due to a failure to properly ensure the use of constant-time operations. An unauthenticated, remote attacker can exploit this, via a timing side-channel attack, to disclose DSA key information. (CVE-2016-2178) - A denial of service vulnerability exists in the OpennSSL component in the DTLS implementation due to a failure to properly restrict the lifetime of queue entries associated with unused out-of-order messages. An unauthenticated, remote attacker can exploit this, by maintaining multiple crafted DTLS sessions simultaneously, to exhaust memory. (CVE-2016-2179) - An out-of-bounds read error exists in the OpenSSL component in the X.509 Public Key Infrastructure Time-Stamp Protocol (TSP) implementation. An unauthenticated, remote attacker can exploit this, via a crafted time-stamp file that is mishandled by the 'openssl ts' command, to cause a denial of service or to disclose sensitive information. (CVE-2016-2180) - A denial of service vulnerability exists in the OpenSSL component in the Anti-Replay feature in the DTLS implementation due to improper handling of epoch sequence numbers in records. An unauthenticated, remote attacker can exploit this, via spoofed DTLS records, to cause legitimate packets to be dropped. (CVE-2016-2181) - An overflow condition exists in the OpenSSL component in the BN_bn2dec() function in bn_print.c due to improper validation of user-supplied input when handling BIGNUM values. An unauthenticated, remote attacker can exploit this to crash the process. (CVE-2016-2182) - A vulnerability exists, known as SWEET32, in the OpenSSL component in the 3DES and Blowfish algorithms due to the use of weak 64-bit block ciphers by default. A man-in-the-middle attacker who has sufficient resources can exploit this vulnerability, via a 'birthday' attack, to detect a collision that leaks the XOR between the fixed secret and a known plaintext, allowing the disclosure of the secret text, such as secure HTTPS cookies, and possibly resulting in the hijacking of an authenticated session. (CVE-2016-2183) - A flaw exists in the OpenSSL component in the tls_decrypt_ticket() function in t1_lib.c due to improper handling of ticket HMAC digests. An unauthenticated, remote attacker can exploit this, via a ticket that is too short, to crash the process, resulting in a denial of service. (CVE-2016-6302) - An integer overflow condition exists in the OpenSSL component in the MDC2_Update() function in mdc2dgst.c due to improper validation of user-supplied input. An unauthenticated, remote attacker can exploit this to cause a heap-based buffer overflow, resulting in a denial of service condition or possibly the execution of arbitrary code. (CVE-2016-6303) - A flaw exists in the OpenSSL component in the ssl_parse_clienthello_tlsext() function in t1_lib.c due to improper handling of overly large OCSP Status Request extensions from clients. An unauthenticated, remote attacker can exploit this, via large OCSP Status Request extensions, to exhaust memory resources, resulting in a denial of service condition. (CVE-2016-6304) - A flaw exists in the OpenSSL component in the SSL_peek() function in rec_layer_s3.c due to improper handling of empty records. An unauthenticated, remote attacker can exploit this, by triggering a zero-length record in an SSL_peek call, to cause an infinite loop, resulting in a denial of service condition. (CVE-2016-6305) - An out-of-bounds read error exists in the OpenSSL component in the certificate parser that allows an unauthenticated, remote attacker to cause a denial of service via crafted certificate operations. (CVE-2016-6306) - A denial of service vulnerability exists in the OpenSSL component in the state-machine implementation due to a failure to check for an excessive length before allocating memory. An unauthenticated, remote attacker can exploit this, via a crafted TLS message, to exhaust memory resources. (CVE-2016-6307) - A denial of service vulnerability exists in the OpenSSL component in the DTLS implementation due to improper handling of excessively long DTLS messages. An unauthenticated, remote attacker can exploit this, via a crafted DTLS message, to exhaust available memory resources. (CVE-2016-6308) - A remote code execution vulnerability exists in the OpenSSL component in the read_state_machine() function in statem.c due to improper handling of messages larger than 16k. An unauthenticated, remote attacker can exploit this, via a specially crafted message, to cause a use-after-free error, resulting in a denial of service condition or possibly the execution of arbitrary code. (CVE-2016-6309) - A denial of service vulnerability exists in the OpenSSL component in x509_vfy.c due to improper handling of certificate revocation lists (CRLs). An unauthenticated, remote attacker can exploit this, via a specially crafted CRL, to cause a NULL pointer dereference, resulting in a crash of the service. (CVE-2016-7052) - An unspecified flaw exists in the AD Utilities component that allows an authenticated, remote attacker to impact confidentiality and integrity. (CVE-2017-3562) - An unspecified flaw exists in the Registration component that allows an unauthenticated, remote attacker to impact confidentiality and integrity. (CVE-2017-10112) - An unspecified flaw exists in the CRM User Management Framework component that allows an unauthenticated, remote attacker to impact confidentiality and integrity. (CVE-2017-10113) - An unspecified flaw exists in the User Management component that allows an unauthenticated, remote attacker to impact confidentiality and integrity. (CVE-2017-10130) - An unspecified flaw exists in the Preferences component that allows an unauthenticated, remote attacker to impact confidentiality and integrity. (CVE-2017-10143) - An unspecified flaw exists in the Oracle Diagnostics component that allows an unauthenticated, remote attacker to cause a denial of service condition. (CVE-2017-10144) - An unspecified flaw exists in the Wireless/WAP component that allows an unauthenticated, remote attacker to impact confidentiality and integrity. (CVE-2017-10170) - An unspecified flaw exists in the Home Page component that allows an unauthenticated, remote attacker to impact confidentiality and integrity. (CVE-2017-10171) - An unspecified flaw exists in the Service Request component that allows an unauthenticated, remote attacker to impact confidentiality and integrity. (CVE-2017-10174) - An unspecified flaw exists in the Profiles component that allows an authenticated, remote attacker to impact confidentiality and integrity. (CVE-2017-10175) - An unspecified flaw exists in the Flexfields component that allows an authenticated, remote attacker to impact confidentiality and integrity. (CVE-2017-10177) - An unspecified flaw exists in the Monitoring component that allows an unauthenticated, remote attacker to impact confidentiality and integrity. (CVE-2017-10179) - A cross-site scripting (XSS) vulnerability exists in the CMRO component due to improper validation of user-supplied input to multiple parameters before returning it to users. An unauthenticated, remote attacker can exploit this, via a specially crafted request, to execute arbitrary script code in a user's browser session. (CVE-2017-10180) - An information disclosure vulnerability exists in the Wireless/WAP component due to improper sanitization of user-supplied input. An unauthenticated, remote attacker can exploit this, via a directory traversal attack, to disclose arbitrary files. (CVE-2017-10184) - A cross-site scripting (XSS) vulnerability exists in the User Management component due to improper validation of user-supplied input. An unauthenticated, remote attacker can exploit this, via a specially crafted request, to execute arbitrary script code in a user's browser session. (CVE-2017-10185) - An information disclosure vulnerability exists in the User and Company Profile component due to improper sanitization of user-supplied input. An unauthenticated, remote attacker can exploit this, via a directory traversal attack, to disclose arbitrary files. (CVE-2017-10186) - A cross-site scripting (XSS) vulnerability exists in the Web Analytics component due to improper validation of user-supplied input. An unauthenticated, remote attacker can exploit this, via a specially crafted request, to execute arbitrary script code in a user's browser session. (CVE-2017-10191) - An information disclosure vulnerability exists in the Shopping Cart component due to improper sanitization of user-supplied input. An unauthenticated, remote attacker can exploit this, via a directory traversal attack, to disclose arbitrary files. (CVE-2017-10192) - An information disclosure vulnerability exists in the Attachments component that allows an unauthenticated, remote attacker to disclose any document stored on the system. (CVE-2017-10244) - An information disclosure vulnerability exists in the Account Hierarchy Manager component that allows an unauthenticated, remote attacker to disclose sensitive information in the DBC configuration file. (CVE-2017-10245) - An unspecified flaw exists in the iHelp component that allows an unauthenticated, remote attacker to impact confidentiality and integrity. (CVE-2017-10246)"); # https://www.oracle.com/technetwork/security-advisory/cpujul2017-3236622.html#AppendixEBS script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?8f6b5a59"); script_set_attribute(attribute:"see_also", value:"https://sweet32.info"); script_set_attribute(attribute:"see_also", value:"https://www.openssl.org/blog/blog/2016/08/24/sweet32/"); script_set_attribute(attribute:"solution", value: "Apply the appropriate patch according to the July 2017 Oracle Critical Patch Update advisory."); script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C"); script_set_cvss_temporal_vector("CVSS2#E:POC/RL:OF/RC:C"); script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H"); script_set_cvss3_temporal_vector("CVSS:3.0/E:P/RL:O/RC:C"); script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available"); script_set_attribute(attribute:"exploit_available", value:"true"); script_set_attribute(attribute:"vuln_publication_date",value:"2016/05/05"); script_set_attribute(attribute:"patch_publication_date",value:"2017/07/18"); script_set_attribute(attribute:"plugin_publication_date", value:"2017/07/20"); script_set_attribute(attribute:"plugin_type",value:"local"); script_set_attribute(attribute:"cpe",value:"cpe:/a:oracle:e-business_suite"); script_set_attribute(attribute:"in_the_news", value:"true"); script_end_attributes(); script_category(ACT_GATHER_INFO); script_family(english:"Misc."); script_copyright(english:"This script is Copyright (C) 2017-2018 Tenable Network Security, Inc."); script_dependencies("oracle_e-business_query_patch_info.nbin"); script_require_keys("Oracle/E-Business/Version", "Oracle/E-Business/patches/installed"); exit(0); } include("audit.inc"); include("global_settings.inc"); include("misc_func.inc"); version = get_kb_item_or_exit("Oracle/E-Business/Version"); patches = get_kb_item_or_exit("Oracle/E-Business/patches/installed"); # Batch checks if (patches) patches = split(patches, sep:',', keep:FALSE); else patches = make_list(); p12_1 = '25982921'; p12_2 = '25982922'; # Check if the installed version is an affected version affected_versions = make_array( '12.1.1', make_list(p12_1), '12.1.2', make_list(p12_1), '12.1.3', make_list(p12_1), '12.2.3', make_list(p12_2), '12.2.4', make_list(p12_2), '12.2.5', make_list(p12_2), '12.2.6', make_list(p12_2) ); patched = FALSE; affectedver = FALSE; if (affected_versions[version]) { affectedver = TRUE; patchids = affected_versions[version]; foreach required_patch (patchids) { foreach applied_patch (patches) { if(required_patch == applied_patch) { patched = applied_patch; break; } } if(patched) break; } if(!patched) patchreport = join(patchids,sep:" or "); } if (!patched && affectedver) { set_kb_item(name:'www/0/XSS', value:TRUE); if(report_verbosity > 0) { report = '\n Installed version : '+version+ '\n Fixed version : '+version+' Patch '+patchreport+ '\n'; security_hole(port:0,extra:report); } else security_hole(0); exit(0); } else if (!affectedver) audit(AUDIT_INST_VER_NOT_VULN, 'Oracle E-Business', version); else exit(0, 'The Oracle E-Business server ' + version + ' is not affected because patch ' + patched + ' has been applied.');
NASL family Misc. NASL id ORACLE_ENTERPRISE_MANAGER_APR_2017_CPU.NASL description The version of Oracle Enterprise Manager Grid Control installed on the remote host is missing a security patch. It is, therefore, affected by multiple vulnerabilities : - Multiple integer overflow conditions exist in the OpenSSL component in s3_srvr.c, ssl_sess.c, and t1_lib.c due to improper use of pointer arithmetic for heap-buffer boundary checks. An unauthenticated, remote attacker can exploit this to cause a denial of service condition. (CVE-2016-2177) - An information disclosure vulnerability exists in the OpenSSL component in dsa_sign_setup() function in dsa_ossl.c due to a failure to properly ensure the use of constant-time operations. An unauthenticated, remote attacker can exploit this, via a timing side-channel attack, to disclose DSA key information. (CVE-2016-2178) - A denial of service vulnerability exists in the OpenSSL component in the DTLS implementation due to a failure to properly restrict the lifetime of queue entries associated with unused out-of-order messages. An unauthenticated, remote attacker can exploit this, by maintaining multiple crafted DTLS sessions simultaneously, to exhaust memory. (CVE-2016-2179) - An out-of-bounds read error exists in the OpenSSL component in the X.509 Public Key Infrastructure Time-Stamp Protocol (TSP) implementation. An unauthenticated, remote attacker can exploit this, via a crafted time-stamp file that is mishandled by the last seen 2020-06-01 modified 2020-06-02 plugin id 99594 published 2017-04-21 reporter This script is Copyright (C) 2017-2019 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/99594 title Oracle Enterprise Manager Grid Control Multiple Vulnerabilities (April 2017 CPU) (SWEET32) NASL family Web Servers NASL id OPENSSL_1_1_0B.NASL description According to its banner, the remote host is running OpenSSL version 1.1.0a. It is, therefore, affected by a remote code execution vulnerability in the read_state_machine() function in statem.c due to improper handling of messages larger than 16k. An unauthenticated, remote attacker can exploit this, via a specially crafted message, to cause a use-after-free error, resulting in a denial of service condition or possibly the execution of arbitrary code. last seen 2020-06-01 modified 2020-06-02 plugin id 93787 published 2016-09-28 reporter This script is Copyright (C) 2016-2019 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/93787 title OpenSSL 1.1.0a read_state_machine() Function Message Handling RCE NASL family Misc. NASL id PVS_5_2_0.NASL description The version of Tenable Passive Vulnerability Scanner (PVS) installed on the remote host is 5.x < 5.2.0. It is, therefore, affected by multiple vulnerabilities : - Multiple denial of service vulnerabilities exist in Expat within file xmlparse.c due to a logical error in hash computations. An unauthenticated, remote attacker can exploit these, via a specially crafted XML file containing many identifiers with the same value, to cause the service to exhaust CPU resources. (CVE-2012-0876, CVE-2016-5300) - A flaw exists in the generate_hash_secret_salt() function in file lib/xmlparse.c within Expat due to the generation of non-random output by the PRNG. An unauthenticated, remote attacker can exploit this to more easily predict the PRNG output. (CVE-2012-6702) - Multiple buffer overflow conditions exist within Expat, specifically in the XML_GetBuffer() function in file lib/xmlparse.c, due to improper validation of user-supplied input when handling compressed XML content. An unauthenticated, remote attacker can exploit these to execute arbitrary code. (CVE-2015-1283, CVE-2016-4472) - Multiple buffer overflow conditions exist within the Expat XML parser when handling malformed input documents due to improper validation of user-supplied input. An unauthenticated, remote attacker can exploit these to cause a denial of service condition or the execution of arbitrary code. (CVE-2016-0718, CVE-2016-0719) - Multiple integer overflow conditions exist in s3_srvr.c, ssl_sess.c, and t1_lib.c due to improper use of pointer arithmetic for heap-buffer boundary checks. An unauthenticated, remote attacker can exploit these to cause a denial of service. (CVE-2016-2177) - An information disclosure vulnerability exists in the dsa_sign_setup() function in dsa_ossl.c due to a failure to properly ensure the use of constant-time operations. An unauthenticated, remote attacker can exploit this, via a timing side-channel attack, to disclose DSA key information. (CVE-2016-2178) - A denial of service vulnerability exists in the DTLS implementation due to a failure to properly restrict the lifetime of queue entries associated with unused out-of-order messages. An unauthenticated, remote attacker can exploit this, by maintaining multiple crafted DTLS sessions simultaneously, to exhaust memory. (CVE-2016-2179) - An out-of-bounds read error exists in the X.509 Public Key Infrastructure Time-Stamp Protocol (TSP) implementation. An unauthenticated, remote attacker can exploit this, via a crafted time-stamp file that is mishandled by the last seen 2020-06-01 modified 2020-06-02 plugin id 96337 published 2017-01-06 reporter This script is Copyright (C) 2017-2019 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/96337 title Tenable Passive Vulnerability Scanner 5.x < 5.2.0 Multiple Vulnerabilities (SWEET32) NASL family FreeBSD Local Security Checks NASL id FREEBSD_PKG_91A337D883ED11E6BF52B499BAEBFEAF.NASL description OpenSSL reports : Critical vulnerability in OpenSSL 1.1.0a Fix Use After Free for large message sizes (CVE-2016-6309) Moderate vulnerability in OpenSSL 1.0.2i Missing CRL sanity check (CVE-2016-7052) last seen 2020-06-01 modified 2020-06-02 plugin id 93730 published 2016-09-27 reporter This script is Copyright (C) 2016-2018 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/93730 title FreeBSD : OpenSSL -- multiple vulnerabilities (91a337d8-83ed-11e6-bf52-b499baebfeaf) NASL family CGI abuses : XSS NASL id NESSUS_TNS_2016_16.NASL description According to its self-reported version number, the Tenable Nessus application running on the remote host is 6.x prior to 6.9. It is, therefore, affected by multiple vulnerabilities : - Multiple integer overflow conditions exist in the OpenSSL component in s3_srvr.c, ssl_sess.c, and t1_lib.c due to improper use of pointer arithmetic for heap-buffer boundary checks. An unauthenticated, remote attacker can exploit this to cause a denial of service. (CVE-2016-2177) - An information disclosure vulnerability exists in the OpenSSL component in the dsa_sign_setup() function in dsa_ossl.c due to a failure to properly ensure the use of constant-time operations. An unauthenticated, remote attacker can exploit this, via a timing side-channel attack, to disclose DSA key information. (CVE-2016-2178) - A denial of service vulnerability exists in the OpenSSL component in the DTLS implementation due to a failure to properly restrict the lifetime of queue entries associated with unused out-of-order messages. An unauthenticated, remote attacker can exploit this, by maintaining multiple crafted DTLS sessions simultaneously, to exhaust memory. (CVE-2016-2179) - An out-of-bounds read error exists in the OpenSSL component in the X.509 Public Key Infrastructure Time-Stamp Protocol (TSP) implementation. An unauthenticated, remote attacker can exploit this, via a crafted time-stamp file that is mishandled by the last seen 2020-06-01 modified 2020-06-02 plugin id 97192 published 2017-02-15 reporter This script is Copyright (C) 2017-2019 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/97192 title Tenable Nessus 6.x < 6.9 Multiple Vulnerabilities (TNS-2016-16) (SWEET32)
References
- https://www.openssl.org/news/secadv/20160926.txt
- http://www.oracle.com/technetwork/security-advisory/cpuoct2016-2881722.html
- http://www.securityfocus.com/bid/93177
- https://bto.bluecoat.com/security-advisory/sa132
- http://kb.juniper.net/InfoCenter/index?page=content&id=JSA10759
- https://www.tenable.com/security/tns-2016-16
- http://www-01.ibm.com/support/docview.wss?uid=swg21995039
- http://www.securitytracker.com/id/1036885
- http://www.oracle.com/technetwork/security-advisory/cpujul2017-3236622.html
- https://www.tenable.com/security/tns-2016-20
- http://www.oracle.com/technetwork/security-advisory/cpujan2018-3236628.html
- http://www.oracle.com/technetwork/security-advisory/cpuapr2018-3678067.html
- https://support.hpe.com/hpsc/doc/public/display?docLocale=en_US&docId=emr_na-hpesbhf03856en_us
- https://git.openssl.org/?p=openssl.git%3Ba=commit%3Bh=acacbfa7565c78d2273c0b2a2e5e803f44afefeb