Cut an "x" in the bottom of each tomato. Fill a large mixing bowl with ice water.
Bring a large pot of water to a boil. Add tomatoes to the boiling water until skins start to curl, about 30 seconds. Remove tomatoes from the boiling water and submerge in the bowl of ice water until cool enough to handle, 1 to 2 minutes.
Remove tomatoes from the ice water; peel off and discard skins. Transfer skinned tomatoes to a blender and blend until liquefied. Pour into a medium saucepan; add onion, garlic, oregano, basil, salt, and pepper. Simmer over medium heat until sauce reduces to desired consistency, 60 to 90 minutes.
Purée sauce with an immersion blender until smooth. Use sauce immediately, or store in the refrigerator overnight to allow flavors to develop.