The silky texture of this pureed sauce belies the kick of its chipotle and cascabel peppers, which are similar in heat to cayenne.
Preheat broiler. Put peppers into the hot water; cover, and let stand until soft, about 15 minutes. Discard stems.
Put tomatoes onto a baking sheet. Broil tomatoes, turning once, until blackened, about 4 minutes per side.
Puree peppers, tomatoes, onion, and cilantro in a food processor until smooth. With machine running, pour in oil in a slow, steady stream. Season with salt. Serve warm or at room temperature.
Salsa can be refrigerated in an airtight container up to 5 days.