Siebenhandl made amends by keeping out Ozil's tamer 16th-minute effort before getting his fingertips to Julian Brandt's dangerous effort four minutes later.
Austria grew into the game, while Germany became more sloppy as the action went on, and although Joachim Low's charges went ahead at the break, they were pegged back on 53 minutes.
Martin Hinteregger, unmarked at the back post, was on hand to connect with David Alaba's cross and ferociously volley the ball first-time from an incredibly narrow angle into the corner of Manuel Neuer's net.
With momentum going Austria's way, the hosts continued to press their opponents, who began making sloppy, panicky mistakes at the back.
Indeed, Franco Foda's charges were able to build on their equaliser to take the lead in the 70th minute, Stefan Lainer cutting the ball back to Alessandro Schopf, who duly drilled into the bottom corner.
Austria held firm at the back as Germany, devoid of ideas, failed to muster an equaliser, giving the hosts their fifth consecutive victory.
AUSTRIA (3-4-2-1): Siebenhandl; Dragovic, Prodl, Hinteregger; Lainer, Grillitsch (Ilsanker 79'), Baumgartlinger, Alaba; Schopf (Bauer 75'), Zulj; Arnautovic (Burgstaller 84')
GERMANY (4-2-3-1): Neuer; Kimmich, Sule, Rudiger, Hector; Khedira (Rudy 46'), Gundogan (Goretzka 55'); Brandt (Werner 67'), Ozil (Draxler 75'), Sane (Reus 67); Petersen (Gomez 75')