Remove the membrane: Flip the racks bone-side up. Slide a butter knife under the thin silver skin at a corner and pull it off with a paper towel for grip. This helps the rub penetrate and keeps the ribs tender.
Mix the dry rub: Combine salt, brown sugar, garlic powder, onion powder, black pepper, and smoked paprika.
Season evenly: Pat ribs dry. Sprinkle the rub all over, pressing to adhere.
Wrap tightly: Place each rack on heavy-duty foil. Seal to form a pouch. Add 1 tablespoon water inside each packet for gentle steam.
Bake: Set the oven to 300°F (150°C). Place packets on a rimmed sheet pan and bake 2.5 to 3 hours for baby backs, 3 to 3.5 hours for spare ribs, until the meat feels tender and a skewer slides in with little resistance.
Whisk the sauce: In a saucepan, combine gochujang, ketchup, soy sauce, honey, rice vinegar, sesame oil, garlic, ginger, and gochugaru.
Simmer: Bring to a gentle bubble over medium-low heat for 3–5 minutes, stirring, until glossy. Add water to reach a brushable consistency.
Taste and adjust: Add extra honey for sweet, vinegar for tang, or gochujang for more heat and depth.
Unwrap the ribs: Carefully open the foil (watch the steam). Drain excess liquid.
Brush generously: Coat the ribs with a thick layer of glaze.
Caramelize: Broil on high 3–5 minutes, watching closely, until bubbling and charred in spots. Alternatively, finish on a hot grill over medium-high heat 3–5 minutes per side.
Glaze again: Brush another thin layer for extra shine and flavor.
Rest and slice: Rest 10 minutes. Slice between the bones and sprinkle with sesame seeds and scallions. Serve with lime wedges, rice, and crunchy sides.