Rudy Giuliani was attacked by a worker at a ShopRite on Staten Island on Sunday while campaigning for his son, leaving the 78-year-old former New York City mayor shaken witnesses and law-enforcement sources said. “I was stunned,” eyewitness Rita Rugova-Johnson told The Post after the attack at the supermarket on Veterans Road. “I was shoulder-to-shoulder with Rudy inside ShopRite,” Rugova-Johnson said. “We’re talking, and all of a sudden an employee came out of nowhere and open-handedly slapped him in the back and said, ‘Hey, what’s up scumbag?’ “[The attacker] was on duty at the time,” the witness said. “The cops arrested him.” Sources said police took the assailant into custody at the store, but the suspect’s name and charges were not immediately available.