Ollie Watkins had Unai Emery’s men on course for a fifth win in six Premier League matches when he headed home Alex Moreno’s pinpoint cross.
But they were pegged back when Leon Bailey was adjudged to have fouled Lucas Paqueta and Benrahma blasted home the spot-kick.
Benrahma saw several chances to win it go begging while Watkins and substitute Jhon Duran squandered Villa’s best openings.
Duran had the chance to win it for Villa in the final minute but could not make clean contact from close range.
The draw, in truth, was probably a fair result but Emery will still feel this was one which got away as his team found themselves pegged back after going ahead for the first time on the road under his tenure.
Both teams had chances, Benrahma constantly involved for the hosts, who remain deep in relegation danger.
Villa, meanwhile, missed the chance to climb within two points of seventh-placed Brighton and really boost their chances of European qualification.
The big question facing Emery was how to deal with the loss of Boubacar Kamara to injury and the continued absence of Leander Dendoncker? The answer was to move John McGinn to a central position and recall Bailey to replace the Scot on the right of midfield.
Diego Carlos was named in a matchday squad for the first time since rupturing his Achilles in August.
Villa had conceded just four times on their travels under Emery but would have been trailing early had Nayef Aguerd been more alert when Declan Rice’s free-kick found its way to him at the far post. Instead, the Hammers centre-back didn’t anticipate it and the ball bounced off is leg before flying wide.
At least Aguerd could claim he was unsighted. Benrahma had no such excuse when he arrived to meet Jarrod Bowen’s deep cross but sent his volley well off target.
Villa hadn’t been into the Hammers box before taking the lead on 17 minutes. There seemed little danger when Moreno picked up the ball on the left but with one swing of the boot he delivered a cross which dissected the home defence allowing Watkins, stealing in behind Aguerd, directing a header which bounced into the ground and then up into the corner of the net.
The hosts were rattled and for a few minutes it was Villa threatening a second. But momentum then swung with the award of the penalty.
Paqueta had come within a whisker of levelling when Emi Martinez, who claimed to have been illegally impeded, got little purchase on an attempted punch at a corner and the Brazilian saw his effort cleared off the line by Watkins. The clearance went straight to the West Ham man who then tumbled under pressure from Bailey, referee Chris Kavanagh pointing immediately to the spot. Replays confirmed the contact to be minimal but VAR Michael Salisbury did not see enough to overturn the decision, Benrahma blasting the spot-kick high down the middle.
The Hammers were appealing for another penalty soon after when Ings appeared to be pulled back by Buendia. This time there appeared more contact but referee Kavanagh saw no foul. More howls followed when Zouma, from the middle of the box sent his header from a Bowen cross wide.
Villa's attacks were sporadic but always threatening. Two minutes before the break, they conjured their best move of the match and should have retaken the lead but Watkins’ finish, from Jacob Ramsey’s first time cross, was straight at an unsuspecting Areola and the ball stuck in the grateful keeper’s gloves.
Martinez was called into action in the opening 30 seconds of the second half, pushing away Benrahma’s volley from a Paqueta cross as the hosts came close to catching the visitors napping.
Benrahma was a constant menace and after sending a curling effort wide, he saw another tipped over the bar by Martinez after superb control to take down Zouma’s long ball had allowed him to evade Matty Cash and Ezri Konsa. Another penalty appeal from the home side was then waved away when Benrahma’s cross hit Cash’s arm at close range.
Inside the final 20 minutes it was Villa wanting the spot-kick when Buendia went down under Declan Rice’s challenge. Again referee Kavanagh was unmoved, as was VAR Salisbury.
Villa were lacking a final ball and fortunately for them, so were the hosts. Bowen got in behind Lucas Digne but gave Pablo Fornals little chance with a heavy pass, before Benrahma saw an effort brilliantly blocked by another visiting substitute, Ashley Young.
Duran had joined the fray alongside the veteran but could not make clean contact when Konsa’s flick on from a corner found him at the far post.
17 GOAL Ollie Watkins heads Villa in front. Alex Moreno’s excellent cross picks out the striker, who nets for the sixth time in seven matches.
26 GOAL Said Benrahma levels from the spot after Leon Bailey is adjudged to have fouled Lucas Paqueta.
West Ham (4-2-3-1): Areola, Kehrer, Aguerd, Zouma, Emerson, Soucek, Rice, Paqueta (Fornals 77), Bowen, Benrahma, Ings (Cornet 85) Subs not used: Johnson, Cresswell, Scamacca, Lanzini, Downes, Ogbonna, Anang (gk).
Villa (4-4-2): Martinez, Cash (Young 80), Konsa, Mings, Moreno (Digne 64), Bailey (Traore 64), McGinn, Luiz, Ramsey, Buendia (Duran 80), Watkins (Chambers 85) Subs not used: Carlos, Chambers, Sinisalo (gk), Olsen (gk).