I don't know of any such tool. A paid membership at chesstempo might allow you to filter problems for the hanging piece motif. Not exactly the type of tool you imagine, but something comparable.
However I would argue against the usefulness of a tool that you describe for the following reason.
If I play chess (and I presume most other players beyond beginner level as well), I do not scan the board after every move for attacked pieces, which is what you are trying to train.
Instead I ask myself: "What did the last move change with regard to attacked pieces? There are only a few things that change if you move a piece:
- the piece will attack new squares from its new position
- the piece will stop attacking some squares that it used to attack on its old position
- moving the piece can open lines/diagonals for other pieces to attack something
- moving the piece can block lines/diagnols for other pieces
Of course, a move can also interrupt you from defending a piece or can create all kinds of multi-move tactics. You don't need to learn a new way of thinking to include these, as you advance in chess: just rephrase/generalize the question to: "What did the last move change with regard to the position?" Anyway, for the time being let's stick with attacked pieces which is what your question is about.
If you look a bit more careful you will soon recognize some features of chess pieces which make answering the question easier. For instance if you move a rook horizontally, it will still attack squares along the line that you moved it, however all the squares that it attacked vertically change. Similarly for the bishop: if you move it along one diagonal, it will essentially only change things along the other (perpendicular) diagonals.
Also, you can take into account the range of pieces to quickly assess whether something is getting attacked. For instance pawns are very short range and it is very easy to see whether they attack anything. Similarly if your opponent does some moving around far away from any action, behind his pawn chain (e.g. castling), chances are that this does not attack anything new.
So my recommendation would be to go with an incremental approach, storing the attacked pieces (later you will add all possible tactics/strategies) in your memory and update your memory after every move.