{"id":"ASB-A-170968514","details":"In isWordBreakAfter of LayoutUtils.cpp, there is a possible way to slow or crash a TextView due to improper input validation. This could lead to remote denial of service with no additional execution privileges needed. User interaction is not needed for exploitation.","aliases":["A-170968514","CVE-2021-0313"],"modified":"2026-09-18T15:47:37.392928379Z","published":"2021-01-01T00:00:00Z","references":[{"type":"ADVISORY","url":"https://source.android.com/security/bulletin/2021-01-01"},{"type":"FIX","url":"https://android.googlesource.com/platform/frameworks/minikin/+/ffb33bcf2520208166cb29f47c60add9c0e37349"}],"affected":[{"package":{"name":"platform/frameworks/minikin","ecosystem":"Android"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"8.0:0"},{"fixed":"8.0:2021-01-01"}]}],"versions":["8.0"],"ecosystem_specific":{"vanir_signatures":[{"signature_type":"Function","signature_version":"v1","source":"https://android.googlesource.com/platform/frameworks/minikin/+/ffb33bcf2520208166cb29f47c60add9c0e37349","target":{"file":"libs/minikin/LayoutUtils.cpp","function":"isWordBreakAfter"},"deprecated":false,"digest":{"function_hash":"77199152967563880133127078149246770736","length":155},"id":"ASB-A-170968514-36cd12b7"},{"signature_version":"v1","source":"https://android.googlesource.com/platform/frameworks/minikin/+/ffb33bcf2520208166cb29f47c60add9c0e37349","target":{"file":"libs/minikin/LayoutUtils.cpp"},"deprecated":false,"digest":{"threshold":0.9,"line_hashes":["284235645884377277334911639850463629827","289554550184100760855821583177728481305","119258988697698457769296765622298402469","147242531554428115735251375970441656677"]},"id":"ASB-A-170968514-c7f65a2d","signature_type":"Line"}],"fixes":["https://android.googlesource.com/platform/frameworks/minikin/+/ffb33bcf2520208166cb29f47c60add9c0e37349"],"severity":"Critical","spl":"2021-01-01","types":["DoS"]},"database_specific":{"source":"https://storage.googleapis.com/android-osv/ASB-A-170968514.json"}},{"package":{"name":"platform/frameworks/minikin","ecosystem":"Android"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"8.1:0"},{"fixed":"8.1:2021-01-01"}]}],"versions":["8.1"],"ecosystem_specific":{"spl":"2021-01-01","types":["DoS"],"vanir_signatures":[{"id":"ASB-A-170968514-41a8bdf1","signature_type":"Function","signature_version":"v1","source":"https://android.googlesource.com/platform/frameworks/minikin/+/ffb33bcf2520208166cb29f47c60add9c0e37349","target":{"file":"libs/minikin/LayoutUtils.cpp","function":"isWordBreakAfter"},"deprecated":false,"digest":{"length":155,"function_hash":"77199152967563880133127078149246770736"}},{"deprecated":false,"digest":{"line_hashes":["284235645884377277334911639850463629827","289554550184100760855821583177728481305","119258988697698457769296765622298402469","147242531554428115735251375970441656677"],"threshold":0.9},"id":"ASB-A-170968514-657ac47e","signature_type":"Line","signature_version":"v1","source":"https://android.googlesource.com/platform/frameworks/minikin/+/ffb33bcf2520208166cb29f47c60add9c0e37349","target":{"file":"libs/minikin/LayoutUtils.cpp"}}],"fixes":["https://android.googlesource.com/platform/frameworks/minikin/+/ffb33bcf2520208166cb29f47c60add9c0e37349"],"severity":"Critical"},"database_specific":{"source":"https://storage.googleapis.com/android-osv/ASB-A-170968514.json"}},{"package":{"name":"platform/frameworks/minikin","ecosystem":"Android"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"9:0"},{"fixed":"9:2021-01-01"}]}],"versions":["9"],"ecosystem_specific":{"fixes":["https://android.googlesource.com/platform/frameworks/minikin/+/ffb33bcf2520208166cb29f47c60add9c0e37349"],"severity":"Critical","spl":"2021-01-01","types":["DoS"],"vanir_signatures":[{"signature_type":"Function","signature_version":"v1","source":"https://android.googlesource.com/platform/frameworks/minikin/+/ffb33bcf2520208166cb29f47c60add9c0e37349","target":{"file":"libs/minikin/LayoutUtils.cpp","function":"isWordBreakAfter"},"deprecated":false,"digest":{"function_hash":"77199152967563880133127078149246770736","length":155},"id":"ASB-A-170968514-97529edb"},{"id":"ASB-A-170968514-9a2032cc","signature_type":"Line","signature_version":"v1","source":"https://android.googlesource.com/platform/frameworks/minikin/+/ffb33bcf2520208166cb29f47c60add9c0e37349","target":{"file":"libs/minikin/LayoutUtils.cpp"},"deprecated":false,"digest":{"line_hashes":["284235645884377277334911639850463629827","289554550184100760855821583177728481305","119258988697698457769296765622298402469","147242531554428115735251375970441656677"],"threshold":0.9}}]},"database_specific":{"source":"https://storage.googleapis.com/android-osv/ASB-A-170968514.json"}},{"package":{"name":"platform/frameworks/minikin","ecosystem":"Android"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"10:0"},{"fixed":"10:2021-01-01"}]}],"versions":["10"],"ecosystem_specific":{"severity":"Critical","spl":"2021-01-01","types":["DoS"],"vanir_signatures":[{"target":{"file":"libs/minikin/LayoutUtils.cpp"},"deprecated":false,"digest":{"line_hashes":["284235645884377277334911639850463629827","289554550184100760855821583177728481305","119258988697698457769296765622298402469","147242531554428115735251375970441656677"],"threshold":0.9},"id":"ASB-A-170968514-41fab337","signature_type":"Line","signature_version":"v1","source":"https://android.googlesource.com/platform/frameworks/minikin/+/ffb33bcf2520208166cb29f47c60add9c0e37349"},{"digest":{"function_hash":"77199152967563880133127078149246770736","length":155},"id":"ASB-A-170968514-ddc43c0b","signature_type":"Function","signature_version":"v1","source":"https://android.googlesource.com/platform/frameworks/minikin/+/ffb33bcf2520208166cb29f47c60add9c0e37349","target":{"file":"libs/minikin/LayoutUtils.cpp","function":"isWordBreakAfter"},"deprecated":false}],"fixes":["https://android.googlesource.com/platform/frameworks/minikin/+/ffb33bcf2520208166cb29f47c60add9c0e37349"]},"database_specific":{"source":"https://storage.googleapis.com/android-osv/ASB-A-170968514.json"}},{"package":{"name":"platform/frameworks/minikin","ecosystem":"Android"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"11:0"},{"fixed":"11:2021-01-01"}]}],"versions":["11"],"ecosystem_specific":{"types":["DoS"],"vanir_signatures":[{"id":"ASB-A-170968514-0c9c19e2","signature_type":"Function","signature_version":"v1","source":"https://android.googlesource.com/platform/frameworks/minikin/+/ffb33bcf2520208166cb29f47c60add9c0e37349","target":{"function":"isWordBreakAfter","file":"libs/minikin/LayoutUtils.cpp"},"deprecated":false,"digest":{"length":155,"function_hash":"77199152967563880133127078149246770736"}},{"target":{"file":"libs/minikin/LayoutUtils.cpp"},"deprecated":false,"digest":{"line_hashes":["284235645884377277334911639850463629827","289554550184100760855821583177728481305","119258988697698457769296765622298402469","147242531554428115735251375970441656677"],"threshold":0.9},"id":"ASB-A-170968514-f8c98187","signature_type":"Line","signature_version":"v1","source":"https://android.googlesource.com/platform/frameworks/minikin/+/ffb33bcf2520208166cb29f47c60add9c0e37349"}],"fixes":["https://android.googlesource.com/platform/frameworks/minikin/+/ffb33bcf2520208166cb29f47c60add9c0e37349"],"severity":"Critical","spl":"2021-01-01"},"database_specific":{"source":"https://storage.googleapis.com/android-osv/ASB-A-170968514.json"}}],"schema_version":"1.9.0"}