Australia were cruising at 202 for one and needing 59 more runs with more than 13 overs remaining to overhaul New Zealand's 260 for seven, but once Waugh was dismissed for 104, they lost five wickets for 57 and needed to squeeze home at 263 for seven inside the final over.
Australia, beaten by South Africa in the opening game of the triangular series in Sydney last Thursday, began assertively and enjoyed a 156-run opening partnership between Waugh and Michael DiVenuto (77).
But the New Zealand bowlers dismissed Australian wicketkeeper Adam Gilchrist, Greg Blewett, Ian Harvey, captain Steve Waugh and Shane Warne to leave Andrew Bichel at the crease with three balls remaining to get two winning runs.
With Michael Bevan stranded at the non-striker's end on 25, Bichel kept his nerve, guiding his first delivery to the boundary ropes.
All three teams have now won and lost one game each - the New Zealand win coming against South Africa on Saturday. Their victory by 47 runs was the first on their tour of Australia.
New Zealand defended their 50-over total of 224 for six by bowling out the South Africans for 177. Craig McMillan was the man of the match, top-scoring with 86, supported by Chris Cairns with 55 off 54 balls and Chris Harris with an unbeaten 52.
The South Africans fell behind the required run-rate and were frustrated by the tight bowling of Gavin Larsen (2-31), Cairns (2-29) and Harris (2-31).