Preheat the oven to 400ºF.
Cut spaghetti squash in half lengthwise, scoop out the seeds and discard. Season with salt and pepper, place cut side down in a baking dish with about 1 inch of water. Bake until fork tender, about 45 minutes.
In a large deep sauté pan, heat the olive oil. Add the beef and season with salt and pepper. Cook the beef, stirring often and breaking apart as needed, until the beef is lightly browned, 5 minutes.
Add the onions and garlic; season with oregano and basil and cook until the onion is fragrant and beginning to soften, 5 more minutes.
Add crushed tomatoes and tomato paste. Mix to combine, bring to a boil and then simmer for 30 minutes.
When spaghetti squash is cool to the touch, use a fork to shred the inside of the squash, which will come out in strands that look like spaghetti.
To assemble, remove half of the strands from each squash and set aside. Season the squash with salt and pepper, layer some of the lasagna sauce on top of the squash strands. Then add another layer of the strands previously removed, top with more lasagna sauce and finish with shredded mozzarella cheese.
Place the stuffed squash back in the baking dish and broil in the oven until the cheese is melted and bubbly, about 5 minutes.
Serve as is in the squash, garnished with fresh basil.