DCInject: Persistent Backdoor Attacks via Frequency Manipulation in Personal Federated Learning

Nahom Birhan, Daniel Wesego, Dereje Shenkut, Frank Liu, Daniel Takabi
2/11/2026
cs.CRcs.LGeess.SP

Official code: NahomMA/DCINject-PFL (6 stars, last commit 2026-03-01).

Abstract

Personalized federated learning (PFL) creates client-specific models to handle data heterogeneity. Previously, PFL has been shown to be naturally resistant to backdoor attack propagation across clients. In this work, we reveal that PFL remains vulnerable to backdoor attacks through a novel frequency-domain approach. We propose DCInject, an adaptive frequency-domain backdoor attack for PFL, which removes portions of the zero-frequency (DC) component and replaces them with Gaussian-distributed samples in the frequency domain. Our attack achieves superior attack success rates while maintaining clean accuracy across four datasets (CIFAR-10/100, GTSRB, SVHN) compared to existing spatial-domain attacks, evaluated under parameter decoupling based personalization. DCInject achieves superior performance with ASRs of 96.83% (CIFAR-10), 99.38% (SVHN), and 100% (GTSRB) while maintaining clean accuracy. Under I-BAU defense, DCInject demonstrates strong persistence, retaining 90.30% ASR vs BadNet's 58.56% on VGG-16, exposing critical vulnerabilities in PFL security assumptions. Our code is available at https://github.com/NahomMA/DCINject-PFL

View on arXivView PDF

Code Implementations(1)

Official source code for DCINJECT: PERSISTENT BACKDOOR ATTACKS VIA FREQUENCY MANIPULATION IN PERSONAL FEDERATED LEARNING

60Shell, PythonJan 27, 20267 months ago
backdoor-attacksfederated-learningfrequency-domain-attackspersistent-attackspfl+1 more

Similar Papers

Cite this paper

@article{birhan2026dcinject,
  title  = {DCInject: Persistent Backdoor Attacks via Frequency Manipulation in Personal Federated Learning},
  author = {Nahom Birhan and Daniel Wesego and Dereje Shenkut and Frank Liu and Daniel Takabi},
  year   = {2026},
  eprint = {2602.18489},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2602.18489v1}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2602.18489.svg)](https://codeofpaper.com/paper/2602.18489)

Discussion