Step 1Toast the ancho and guajillo chiles in a large, dry skillet until softened and aromatic. Set aside. Heat the olive oil in a skillet over medium heat. Add the garlic, onion, oregano, cumin and about 1 teaspoon salt. Cook, stirring, until soft, about 10 minutes. Crumble the toasted chiles into the pan and saute briefly. Add 2 cups of the stock and simmer until the chiles are soft, about 10 minutes.
Step 2Transfer the mixture to a blender, add the chipotles and puree until smooth. Press through a sieve into a deep, wide saucepan. Add the remaining stock and mix well, then bring to a simmer.
Step 3Rub the ribs on all sides with salt. Lay the ribs, meat side down, into the sauce. (You may need to work in batches.) Cover the pan and cook 15 minutes, then turn the ribs over, cover again and cook 15 minutes longer. Add more stock or water, if necessary. Repeat until the ribs are tender, about 1 hour to 1 hour and 15 minutes. Place the ribs on a platter. Strain the sauce to remove the fat and keep it warm.
Step 4Heat the grill. Lay the ribs on and cook, turning, until crisp and charred, 10 to 15 minutes. Serve with sauce on the side.