Preheat the oven to 350 degrees. Line a muffin tin with cupcake liners.
Combine the flour together with the baking powder and salt; mix well.
Beat the sugar and butter together until creamy. Add the eggs one at a time, beating well after each addition. Beat in the vanilla. Slowly add the flour mixture to the butter mixture alternately with milk, mixing well after each addition.
Pour evenly into the cupcake liners. Place into the oven and bake 17-20 minutes, or until a tester inserted into the center comes out clean. Remove from the oven and let them cool for 5 minutes before placing them on a cooling rack to cool completely.
To prepare the frosting, heat the butter and brown sugar in a large saucepan over medium heat until boiling. Once it's boiling, stir for 1 minute. Remove from heat and let cool for 15 minutes. Add the hot milk then mix until smooth. Add the powdered sugar and mix until well combined with no lumps.
Spoon the frosting into a ziplock bag and cut the corner. Pipe the frosting, starting at the outside of the cupcake until you get to the center. Repeat with the remaining cupcakes. Serve and enjoy.