Mobile apps bring us many conveniences, such as online shopping and communication, but some use malicious designs called dark patterns to trick users into doing things that are not in their best interest. Many works have been done to summarize the taxonomy of these patterns and some have tried to mitigate the problems through various techniques. However, these techniques are either time-consuming, not generalisable or limited to specific patterns. To address these issues, we propose UIGuard, a knowledge-driven system that utilizes computer vision and natural language pattern matching to automatically detect a wide range of dark patterns in mobile UIs. Our system relieves the need for manually creating rules for each new UI/app and covers more types with superior performance. In detail, we integrated existing taxonomies into a consistent one, conducted a characteristic analysis and distilled knowledge from real-world examples and the taxonomy. Our UIGuard consists of two components, Property Extraction and Knowledge-Driven Dark Pattern Checker. We collected the first dark pattern dataset, which contains 4,999 benign UIs and 1,353 malicious UIs of 1,660 instances spanning 1,023 mobile apps. Our system achieves a superior performance in detecting dark patterns (micro averages: 0.82 in precision, 0.77 in recall, 0.79 in F1 score). A user study involving 58 participants further shows that \tool{} significantly increases users' knowledge of dark patterns.
翻译:移动应用为我们带来了诸多便利,如在线购物与通讯,但部分应用利用名为“暗黑模式”的恶意设计,诱导用户做出不符合其最佳利益的行为。已有大量研究归纳了这些模式的分类体系,部分工作尝试通过多种技术缓解该问题。然而,现有技术要么耗时较长、缺乏泛化能力,要么仅局限于特定模式。为解决上述问题,我们提出UIGuard——一种基于知识的系统,通过计算机视觉与自然语言模式匹配,自动检测移动用户界面中的多种暗黑模式。该系统无需为每个新UI/应用手动创建规则,并能以更优性能覆盖更多暗黑模式类型。具体而言,我们整合现有分类体系形成统一框架,开展特征分析,并从真实案例与分类体系中提炼知识。UIGuard包含两大组件:属性提取模块与知识驱动的暗黑模式检测器。我们构建了首个暗黑模式数据集,涵盖1,023个移动应用中1,660个实例的4,999个良性UI与1,353个恶意UI。该系统在暗黑模式检测中展现出卓越性能(微平均指标:精确率0.82,召回率0.77,F1分数0.79)。一项包含58名参与者的用户研究进一步表明,本工具显著提升了用户对暗黑模式的认知。