Mix together flour and salt. Stir in wet ingredients. Combine ingredients until dough comes together in a slightly sticky ball.
Knead and fold dough on a flat surface until dough becomes less sticky and smooth. Cover in plastic wrap and let rest for 30 minutes. While dough is resting, make the filling.
Brown ground beef on medium-high heat in a large saute pan. Drain any excess fat. Add in onion and cook until translucent. Add beef stock and simmer until liquid has reduced. Season generously with salt and pepper. Allow filling to cool before making pierogi.
Roll out dough to ⅛" thickness and cut out 2" round circles in the dough.
Place 2 tsp of filling in the center of the circle of dough. Fold in half, press out any air and pinch the edges of the pierogi together to form a seal. Form all pierogi before boiling.
Bring a large pot of salted water to a boil. Add in pierogi in batches. Cook until pierogi float to the top, the remove.
Melt butter in a large skillet. Add in boiled pierogi and cook until lightly browned on both sides. Serve with sour cream and enjoy!