Season the beef short ribs with salt and black pepper. In a large skillet, heat olive oil over medium-high heat. Sear the short ribs on all sides until browned, about 3-4 minutes per side. Transfer to the slow cooker.
In the same skillet, add the diced onion and garlic. Sauté for about 2-3 minutes until softened. Pour in the beef broth and red wine, scraping up any browned bits from the bottom of the skillet. Stir in the tomato paste, Worcestershire sauce, thyme, rosemary, and bay leaves.
Pour the mixture over the short ribs in the slow cooker. Cover and cook on low for 8 hours or on high for 4 hours, until the meat is tender and falling off the bone.
If you prefer a thicker gravy, mix cornstarch with water in a small bowl to create a slurry. About 30 minutes before serving, stir the slurry into the slow cooker and let it cook on high for an additional 30 minutes to thicken.
Remove the bay leaves before serving. Serve the short ribs with the rich gravy over mashed potatoes or polenta.