An excellent second-half performance earned Elgin their first league win since early November against Division Three's bottom team.
Ross Jack's side opened the scoring after 43 minutes, Stuart Leslie sweeping home Mark Nicolson's assist.
Bradley Coyne soon equalised from the spot after Leslie had handled.
Defender Archibald MacPhee restored Elgin's advantage 17 minutes from time from 30 yards before substitute Jason Crooks converted Craig Gunn's pass.
Elgin: Calder, Niven, Duff, Nicolson, MacPhee, Leslie (Cameron 74), McMullan, Beveridge, Moore (O'Donoghue 85), Gunn, Millar (Crooks 79). Subs Not Used: Black, McLean.
Goals: Leslie 43, MacPhee 73, Crooks 90.
East Stirlingshire: Antell, Jackson, Beveridge (Chisholm 46), Cane, Maxwell, Scott (Hunter 46), Horner, Stirling, Turner (Sheerin 78), Coyne, Lurinsky. Subs Not Used: Hay, Dingwall.
Booked: Beveridge, Horner, Turner, Sheerin.
Goals: Coyne 45 pen.
Referee: David Somers