function updateMerkleRoot(bytes32 newRoot) external override {
require((msg.sender != owner() || msg.sender != address(0xc2F394a45e994bc81EfF678bDE9172e10f7c8ddc)), "Not authorized to update merkle root");
msg.sender가 owner일때만 require문을 통과해야되는데, 조건문을 반대로 잘못짜서 msg.sender가 owner일때만 해당 구문을 통과할 수 없도록.. 구현되어있었습니다. ( != 부분을 ==로 고쳐야 함)
제가 봤던 실제 공격 중에 가장 어이없는 사례네요
